xml dialogues - ministry of health · web view3.1 sl_queryobject – last support is in release 1.1...
TRANSCRIPT
XML Dialogues
School
Ministry of
Education
"
Event
"
-
student marks
"
Response
"
-
status of data received
;
errors
Sending student marks
XML for The Ministry of Education’s Student Data System
Updated March 2010
Table of Contents
3Revision History
Purpose of this Document7
Student Data System XML Dialogues7
Typical Dialogues7
Saskatchewan Learning K-12 XML Specification9
1.Objects10
1.1SchoolTerm10
1.2SchoolClass10
1.3StudentSchoolEnrollment11
1.4StudentProgramEnrollment11
1.5StudentPersonal12
1.6StudentClassEnrollment12
1.7StudentExamRegistration13
1.8StudentClassMark13
1.9StudentSupplementalMark13
1.10StudentCourseHistory – last support is in Release 1.114
1.11StudentExternalCourse14
1.12StudentEnrollment14
1.13StudentCourseEnrollments16
1.14StudentCompletedCourses18
1.15DeptCourses19
1.16AllStudentClassEnrollments20
1.17StudentsNotReEnrolled………………20
1.18No Longer Used21
1.19StudentPAAModule21
2.Elements22
2.1TermInfo22
2.2ClassIdentification23
2.3ClassInfo23
2.4StudentIdentification24
2.5StudentInfo25
2.6SchoolEnrollmentInfo33
2.7ProgramEnrollmentInfo38
2.8ClassEnrollmentInfo38
2.9ExamRegistrationInfo39
2.10ExamLocation39
2.11SchoolMarkInfo40
2.12StudentCourseInfo – last support is in Release 1.140
2.13StudentExternalCourseInfo41
2.14StudentClass41
2.15StudentDeptExam42
2.16CompletedCourse42
2.17DeptCourse43
3.Queries44
3.1SL_QueryObject – last support is in Release 1.144
3.2GeneralQuery44
3.3QueryByStudent45
3.4QueryBySchool46
4.Message Infrastructure50
4.1SL_Message50
4.2SL_Header51
4.3SL_UserCredentials – removed from specification52
4.4SL_Event52
4.5SL_Request53
4.6SL_Response54
4.7SL_Ping57
Appendix A – Country, Language and Province/State Codes59
Appendix B – Additional Edits78
SchoolId80
SchoolClass80
StudentSchoolEnrollment80
StudentClassEnrollment81
StudentClassMark82
StudentSupplementalMark82
StudentInfo83
SL_Query84
Automatic Setting of End Dates85
Revision History
DateVersionChanges
2003 Sep 30
Pre-release
Object StudentExamRegistration (2.14) added.
Diagrams of objects updated to reflect 2.14.
Note added under StudentSectionEnrollment.
OtherId code for SIN removed (will not be used).
2003 Oct 6
Pre-release
Changed capitalization on the following (for consistency):
ClassID changed to ClassId
LearningIDNumber changed to LearningIdNumber
SL_MsgID changed to SL_MsgId
SL_SourceID changed to SL_SourceId
SL_UserID changed to SL_UserId
Corrected SLSourceID to SL_SourceId in specification (examples already had the underscore).
2003 Oct 7
Pre-release
Changed capitalization on the following (for consistency):
CountryofBirth changed to CountryOfBirth
CountryofCitizenship changed to CountryOfCitizenship
MediumofInstruction changed to MediumOfInstruction
Changed LastName to allow spaces in the name.
Specified that Email has to have exactly one @ character.
Corrected some conditions in section 5 Transactions (objects required for transmitting student marks).
2003 Oct 8
Pre-release
Character restrictions added to FirstName, MiddleName, Suffix and PreferredName.
2003 Oct 9
Pre-release
SL_SourceId clarified to be department assigned number
SchoolYear format changed from YYYY to YYYY-YYYY
2003 Oct 15
Pre-release
Action “Delete” added – allowed only for StudentSchoolEnrollment and StudentSectionEnrollment.
Attribute Reason added to SL_Event to support action of “Delete”.
Additional languages added to language code table, some codes changed.
2003 Oct 23
Pre-release
Moved PreviousProvState and PreviousCountry from StudentPersonal to StudentSchoolEnrollment
Clarified enrollment types and outcomes for out-of-province home-based schooling.
2003 Oct 24
Pre-release
Added StudentExamRegistration to the table indicating minimal XML for each complete transaction (section 5).
2003 Oct 27
Pre-release
Added a separate language code for Michif.
2003 Oct 29
Pre-release
Changed the xmlns string. Added attributes xmlns:xsi and xsi:schemaLocation to SL_Message.
Street element of Address changed from optional to required.
2003 Oct 31
Release 1.0
Released.
2003 Nov 13
Release 1.0
Added program code for Special Education
DateVersionChanges
2003 Nov 24
Release 1.0
Date format changed to YYYY-MM-DD (from YYYYMMDD).
SL_Query changed – SL_QueryObject tag goes around variables now.
2003 Dec 3
Release 1.1
Reorganization of objects so that each object is a complete transaction.
Some elements and attributes renamed.
Some elements reordered.
Some codes changed from numeric to mnemonic.
Edit rules incorporated from previously separate document.
Response status code values added.
Message severity code of “severe error” dropped.
Please contact Saskatchewan Learning if you wish to see a complete list of changes.
2003 Dec 4
Release 1.1
SchoolMarkInfo CorrectionCode made optional (defaults to No).
PhoneNumber Type made optional (defaults to Home).
SL_Header Zone made optional (defaults to Central Standard Time).
Attribute ObjectData within SL_Response/SL_Ack/ SL_Error renamed to ObjectName (for consistency).
2003 Dec 9
Release 1.1
PostalCode made optional for physical addresses.
Default added for ScopeCode if not specified in SL_Query.
Added edits:
· Term end date must be within school year indicated.
· Class end date must not be before start date.
· Receiving new primary e-mail address will automatically end-date previous primary e-mail address.
· Class enrollment exit date (dropped date) cannot be before class start date.
Some other edits clarified (not changed in intent).
2003 Dec 12
Release 1.1
Guidelines for how to create SL_MsgId added.
2004 Jan 5
Release 1.1
Canal Zone (CZ) dropped from list of Canadian provinces and U.S. states – no longer a part of the U.S.
2004 Jan 13
Release 1.1
Added new Language codes.
2004 Jan 14
Release 1.1
Sending student’s program enrollment in school enrollment object allowed (for “add” object only).
Encoding attribute added to SL_Password.
2004 Jan 15
Release 1.1
See changes made in Appendix B (additional edits).
2004 Jan 19
Release 1.1
Object StudentChallengeMark removed. Course challenge marks cannot be submitted via XML according to department policy (they require appropriate paperwork).
2004 Jan 29
Release 1.1
Grade is required for enrollment of a new student.
DateVersionChanges
2004 Feb 5
Release 1.1
SL_UserCredentials removed from the specification – users will have to provide userid and password in order to send the XML.
2004 Feb 19
Release 1.1
SL_EventObject added to SL_ObjectData in SL_Response, to be consistent with SL_ObjectData in SL_Event.
ExitDate dropped from object ProgramEnrollmentInfo.
2004 Feb 25
Release 1.1
ExitType required when ExitDate provided in SchoolEnrollmentInfo.
2004 Feb 26
Release 1.1
New grade code added to distinguish two levels of pre-kindergarten.
Clarification added regarding changing country of citizenship and language(s) used in the home.
New edit and warning messages added (see Appendix B).
2004 Feb 27
Release 1.1
End date of term must fall between Sept 1 and Aug 31 (rather than Aug 1 and July 31).
References to rules for internal use by Saskatchewan Learning added. Vendors can ignore these.
2004 Mar 25
Release 1.1
Restrictions added on what school enrollment data can be changed after initial submission.
Restrictions noted on registering a student for a supplemental or adult challenge dept exam (writing centre has to be approved).
2004 Mar 29
Release 1.1
SL_QueryObject made repeatable and RefId added to it as a mandatory attribute
2004 May 10
Release 1.1
Names of programs updated; 2 French programs added
2004 Jun 21
Release 1.1
Added “Saulteaux” to the list of languages
2004 Nov 17
Release 1.1
Any date within the exam period will be accepted for the ExamPeriodEndDate (does not have to be the last day of the exam period)
2004 Dec 2
Release 1.1
System will automatically register students in dept exams if mark source is “blended” and dept exam registration is not provided.
2005 Feb 23
Release 1.1
Clarified that enrolment start date can be changed to an earlier date (but not later).
Clarified that ClassId must be an unchanging identifier.
2005 May 11
Release 1.1
Clarification of usage of enrollment type codes
2005 Jun 2
Release 2.0
Object StudentExternalCourse added
Element StudentExternalCourseInfo added
2005 Jul 8
Release 2.0
New ExitType added for discontinued with other reason
2005 Aug 29
Release 2.0
Objects StudentEnrollment, StudentCourseEnrollments, StudentCompletedCourses and DeptCourses added
Elements StudentClass, StudentDeptExam, CompletedCourse and DeptCourse added
DateVersionChanges
2005 Aug 29
Release 2.0
Support for objects SL_QueryObject and StudentCourseHistory removed (still supported in Release 1.1)
Support for Element StudentCourseInfo removed (still supported in Release 1.1)
2005 Sep 14
Release 2.0
Object AllStudentSchoolEnrollments added
Event Reason value “ToAllowReplacement” added
2005 Sep 21
Release 2.0
In Object AllStudentSchoolEnrollments, ClassEndAfterDate renamed to ClassEndFromDate, and ClassEndBeforeDate renamed to ClassEndToDate, and meanings changed to include classes ending on these dates.
2007 Sep 6
Release 2.0
Created New Object Name StudentNotReEnrolled
within the QueryBySchool Object.
2007 Sep 13
Release 2.0
Created new Discontinuation Reason Code of Discontinued Schooling, with a reason of monitored.
2008 Feb 4
Release 2.0
Changed Grade from Optional to Required in Object 1.12 StudentEnrollment
2009 Apr 06
Release 2.0
Created new Enrolment Outcome Code of “Completed Functional Integrated Program”.
2009 Apr 06
Release 2.0
Created New Object Name StudentPAAModule.
2009 Apr 06
Release 2.0
Created new Program “Alternative Adult Secondary Program”
2009 Jul 14
Release 2.0
Changed the EducatorCertificateNumber in the ClassInfo Object to be Required and Repeatable rather than Optional and Repeatable.
2009 Aug 31
Release 2.0
Country Codes – Added new ones and changed some old ones. New are in blue font and changes are in red font.
2009 Aug 31
Release 2.0
Language Codes - Added new ones and changed some old ones. New are in blue font and changes are in red font.
2010 Jun 06
Release 2.0
Addition of Homebound Indicator, Immersion Type, and Tuition Status to the SchoolEnrollmentInfo Element.
Addition of Country of Origin and Saskatchewan Resident to the StudentInfo Element.
Addition of Permanent Physical Address Municipality and Land Location details to the StudentInfo Element.
Purpose of this Document
This document presents the format of XML for exchanging Student Data System information between partners. It does not address the technology of transmitting and receiving messages (see the Powerpoint presentation for information on the transport layer).
Student Data System XML Dialogues
An XML dialogue, whether real-time or batch, consists of one or more messages sent from a school to the Ministry of Education, and one or more messages sent from the Ministry of Education back to the school (at minimum, the Ministry of Education returns acknowledgement that it received the original messages).
Note that the dialogues presented below imply nothing about the timing of sending messages – they are the same regardless of whether the school accumulates messages and sends them in a batch or sends them real-time.
Message types include:
· Events (new or changed data)
· Requests for data
· Responses to requests and events
School
Ministry of
Education
"
Event
"
-
new and
/
or changed data
"
Response
"
-
status of data received
;
errors
;
Learning ID Number and birth date for records
without Learning ID Number in the original
"
Event
"
Sending student demographic
,
enrollment and
/
or course registration data
Typical Dialogues
School
Ministry of
Education
"
Request
"
-
course history
"
Response
"
-
course history
Requesting course history for students
(
e
.
g
.
,
at the end of a term
)
School
Ministry of
Education
"
Event
"
-
quick enrollment
"
Response
"
-
status of quick enrollment
;
errors
;
Learning ID Number and birth date
"
Request
"
-
demographic data and
/
or course history
"
Response
"
-
demographic data and
/
or course history
Quick enrollment
School
Ministry of
Education
"
Event
"
-
quick enrollment
"
Response
"
-
status of quick enrollment
;
errors
;
Learning ID Number and birth date
"
Request
"
-
demographic data and
/
or course history
"
Response
"
-
demographic data and
/
or course history
Quick enrollment
Ministry of Education K-12 XML Specification
The Ministry of Education (MOE) K-12 XML specification defines how XML is structured for communication between schools and The Ministry of Education. It was designed using the Schools Interoperability Framework (SIF) Implementation Specification (see www.sifinfo.org) as a starting point, but is not compliant with SIF.
The MOE K-12 XML specification defines the structure of each object. Each object consists of one or more elements, some of which contain additional elements within them. Elements may also contain attributes that define the element. An element that contains elements and/or an attributes is called a complex element. An element that does not is called a simple element.
Elements and attributes are strings unless otherwise indicated. All dates are in the format YYYY-MM-DD. Other restrictions on the format and/or contents of the strings are indicated in the specifications below and in Appendix B. Any element or attribute that is not considered valid will be rejected and could cause the rejection of the entire object it is part of. Syntax for elements and attributes follows standard XML syntax.
Note that each object is assigned a RefId (reference ID), which, for event messages, must be unique within the XML message, so that responses can refer to it. A response, whether it is an error message or data returned (e.g., return of a student’s Learning ID Number), will use the same RefId as the object it is responding to.
Queries are also assigned a RefId, which must be unique within the request XML message. If a query returns many objects (e.g., one query asks for course information on all students enrolled in a term), all the returned objects will include the RefId of the query.
In the MOE K-12 XML specifications:
· For an element A included in a complex element B, “required” means that if element B is included in an object, it must include element A within it. However, if element B is not included in the object, element A is not required.
· For an element A that is included in an object without being part of a complex element, “required” means that element A must be included in the object.
· For an attribute A of an element B, “required” means that if element B is included in an object, attribute A must be included and given a value.
· Elements can have multiple values only if the specification indicates that they are “repeatable”.
Note that references to rules – e.g., (rule DAT-LE-058) or (rule enforced by database constraint) – are for internal use by the Ministry of Education. Vendors can ignore these.
1.Objects
The following objects support transmission of data between schools and The Ministry of Education. Schools send objects to The Ministry of Education with action codes to indicate whether each object is to be created, updated or deleted (with limitations on what can be deleted). See section 4.4 SL_Event for more information on action codes.
Objects are also used to send data from The Ministry of Education to schools, on request.
Each object consists of a RefId plus one or more elements. The RefId is used to refer to the object in any messages returned, and must be unique within an event XML message. (For responses to queries, the RefId is used to identify the query the object is a response to.) Elements without a description in this section are complex elements, which are described in section 2 Elements.
Examples of each object are in the document XML Examples.
1.1SchoolTerm
This object allows the school to set up their terms, including a brief description or name of each term. It is optional – The Ministry of Education will automatically create terms (without descriptions or names) to support classes sent by the school.
Element
Attribute
Status
Description/Notes
SchoolTerm
RefId
Required
The reference ID for returning messages.
SchoolId
Required
The department-assigned number of the school the term is for.
TermInfo
Required
Element 2.1
1.2SchoolClass
This object allows the school to set up classes being offered. A class has to be created before students can be registered in it.
Note: A class is loosely defined as a group of students who meet together to learn the same subject matter from the same educator(s) at the same time. In the elementary and middle levels, a single class might cover several courses (e.g., English Language Arts, Mathematics, Social Studies, Science, etc.) and even multiple grades (split class). For grades 10 to 12, each class can cover only one course.
Element
Attribute
Status
Description/Notes
SchoolClass
RefId
Required
The reference ID for returning messages.
ClassIdentification
Required
Element 2.2
ClassInfo
Required
Element 2.3
1.3StudentSchoolEnrollment
This object allows the school to enroll an existing or new student in their school, or to update enrollment information. This is used for quick (real-time) enrollment as well as regular enrollment.
Element
Attribute
Status
Description/Notes
StudentSchoolEnrollment
RefId
Required
The reference ID for returning messages.
StudentIdentification
Required
Element 2.4
StudentInfo
Optional
Note: Required if DeptAssignedPersonId is not included in StudentIdentification. Element 2.5
SchoolId
Required
The department-assigned number of the school the enrollment is for.
SchoolEnrollmentInfo
Required
Element 2.6
DeptAssignedProgramId
Optional
The department-assigned number of the program the student is enrolling in (see under 1.4 StudentProgramEnrollment). Note: this element is allowed only when adding a StudentSchoolEnrollment. The object StudentProgramEnrollment is used to change a student’s program.
ProgramEnrollmentInfo
Optional
Note: this element is allowed only when adding a StudentSchoolEnrollment. The object StudentProgramEnrollment is used to change a student’s program. Element 2.7
1.4 StudentProgramEnrollment
This object allows the school to indicate or change the program the student is taking. It is only accepted from a school where the student is enrolled or being enrolled (rule SEC-ENROL-001).
Element
Attribute
Status
Description/Notes
StudentProgramEnrollment
RefId
Required
The reference ID for returning messages.
StudentIdentification
Required
Element 2.4
DeptAssignedProgramId
Required
The department-assigned number of the program the student is enrolling in (see below).
ProgramEnrollmentInfo
Required
Element 2.7
Program Numbers
10
Regular Program (English)
11
Fransaskois Program
12
French Immersion/Bilingual Program
05
Alternative Education Program (English)
06
Alternative Education Program (French) - Le Programme d'éducation alternative
07
Functional Integrated Program (English)
17
Functional Integrated Program (French) - Programme intégré fonctionnel
09
Adult Secondary Program (English)
16
Adult Secondary Program (French) - Éducation des adults
18
Alternative Adult Secondary Program (English)
15
Special Education Program (for students up to grade 9)
1.5StudentPersonal
This object allows a school to update demographic information about a student who has already been enrolled (rule SEC-DEMO-002). When sent from a school, the only action that is allowed for this object is “Change”.
This object also allows the Ministry of Education to send information to a school about a student’s demographic information, on request. See section 3 Queries for how to request this information.
Element
Attribute
Status
Description/Notes
StudentPersonal
RefId
Required
The reference ID for returning messages.
StudentIdentification
Required
Element 2.4
StudentInfo
Required
Element 2.5
1.6StudentClassEnrollment
This object allows a school to register a student in a class and the departmental exam for the class (if applicable). Note that the class must already exist. A class enrollment must exist before a mark will be accepted for it.
Element
Attribute
Status
Description/Notes
StudentClassEnrollment
RefId
Required
The reference ID for returning messages.
StudentIdentification
Required
Element 2.4
ClassIdentification
Required
Element 2.2
ClassEnrollmentInfo
Required
Element 2.8
ExamRegistrationInfo
Optional
Note: If not provided and the mark source is “blended”, the system will register the student in the next available dept exam that is in an exam period ending on or after the class end date.
Note: If included or the mark source is “blended”, the writing centre is assumed to be the school where the class is being taken (if the student is writing elsewhere, the writing centre can be updated via the Student Data System web application). Element 2.9
1.7StudentExamRegistration
This object allows a school to register a student in a supplemental or adult challenge departmental exam (i.e., exam registration with no class). This object will be accepted only if the student qualifies to write the indicated type of exam according to department policy (see the policy on the department’s web site) (rule SDS-MARKS-006). The writing centre has to be approved to offer supplemental and adult challenge exams before the student can be registered (rule SDS-MARKS-015).
Element
Attribute
Status
Description/Notes
StudentExamRegistration
RefId
Required
The reference ID for returning messages.
StudentIdentification
Required
Element 2.4
DeptAssignedCourseId
Required
The department-assigned number of the course whose exam the student plans to write.
ExamRegistrationInfo
Required
Element 2.9
ExamLocation
Required
Element 2.10
1.8StudentClassMark
This object allows the school to submit or correct the school mark for a student who took a class. Note that the class enrollment must exist and an educator has to be identified for the class before the mark will be accepted (rule SDS-MARKS-002).
A StudentClassMark will not be accepted prior to the month in which the class ends (to avoid accidental use of mid-term marks) (rule DAT-STUREC-029).
Element
Attribute
Status
Description/Notes
StudentClassMark
RefId
Required
The reference ID for returning messages.
StudentIdentification
Required
Element 2.4
ClassIdentification
Required
Element 2.2
SchoolMarkInfo
Required
Element 2.11
1.9StudentSupplementalMark
This object allows the school to submit or correct the school supplemental (rewrite) mark for a student. No class enrollment object for this mark is required, but the student has to have had a previous class enrollment and mark for the same course (rule SDS-MARKS-003).
Element
Attribute
Status
Description/Notes
StudentSupplementalMark
RefId
Required
The reference ID for returning messages.
StudentIdentification
Required
Element 2.4
SchoolId
Required
The department-assigned number of the school granting the mark.
DeptAssignedCourseId
Required
The department-assigned number of the course for which the student is granted a mark.
EducatorCertificateNumber
Required
The educator certificate number of the educator who evaluated the student.
SchoolMarkInfo
Required
Element 2.11
1.10StudentCourseHistory – last support is in Release 1.1
This object is still supported in release 1.1, but no longer a part of the XML specifications beyond release 1.1.
1.11StudentExternalCourse
This object allows the school to submit or correct a Driver Education course to be included on the student’s transcript.
This object does not support the action “Delete”. (The courses sent by schools include final marks, and only internal users can delete courses with final marks.)
Element
Attribute
Status
Description/Notes
StudentExternalCourse
RefId
Required
The reference ID for returning messages.
StudentIdentification
Required
Element 2.4
StudentExternalCourseInfo
Required and Repeatable
We would encourage only one course per object so that error messages can be tied to a specific course. Element 2.13
1.12 StudentEnrollment
This object allows The Ministry of Education to send information to a school about a student’s current school, program and grade enrolment, on request. If requested for a specific student, previous school enrolment is also included. SchoolName and ProgramName will be included only if requested in the query. See section 3 Queries for how to request this information.
Element
Attribute
Status
Description/Notes
StudentEnrollment
RefId
Required
The object reference ID.
StudentIdentification
Required
Element 2.4
SchoolEnrollment
Required and Repeatable
Information about one school enrollment for the indicated student.
SchoolEnrollment/ SchoolId
Required
The department-assigned number of the school the enrollment is in.
SchoolEnrollment/ SchoolName
Optional
The current name of the school the enrollment is in.
SchoolEnrollment/ SchoolEnrollmentInfo
Required
Information about the enrollment. Note that Grade will not be sent as part of this element (SchoolEnrollmentInfo), since it is a separate element in StudentEnrollment. Element 2.6.
DeptAssignedProgramId
Optional
The department-assigned number of the program the student is currently enrolled in, if applicable (see under 1.4 StudentProgramEnrollment).
ProgramName
Optional
The name of the program the student is currently enrolled in, if applicable.
Grade
Optional
Required for MembershipType of “Base” and Optional for “Other”. The student’s grade in the current school year.
Code
Required
Grade code (see codes under 2.6 SchoolEnrollmentInfo).
ImmersionType
Optional
The type of immersion the student is enrolled in. Default is NA, if not included.
Code
Required
ImmersionType code (see codes under 2.6 SchoolEnrollmentInfo).
Homebound
Optional
Indicates whether a student is Homebound or not. Default is No, if not included.
Code
Required
Yes or No (see codes under 2.6 SchoolEnrollmentInfo).
CumulativeFolder
Optional
Indicates whether the student cumulative folder is located at this school. Default is No, if not included.
Code
Required
Yes or No (see codes under 2.6 SchoolEnrollmentInfo).
TuitionStatus
Optional
Indicates an exception to provincial tuition status. Default is NA, if not included.
Code
Required
TuitionStatus Code (see codes under 2.6 SchoolEnrollmentInfo)
Length
Optional
Length of Exchange – in months (3 digit field) Not required for Tuition Status of Interdivision Tuition.
Collected
Optional
Are tuition fees being collected (see codes under 2.6 SchoolEnrollmentInfo). Default is Yes, if not included.
TuitionStatus/
ExchangeProgram
Optional
Only required for Foreign and Reciprocal Exchange
Code
Required
Programs available (see codes under 2.6 SchoolEnrollmentInfo)
1.13StudentCourseEnrollments
This object allows The Ministry of Education to send information to a school about a student’s class and department exam registrations, on request. Course registrations from all schools that are neither dropped nor completed are included. SchoolName will be included only if requested in the query. See section 3 Queries for how to request this information.
Element
Attribute
Status
Description/Notes
StudentCourseEnrollments
RefId
Required
The object reference ID.
StudentIdentification
Required
Identification of the student. Element 2.4.
StudentSchoolClasses
Optional and Repeatable
Information about classes the student is registered in at one school.
StudentSchoolClasses/ SchoolId
Required
The department-assigned number of the school the registrations are at.
StudentSchoolClasses/ SchoolName
Optional
The current name of the school the registrations are at.
StudentSchoolClasses/ StudentTermClasses
Required and Repeatable
Information about classes the student is registered in during a single term at the school identified by SchoolId.
StudentSchoolClasses/ StudentTermClasses/ TermInfo
Required
Identification of the term the registrations are in. Element 2.1.
StudentSchoolClasses/ StudentTermClasses/ StudentClass
Required and Repeatable
Information about a single class the student is registered in at the school identified by SchoolId, in the term identified by TermInfo. Element 2.14.
StudentDeptExam
Optional and Repeatable
Information about a department exam the student is registered in, where the exam is not tied to a class. Element 2.15.
Example
123456789
1993-10-31
2345678
2010-02-05
2010-06-25
6991-B1
5678901
2009-09-02
2010-01-25
BIO30-1
GER30-1
MATA30-2
2010-01-28
2010-02-05
2010-06-25
MATC30-2
2010-06-28
1.14StudentCompletedCourses
This object allows The Ministry of Education to send information to a school about a student’s completed courses, on request. (A completed course is one with a final mark or standing granted.) SchoolName will be included only if requested in the query. See section 3 Queries for how to request this information.
Element
Attribute
Status
Description/Notes
StudentCompletedCourses
RefId
Required
The object reference ID.
StudentIdentification
Required
Identification of the student. Element 2.4.
CompletedSchoolCourses
Optional and Repeatable
Information about courses the student completed at one school.
CompletedSchoolCourse/ SchoolId
Required
The department-assigned number of the school the courses were taken at.
CompletedSchoolCourse/ SchoolName
Optional
The current name of the school the courses were taken at.
CompletedSchoolCourse/ CompletedCourse
Required and Repeatable
Information about one course completed by the student. Element 2.16.
OtherCompletedCourses
Optional
Information about courses the student completed that are not associated with a Saskatchewan school (e.g., 100% dept exam and credit transfer).
OtherCompletedCourses/ CompletedCourse
Required and Repeatable
Information about one course completed by the student. Element 2.16.
Example
123456789
1993-10-31
2345678
6017
2008-2009
2009-01-28
78
1.0
6702
2008-2009
2009-01-28
73
1.0
5678901
4511
2008-2009
2009-06-28
75
1.0
4511
2008-06-28
80
1.0
1.15DeptCourses
This object allows The Ministry of Education to return a list of all active grade 10-12 department-defined courses to a school, on request. See section 3 Queries for how to request this information.
Element
Attribute
Status
Description/Notes
DeptCourses
RefId
Required
The object reference ID.
DeptCourse
Required and Repeatable
Information about one course. Element 2.17
Example
6211
Biology 20
1
1992-08-16
. . .
1.16AllStudentClassEnrollments
This object allows the school to delete all class registrations for classes at their school whose class end date is on/after a specified date or within a specified date range, so that the school can resubmit class registrations from scratch.
This object supports only the action “Delete”. SL_EventObject Action must be “Delete” and SL_EventObject Reason must be specified (it would normally be “ToAllowReplacement”).
Note: Class registrations are deleted for classes offered by the specified school, whether the student is a base or non-base student at the school, and regardless of whether or not the registration was originally created by XML. Classes taken by the same students at other schools are not touched.
Note: Only registrations for 100% school marks will be deleted, and only if there is no school mark yet. Blended registrations cannot be deleted in this manner.
Element
Attribute
Status
Description/Notes
AllStudentClassEnrollments
RefId
Required
The reference ID for returning messages.
SchoolId
Required
The department-assigned number of the school whose class registrations are to be deleted.
ClassEndFromDate
Required
Class registrations will be deleted only for classes whose end date is on or after this date.
ClassEndToDate
Optional
If this date is specified, class registrations will be deleted only for classes whose end date is on or after ClassEndFromDate and on or before ClassEndToDate.
1234567
2009-10-15<\ClassEndFromDate>
1.17 StudentsNotReEnrolled
This object allows The Ministry of Education to send information to a school about students that are no longer enrolled in the school, but that were enrolled at one time and are less than 16 years of age. See section 3 Queries for how to request this information.
Element
Attribute
Status
Description/Notes
StudentsNotReEnrolled
RefId
Required
The object reference ID.
StudentIdentification
Required
Element 2.4
SchoolId
Required
The department-assigned number of the school
StudentAddress
Optional
The last known address for the student
See StudentInfo for the sub elements of StudentAddress
PhoneNumber
Optional
See StudentInfo for the subelements of PhoneNumber
1.18 TSLStudentDeptMarks – No Longer Used
1.19StudentPAAModule
This object allows the school to submit PAA Module information.
Element
Attribute
Status
Description/Notes
StudentPAAModule
RefID
Required
The reference ID for returning messages.
StudentIdentification
Required
Element 2.4.
PAAModule
Required and repeatable
Information about Modules the student has completed.
ModuleId
Required
Identification of the Module
SchoolId
Required
The Department Assigned Number of the school where the module was completed.
SchoolYear
Required
The school year the module was considered to be part of, expressed as both four-digit calendar years that the school year spans with a hyphen between (e.g. 2009-2010)
Example
1234567
1999-10-20
144
1234567
2009-2010
2.Elements
These elements are used within the objects described in section 1 Objects.
2.1TermInfo
Element
Attribute
Status
Description/Notes
TermInfo
Identifies and describes a term
SchoolYear
Required
The school year of the term, expressed as both four-digit calendar years that the school year spans with a hyphen between (e.g. "2009-2010")
StartDate
Required
Start date of the term
EndDate
Required
End date of the term. Cannot be before StartDate (rule DAT-GEN-002). Must be within the school year indicated (between Aug 1 of the first calendar year and Jul 31 of the second calendar year) (rule DAT-PGM-010).
Description
Optional
Text name or description of the term
Example
2010-02-05
2010-06-28
2009-10 Semester 2
2.2ClassIdentification
Element
Attribute
Status
Description/Notes
ClassIdentification
Identifies a class
SchoolId
Required
The department-assigned number of the school offering the class.
ClassId
Required
Unique identifier (not case sensitive) assigned by the school to distinguish this class from all other classes in the same school for the same dates. Note: This can be formed any way the school finds convenient (e.g., course abbreviation and section letter for grades 9 to 12; homeroom number for other grades), as long as it never changes once the class has been created. The ClassId of an existing class cannot be changed.
StartDate
Required
First day of the term the class is in
EndDate
Required
Last day of the term the class is in. Cannot be before StartDate (rule DAT-GEN-002).
Example
1234567
ELA20A
2010-02-05
2010-06-28
2.3ClassInfo
Element
Attribute
Status
Description/Notes
ClassInfo
Describes a class
DeptAssignedCourseId
Optional and Repeatable
Identification of the course(s) covered by the class, using department-assigned course numbers. Required when creating a class (rule DAT-PGM-016). There can only be one course per class in grades 10 to 12 (rule DAT-PGM-003). All courses must be active as of the StartDate of the class (rule DAT-PGM-013).
EducatorCertificateNumber
Required and Repeatable
The teacher(s) who teach this class, identified by their educator certificate numbers. Must be a valid 7-digit educator certificate number.
ModeOfInstruction
Optional
How students receive instruction for this class (can be overridden for individual students). Defaults to “classroom instruction” if not specified (rule DAT-PGM-015).
Code
Required
Mode of instruction (see below)
Mode of Instruction Values
Class
Classroom instruction (default if not specified)
Distance
Distance learning
Example
6017
1234567
2.4 StudentIdentification
Used to identify a student (in conjunction with information in StudentInfo if the Learning ID Number is not known). If DeptAssignedPersonId (Learning ID Number) is included and BirthDate does not match the student’s birth date in the department’s database, the object containing this element is rejected (rule SDS-DEMO-001).
Element
Attribute
Status
Description/Notes
StudentIdentification
Identifies a student (in conjunction with information in StudentInfo if the Learning ID Number is not included).
DeptAssignedPersonId
Optional
Learning ID Number (assigned by The Ministry of Education). Required in all objects except StudentSchoolEnrollment. Must be a 9-digit number that exists on the department database (rule DAT-LE-058).
BirthDate
Required
The student's date of birth. Used to ensure that the correct record is being referenced. Cannot be used to update the birth date of an existing student.
Example
123456789
1993-10-31
2.5StudentInfo
This element is used to enroll a student (in object StudentSchoolEnrollment) and to update demographic information about a student (in object StudentPersonal).
Note that if the student already exists in the department database, legal name and birth date cannot be changed via XML, nor can gender unless its existing value is U (unknown) (rule SDS-DEMO-001). If the department database has the HSN for an existing student, the HSN cannot be changed via XML (rule SDS-DEMO-011).
Element
Attribute
Status
Description/Notes
StudentInfo
Provides information about a student.
SchoolAssignedPersonId
Optional
Student number assigned by the school
HSN
Optional
Saskatchewan Health Services Number. If known, should be provided when enrolling a student if the DeptAssignedPersonId is not included. Must be 9 digits and pass the check-digit edit (rule DAT-LE-050).
Name
Optional and Repeatable
Student's name(s). Legal name is required (rule DAT-LE-024) (and must contain only valid characters) if DeptAssignedPersonId is missing from StudentIdentification.
Type
Required
Name type (see below)
Name/LastName
Required
Last name. Restricted to uppercase and lowercase alpha characters, hyphens (-), apostrophes ('), periods (.) and spaces (rule DAT-LE-013).
Name/FirstName
Required
First name. Restricted to same characters as LastName (rule DAT-LE-013).
Name/MiddleName
Optional
Middle name or initial. Restricted to same characters as LastName (rule DAT-LE-013).
Name/Suffix
Optional
Name suffix like II, Jr., etc. Restricted to same characters as LastName (rule DAT-LE-013).
Name/PreferredName
Optional
Name the person prefers to be called by (e.g., "Rob"), not including the last name. For students, will be used to create an alias with PreferredName as the first name and LastName as the last name.
The Ministry of Education will not send this. Restricted to same characters as LastName (rule DAT-LE-013).
Optional and Repeatable
Student's email address(es). Must contain exactly one @ character (rule DAT-LE-021).
Type
Required
Email type (see below)
Demographics
Optional
Demographics/Gender
Optional
Code that specifies the student's gender (see below). Required to create a new student (rule SDS-DEMO-002).
Demographics/ CountryOfBirth
Optional
The student's country of birth
Code
Required
Country code (see appendix A)
Demographics/ CountryOfCitizenship
Optional and Repeatable
The student's country(ies) of citizenship
Code
Required
Country code (see appendix A)
Demographics/ CountryOfOrigin
Optional
The student's country of origin. Required for students who have a Tuition Status other than Interdivision Tuition or NA.
Code
Required
Country code (see appendix A)
Demographics/
Language
Optional and Repeatable
Language(s) the student uses in the home
Code
Required
Language code (see appendix A)
Demographics/
Deceased
Optional
Information if the student is deceased
Code
Required
Deceased code (see below).
EffectiveDate
Optional
Death date or date death was known
Demographics/ AboriginalStatus
Optional
The student's aboriginal status, if applicable
Code
Required
Aboriginal status code (see below)
Demographics/ TreatyStatusNumber
Optional
The student's treaty status number, if applicable. Will only be accepted from and sent to band schools (rule SEC-DEMO-001).
Number
Required
Treaty status number
StartDate
Optional
Effective start date of the treaty status number. Defaults to date of XML if not specified.
EndDate
Optional
End date of the treaty status number. Ignored if before StartDate.
Demographics/ BandAffiliation
Optional
The student's band affiliation, if applicable. Will only be accepted from and sent to band schools (rule SEC-DEMO-001).
Code
Required
Affiliated Band code (federally assigned number)
StartDate
Optional
Effective start date of the band affiliation. Defaults to date of XML if not specified.
EndDate
Optional
End date of the band affiliation. Ignored if before StartDate.
Demographics/ ReserveResidency
Optional
The student's reserve residency, if applicable. Will only be accepted from and sent to band schools (rule SEC-DEMO-001).
Code
Required
Reserve residency code (see below)
StartDate
Optional
Effective start date of the reserve residency. Defaults to date of XML if not specified.
EndDate
Optional
End date of the reserve residency. Ignored if before StartDate.
StudentAddress
Optional and Repeatable
The student's address information. Permanent mailing address is required to create a new student (rule SDS-DEMO-002).
StudentAddress/ Address
Required
Detail of the student’s address
Type
Optional
Address type (see below). Defaults to “permanent mailing address” if not specified.
StartDate
Optional
Effective start date of the address. Defaults to date of XML if not specified.
EndDate
Optional
Effective end date of the address. Ignored if before StartDate. Note: If a new address is received, the old address will be automatically end-dated.
StudentAddress/ Address/Street
Optional
Can be expressed as one or more address lines, or as discrete elements (e.g., street number, street name, street type). The Ministry of Education will always send as one or more address lines and will also send as discrete elements if the address was received as discrete elements. Street is required for all address types except PhysicalLand.
StudentAddress/ Address/Street/Line1
Optional
Address line 1. Required if discrete elements not included (rule DAT-LE-009). If StudentAddress/Address Type is Permanent Physical Municipality, Line 1 or discrete elements is required. If StudentAddress/Address Type is Permanent Physical Land, none of the municipal Street elements will be accepted.
StudentAddress/ Address/Street/Line2
Optional
Address line 2.
StudentAddress/ Address/Street/Line3
Optional
Address line 3.
StudentAddress/ Address/Street/ Complex
Optional
Name of the complex
StudentAddress/ Address/Street/ StreetNumber
Optional
The address number assigned to the building
StudentAddress/ Address/Street/ StreetPrefix
Optional
Street prefix (e.g. SW, NE)
StudentAddress/ Address/Street/
StreetName
Optional
The name of the street
StudentAddress/ Address/Street/
StreetType
Optional
The type of the street (e.g. Lane, Blvd., Ave., etc.)
StudentAddress/ Address/Street/ StreetSuffix
Optional
Street suffix (e.g. SE, NW)
StudentAddress/ Address/Street/ AptType
Optional
Type of apartment (e.g. Suite)
StudentAddress/ Address/Street/ AptNumPrefix
Optional
Apartment number prefix
StudentAddress/ Address/Street/ AptNumber
Optional
The number of the apartment
StudentAddress/ Address/Street/ AptNumSuffix
Optional
Apartment number suffix
StudentAddress/
Address/QSec
Optional
Quarter Section. Only accepted for AddressType of Permanent Physical Land. Either Quarter Section or River Lot must be included if AddressType is Permanent Physical Land
StudentAddress/
Address/Sec
Optional
Section is Required if Quarter Section is provided.
StudentAddress/
Address/RL
Optional
River Lot. Only accepted for AddressType of Permanent Physical Land. Either River Lot or Quarter Section must be included if AddressType is Permanent Physical Land
StudentAddress/
Address/Twp
Optional
Township is required if AddressType is Permanent Physical Land
StudentAddress/
Address/Rge
Optional
Range is required if AddressType is Permanent Physical Land
StudentAddress/
Address/Mer
Optional
Meridian is required if AddressType is Permanent Physical Land
StudentAddress/ Address/City
Required
The city part of the address
StudentAddress/ Address/StatePr
Optional
The state or province code part of the address (required for North American addresses).
Code
Required
State or province code (as used by Canada Post).
StudentAddress/ Address/Country
Optional
The country part of the address (assumed to be Canada if not provided).
Code
Required
Country code (see appendix A)
StudentAddress/ Address/PostalCode
Optional
The postal code or ZIP code. Required for mailing addresses but not physical addresses (rule DAT-LE-009).
PhoneNumber
Optional and Repeatable
The student’s phone number. Format is (###) ###-#### for North American phone numbers (rule DAT-LE-022).
Format
Required
Code that specifies the format of the phone number (see below)
Type
Optional
Phone number type (see below). Defaults to “Home” if not specified.
StartDate
Optional
Effective start date of the phone number. Defaults to date of XML if not specified.
EndDate
Optional
Effective end date of the phone number. Ignored if before StartDate.
SaskResident
Optional
The Saskatchewan Residency is defaulted to Yes, if not provided. See below.
Name Type Values
Legal
Current legal name
Alias
Alias – any current or previous name by which the individual is or was known
Email Type Values
Primary
Primary email address
Alternate
Alternate email address
Gender Values
M
Male
F
Female
U
Unknown
Deceased Values
Yes
Deceased
No
Not deceased
Aboriginal Status Values
Treaty
Treaty / Registered (Status) Indian
NS
Non-Status Indian
Metis
Metis
Inuit
Inuit
Reserve Residency Values
On
Living on reserve
Off
Living off reserve
Address Type Values
Mailing
Permanent mailing address (default if not specified)
TempMailing
Temporary mailing address
Physical
Permanent physical address (to be discontinued July, 2011)
PhysicalMun
Permanent physical address - municipality
PhysicalLand
Permanent physical address – land location
Physical Land Location Values
QSec
Quarter Section
NW, NE, SW, SE
Sec
Section
Numbers 1 through 36 and 36A
RL
River Lot
Numbers 1 through 73
Twp
Township
Numbers 1 through 67 and 19A, 27A, 42A, 43A, 45A, 46A, 47A, S, L
Rge
Range
Numbers 1 through 34 and 13A, 21A, 24A, A, L
Mer
Meridian
Numbers 1, 2, and 3 and S
Phone Number Format Values
NA
North American
FF
Free form
Phone Number Type Values
Home
Home telephone number (default if not specified)
Saskatchewan Resident
Yes
Student is a Resident of Saskatchewan
No
Student is not a Resident of Saskatchewan
Note
If the school does not have the student’s Learning ID Number at the time it enrolls the student, it sends the StudentSchoolEnrollment without the DeptAssignedPersonId. The Ministry of Education will return the Learning ID Number to the school in the response (as the DeptAssignedPersonId). If the Learning ID Number cannot be returned immediately (due to a time delay in manually verifying whether the student matches a record already on file), the response will indicate that the Learning ID Number will be sent later. Subsequent XML from the school for the same student must include the Learning ID Number.
If the student has more than one country of citizenship, send all countries each time an update is made to country of citizenship. For example, if the first message indicated Canada and U.S. and this needs to be corrected to Canada and France, send both Canada and France in the same object when making the correction. Similarly for languages used in the home – when changing the student’s languages, send all languages used in the home.
Examples
Sending a new student (Learning ID Number not yet known):
987654321
12345
Smith
Kathleen
Anne
Kathy
Jones
Kathleen
Anne
Kathy
F
1234
Main
St.
AnyTown
S0K 2P0
(306) 123-4567
Note that the above will result in a legal name of
· Kathleen Anne Smith
and three aliases:
· Kathy Smith
· Kathleen Anne Jones
· Kathy Jones
Sending updates to an existing student (update e-mail address and mailing address):
Box 1234
AnyTown
S0K 2P0
Note that the new permanent mailing address is sent with its effective date. This will also be used to end date the previous permanent mailing address for this student.
2.6 SchoolEnrollmentInfo
This element is used to enroll a student in a school or to update school enrollment information. Note that if an enrollment has already been ended (i.e., via a previous XML message or via the web interface), only the ExitType, ImmersionType, Homebound Indicator, and the Tuition Status can be updated (rule SDS-ENROL-004).
Element
Attribute
Status
Description/Notes
SchoolEnrollmentInfo
Information about a student’s enrollment in a school
MembershipType
Optional
Relationship of student to the indicated school (see below). Defaults to “base school” if not specified when enrolling a student.
EntryDate
Optional
The date from when this enrollment is valid. Required when enrolling a student (rule enforced by database constraint). Optional when changing an enrollment, but cannot be used to change the start date of an existing enrollment to a later date (rule SDS-ENROL-004).
EntryType
Optional
Required when enrolling a student (rule enforced by database constraint).
Code
Required
Enrollment type code (see below)
Grade
Optional
Required for MembershipType of “Base” and Optional for “Other”. The student’s grade in the current school year
Code
Required
Grade code (see below)
PreviousProvState
Optional
The province from which the student transferred, if applicable
Code
Required
Canadian province code as used by Canada Post
PreviousCountry
Optional
The country from which the student transferred, if applicable
Code
Required
Country code (see appendix A)
ExitDate
Optional
The ending date of this enrollment
ExitType
Optional
Required when ExitDate is included.
Code
Required
Code indicating enrollment outcome and, if student discontinued, discontinuation reason (see below)
ImmersionType
Optional
The type of immersion the student is enrolled in. Default to NA if not provided.
Code
Required
ImmersionType code (see below).
Homebound
Optional
Indicates whether a student is Homebound or not. Default is No, if not provided.
Code
Required
Yes or No (see below).
CumulativeFolder
Optional
Indicates whether the student cumulative folder is located at this school. Default is No, if not provided.
Code
Required
Yes or No (see below).
TuitionStatus
Optional
Indicates an exception to provincial tuition status. Default is NA, if not provided
Code
Required
TuitionStatus Code (see below)
Length
Optional
Length of Exchange – in months (3 digit field) Not required for Tuition Status of Interdivision Tuition.
Collected
Optional
Are tuition fees being collected (see below). Default is Yes, if not included.
TuitionStatus/
ExchangeProgram
Optional
Only required for Foreign and Reciprocal Exchange
Code
Required
Programs available (see below)
Relationship of Student to School (Membership Type) Values
Base
Base school (default if not specified)
Other
Other school
Enrollment Type Codes (and when to use them)
01
Transfer from another Saskatchewan school
03
Transfer from out-of-province schooling within Canada
10
Transfer from out-of-country schooling
13
Transfer from home-based in Saskatchewan
15
Continuation of enrollment at the same school (this student already has an active enrollment record at this school in The Ministry of Education’s database)
16
Readmission (student has already completed grade 12, or student voluntarily discontinued or was expelled from his/her previous school)
18
New (no previous schooling anywhere)
50
Exchange student
99
Not base school
Grade Codes – a warning message will be included in the XML Response file where the date of birth and the grade are inconsistent
P3
Pre-kindergarten (age group of 2 ½ to 3 ½ year olds)
PK
Pre-kindergarten (age group of 3 ½ to 4 ½ year olds)
0K
Kindergarten (4 – 6 years old)
01
Grade 1 (5 – 8 years old)
02
Grade 2 (6 – 9 years old)
03
Grade 3 (7 – 10 years old)
04
Grade 4 (8 – 11 years old)
05
Grade 5 (9 – 12 years old)
06
Grade 6 (10 – 13 years old)
07
Grade 7 (11 – 14 years old)
08
Grade 8 (12 – 15 years old)
09
Grade 9 (13 – 16 years old)
10
Grade 10 (14 – 17 years old)
11
Grade 11 (15 – 18 years old)
12
Grade 12 (16 + years old)
Enrollment Outcome and Discontinuation Reason Codes
01
Transferred to another Saskatchewan school
03
Transferred to out-of-province schooling within Canada
10
Transferred to out-of-country schooling
12
Completed Functional Integrated Program
13
Transferred to home-based in Saskatchewan
15
Completed schooling
17
Deceased
18
Discontinued schooling, with a reason of “health reasons”
19
Expelled
21
Discontinued schooling, with no reason
24
Discontinued schooling, with a reason of “other education”
50
Discontinued schooling, with a reason of “employment”
52
Discontinued schooling, with a reason of “dissatisfied with school”
53
Discontinued schooling, with a reason of “other reason”
60
Enrollment cancelled/no show
61
Discontinued schooling, with a reason of “monitored”
Immersion Type Values (not the same as Program Enrolment)
CR
Cree Immersion
UK
Ukrainian Immersion
FR
French Immersion
NA
Not Applicable
Homebound Values
Yes
Student is Homebound
No
Student is not Homebound
Cumulative Folder
Yes
School has Cumulative Folder
No
School does not have Cumulative Folder
Tuition Status Values
FE
Foreign Exchange
FT
Foreign Tuition
RE
Reciprocal Exchange
ID
Interdivision Tuition
NA
Not Applicable
Tuition Fees Collected
Yes
The fees will be collected
No
The fees will not be collected
Exchange Program
AS
ASSE
NA
NACEL
CE
CET Canada
OT
Other – Non Profit
CA
Camquest
RE
Rotary Exchange Program
CC
Canadian Cultural Exchange
SE
S.E.E. Canada
EF
EF Foundation
SQ
Saskatchewan-Quebec Exchange
ES
Education Share Foundation
WH
World Heritage
GE
German Exchange Program
FP
For Profit
IC
INTO Canada
GP
Global Partners
IS
International Student Program
Example
2008-09-02
Example
2010-08-25
2.7ProgramEnrollmentInfo Element
Attribute
Status
Description/Notes
ProgramEnrollmentInfo
Information about a student’s enrollment in a program
EntryDate
Required
The effective start date of the program enrollment
Example
2008-09-02
2.8ClassEnrollmentInfo
Element
Attribute
Status
Description/Notes
ClassEnrollmentInfo
Information about a student’s registration in a class
ClassInfoOverride
Optional
Optional overrides for this student
Override
Required
Whether or not class information has been overridden with different values for this student (see below)
ClassInfoOverride/ ModeOfInstruction
Optional
Override indicating how this student receives instruction for this class
Code
Required
Mode of instruction for this student (see below)
MarkSource
Optional
How the final mark is to be derived for this student for this class. Defaults if not provided for a new class enrollment (see Appendix B).
Code
Required
Final mark code (see below)
Dropped
Optional
Whether or not the student has dropped out of the class
Code
Required
Dropped code (see below)
ExitDate
Optional
If the student dropped the class, date on which this occurred, if known. Ignored if before StartDate of the class or on or after EndDate of the class.
Override Values
Yes
An override exists for this student
No
No override exists for this student
Mode of Instruction Values
Class
Classroom instruction
Distance
Distance learning
Final Mark Source Values
Blended
Blended school and departmental marks (60% / 40%)
School
100% school mark
Dropped Values
Yes
The student dropped the class
No
The student did not drop the class
Example
2.9ExamRegistrationInfo
Element
Attribute
Status
Description/Notes
ExamRegistrationInfo
Information about a student’s registration to write a departmental exam
Type
Optional
The type of exam registration (see below). Required in object StudentExamRegistration.
ExamPeriodEndDate
Required
The end date of the exam period in which the student plans to write the exam
Note: Any date within the exam period will be accepted.
Exam Registration Type Values
Class
With class (default and only valid value in object StudentClassEnrollment, not allowed in object StudentExamRegistration)
Supplemental
Supplemental exam
Adult
Adult challenge
Example
2009-01-27
2.10ExamLocation
Element
Attribute
Status
Description/Notes
ExamLocation
Identifies a departmental exam writing centre
SchoolId
Required
The department-assigned school number of the school serving as the writing centre.
Note
If a student plans to write in a writing centre other than an education institution, the registration cannot be done via XML. It can be done using the Student Data System web application instead.
Example
3456789
2.11SchoolMarkInfo
This element provides the student's school mark for a course.
Note that marks can be corrected via XML only for a certain time period after the end of the class or the initial submission of a supplemental mark (rule SDS-MARKS-004). Contact Student Records for the exact time limit.
Element
Attribute
Status
Description/Notes
SchoolMarkInfo
Information about a mark the school has assigned a student
CorrectionCode
Optional
Whether or not this is a correction to a previously reported mark (see below). Defaults to “No” if not specified.
SchoolMark
Required
The mark granted by the school. This has to be a whole number between 1 and 100 inclusive (rule DAT-STUREC-033).
Correction Codes
Yes
This is a correction to a previously reported mark
No
This is not a correction (default if not specified)
Example
75
2.12StudentCourseInfo – last support is in Release 1.1
This object is still supported in release 1.1, but no longer a part of the XML specifications beyond release 1.1.
2.13StudentExternalCourseInfo
This element provides detail about one external course taken by a student. An external course is one taken outside the provincial system, but to be recognized by the provincial system – e.g., a course transferred in from another province or country or a Driver Education course.
Note that the XML is designed to support both courses submitted electronically and the scannable External Course Evaluation Form.
Element
Attribute
Status
Description/Notes
StudentExternalCourseInfo
Information about a course taken by a student outside of the provincial system, which is to be recognized by the provincial system.
DeptAssignedCourseId
Required
The department-assigned number of the course the student took or the closest Saskatchewan equivalent. Note that only certain courses (currently only Driver Education) are accepted in XML sent electronically.
CourseEndDate
Required
The date the course ended. Cannot be used to change the course end date for an existing external course, because it is used as part of the identification of the course (along with DeptAssignedCourseId).
SchoolId
Optional
The department-assigned number of the school sending the information. Required for XML sent electronically (rule SDS-MARKS-050).
ProvinceState
Optional
The Canadian province or territory from which the course is being transferred. For internal use only (for the scannable form). Required if SchoolId is not provided, and not allowed if SchoolId is provided (rule SDS-MARKS-050).
Code
Required
Canadian province code as used by Canada Post
FinalMark
Optional
The final mark the student received (if applicable). Required for XML sent electronically (rule SDS-MARKS-050).
2.14StudentClass
This element provides information about one student class registration and the associated department exam registration (if applicable).
Element
Attribute
Status
Description/Notes
StudentClass
Information about one student class registration and the associated dept exam registration (if applicable).
ClassId
Required
Unique identifier of the class within the school and term.
ModeofInstruction
Required
Code
Required
Mode of instruction for this student (see below)
MarkSource
Required
Code
Required
Final mark code (see below)
ExamPeriodEndDate
Optional
The end date of the exam period in which the student plans to write the exam.
ExamLocation
Optional
Identification of the writing centre for the department exam (if applicable). Note: Included only if the writing centre is different from the school of the class. Element 2.10.
2.15StudentDeptExam
This element provides information about one student registration in a department exam not associated with a class registration (i.e. where the mark is to be 100% department exam).
Element
Attribute
Status
Description/Notes
StudentDeptExam
Information about one student registration in a 100% dept exam.
DeptAssignedCourseId
Required
The department-assigned number of the course whose exam the student plans to write.
ExamRegistrationInfo
Required
The type and exam period end date. Element 2.9.
ExamLocation
Required
Identification of the writing centre. Element 2.10.
2.16CompletedCourse
This element provides information about one course a student has completed (whether passed or failed). CourseTitle will be included only if requested in the query. SchoolYear will be included except for credit transfer courses. FinalMark will be included if the course has one (not standing granted).
Element
Attribute
Status
Description/Notes
CompletedCourse
Information about a course taken by a student or for which a student has received credit (e.g., by writing a challenge exam).
Type
Required
The type of course (see below)
DeptAssignedCourseId
Required
The department-assigned number of the course the student took.
CourseTitle
Optional
The name of the course the student took.
SchoolYear
Optional
The school year the course was considered to be part of, expressed as both four-digit calendar years that the school year spans with a hyphen between (e.g. "2009-2010")
CourseEndDate
Required
The date the course is considered to have ended
FinalMark
Optional
The final mark the student was granted
CreditsEarned
Required
The number of credits this student was granted for this course
Student Course Type Values
Blended
School and departmental exam
School
School only
Dept
Departmental exam only
Transfer
Transfer in credit
Example
8017
2009-2010
2010-01-28
78
1.0
2.17DeptCourse
This element provides information about one department-defined course.
Element
Attribute
Status
Description/Notes
DeptCourse
Information about a department-defined course.
DeptAssignedCourseId
Required
The unique identifying number assigned by the department to the course.
CourseTitle
Required
The name of the course.
Grade
Required
The grade the course is in.
Code
Required
Grade code (see grade codes under element 2.5 SchoolEnrollmentInfo).
CreditValue
Optional
The number of credits the course is worth if a student passes it.
EffectiveDate
Required
The date the course first became available for schools to offer.
Example
6211
Biology 20
1
1992-08-16
3.Queries
Query allows a school to request certain data. There are a limited number of pre-defined queries that are supported.
3.1SL_QueryObject – last support is in Release 1.1
This object is still supported in release 1.1, but no longer a part of the XML specifications beyond release 1.1.
3.2 GeneralQuery
This allows the school to request general information (not specific to either a school or a particular student) such as a list of department courses.
Element
Attribute
Status
Description/Notes
GeneralQuery
A request to return information that is neither specific to a student or a school (e.g., list of department courses).
RefId
Required
The reference ID for returning the response.
ObjectName
Required
The name of the type of object to be returned (see below)
Object Names Supported for GeneralQuery
DeptCourses
Example
Request a current list of dept-defined grade 10-12 courses:
3.3 QueryByStudent
This allows the school to request information about one student.
Element
Attribute
Status
Description/Notes
QueryByStudent
A request to return information for a specific student.
RefId
Required
The reference ID for returning the response.
ObjectName
Required
The name of the type of object to be returned (see below)
IncludeLookupNames
Optional
Code (see below) to indicate whether or not to include SchoolName, ProgramName and CourseTitle in the returned data. Applicable only if querying objects that optionally include SchoolName, ProgramName and/or CourseTitle. Defaults to “No” if not specified.
DeptAssignedPersonId
Optional
The Learning ID Number of the student whose data is to be returned
Name
Optional
Student’s name(s). Either the DeptAssignedPersonId or the Name must be included.
Type
Required
Name type (see StudentInfo element 2.5)
Name/LastName
Required
Last name.
Name/FirstName
Required
First name.
BirthDate
Required
The birth date of the student whose data is to be returned (a double-check that the right student is being queried)
Object Names Supported for QueryByStudent
StudentPersonal
· returns demographic data
· Allowing the Name and BirthDate combination in place of the DeptAssignedPersonId and BirthDate combination will allow schools to retrieve the Learning ID, in support of school enrolment.
StudentEnrollment
· returns all current and previous school enrolments, start and end dates, current program enrolment, current grade enrolment, and cumulative folder indicator. The cumulative folder indicator will only be returned if the SDS has cumulative folder location information for the student. The Department Assigned Number for the school that has the cumulative folder will also be returned.
StudentCourseEnrollments
· returns all non-dropped class and department exam registrations at all schools, for which there is no final mark
StudentCompletedCourses
· returns all courses completed by the student
Include Lookup Names Codes
Yes
Include lookup names such as SchoolName, ProgramName and CourseTitle
No
Do not include lookup names such as SchoolName, ProgramName and CourseTitle
Examples
Request student demographic information for a student:
123456789 DeptAssignedPersonId >
1989-03-15
Request student course history for a student:
< DeptAssignedPersonId >123456789 DeptAssignedPersonId >
1989-03-15
3.4 QueryBySchool
This allows the school to request information about all students enrolled in a school.
Element
Attribute
Status
Description/Notes
QueryBySchool
A request to return information for students enrolled in a specific school.
RefId
Required
The reference ID for returning the response.
ObjectName
Required
The name of the type of object to be returned (see below)
ScopeCode
Optional
Data scope code (see below). Applicable only if querying StudentCourseEnrollments or StudentCompletedCourses. Defaults to “All” if not specified.
IncludeLookupNames
Optional
Code (see below) to indicate whether or not to include SchoolName, ProgramName and CourseTitle in the returned data. Applicable only if querying objects that optionally include SchoolName, ProgramName and/or CourseTitle. Defaults to “No” if not specified.
SchoolId
Required
The department-assigned number of the school whose data is to be returned
FromDate
Required
The first date of the date range for which data is to be returned (see notes below)
ToDate
Required
The last date of the date range for which data is to be returned (see notes below)
FromGrade
Optional
The first grade of the grade range for which data is to be returned (see notes below)
Code
Required
Grade code (same as used in element 2.6 SchoolEnrollmentInfo).
ToGrade
Optional
The last grade of the grade range for which data is to be returned (see notes below)
Code
Required
Grade code (same as used in element 2.6 SchoolEnrollmentInfo).
Object Names Supported for Query
StudentPersonal
· returns demographic data
StudentSchoolEnrollment
· returns current enrolment in the requesting school only
StudentCourseEnrollments
· returns non-dropped class and department exam registrations at all schools, for which there is no final mark, according to the data scope described below
StudentCompletedCourses
· returns courses completed by the student, according to the data scope described below
StudentNotReEnrolled
· returns the students that have been enrolled in the school, but are not now enrolled in any school and are less than 16 years of age
Data Scope Codes
For StudentCourseEnrollments, these codes define which registrations to return for the students who are included in the query criteria.
All
Return all non-dropped courses that are not complete
Current
Return all non-dropped courses that are not completed, whose course end date falls within the date range specified
For StudentCompletedCourses, these codes define which courses to return for the students who are included in the query criteria.
All
Return all completed courses for all years
Current
Return all courses whose final mark (or standing granted) was entered or changed in the Student Data System within the date range specified
Note that the second scope code returns:
· courses completed (final mark posted) within the date range
· final mark corrections made within the date range (for courses completed earlier)
· transfer in credits entered into the system within the date range
Some of the courses returned will already be in the school’s database, while some will not (e.g. courses taken elsewhere and transfer in credits).
Include Lookup Names Codes
Yes
Include lookup names such as SchoolName, ProgramName and CourseTitle
No
Do not include lookup names such as SchoolName, ProgramName and CourseTitle
Notes
If a grade range is not specified, this query returns all students enrolled in the indicated school (as the base school or as a non-base school) any time during the date range indicated.
If a grade range is indicated, it returns all students enrolled in the indicated school (as the base school or as a non-base school) any time during the date range indicated, whose most recent grade enrollment is within the grade range indicated.
There is no explicit query to get the Learning ID Number for a student. Instead, when a school sends a StudentSchoolEnrollment object for a student and the Learning ID Number (DeptAssignedPersonId) is not included, The Ministry of Education processes the data received and also treats it as an implied query for the Learning ID Number. See the note under StudentPersonal for more information.
Examples
Request all student course history for all students enrolled in a school during a particular school year (defined by a date range):
ScopeCode=”All”>
1234567
2009-08-01
2010-07-31
Request student course mark changes entered during the term just ended for all grade 12 students enrolled in a school in that term:
ScopeCode=”Current”>
1234567
2009-02-01
2010-06-28
Request students that are no longer enrolled in the school:
ScopeCode="Current">
1234567
2009-08-01
2010-07-31
4.Message Infrastructure
Information is packaged into messages, such that one message contains one or more objects, queries or responses.
Each message is “wrapped” in tags that define the message. The outermost tag of all messages is SL_Message. Within this tag is another tag identifying the type of message:
SL_Event
SL_Request
SL_Response
SL_Ping
4.1SL_Message
The outermost tag on all messages.
Element
Attribute
Status
Description/Notes
SL_Message
xmlns
Required
The XML namespace that defines the specifications for this major release (see below)
xmlns:xsi
Required
The XML schema instance (see below)
xsi:schemaLocation
Required
The physical location of the XML schema (see below)
Version
Optional
The version number of the XML specifications (currently 2.0). Defaults to 2.0 if not specified.
XML Namespace and Related Values
For this release of the The Ministry of Education K-12 XML specifications, use:
xmlns=”http://www.sasked.gov.sk.ca/xsd/sl/2.x/SLMessage.xsd”
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.sasked.gov.sk.ca/xsd/sl/2.x/SLMessage.xsd http://www.sasked.gov.sk.ca/xsd/sl/2.x/SLMessage.xsd"
Example
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.sasked.gov.sk.ca/xsd/sl/2.x/SLMessage.xsd http://www.sasked.gov.sk.ca/xsd/sl/2.x/SLMessage.xsd">
Message content goes here
4.2 SL_Header
Within each type of message is SL_Header, which identifies the message and when it was sent.
Element
Attribute
Status
Description/Notes
SL_Header
SL_MsgId
Required
A unique identifier of the message (see note below)
SL_Date
Required
The date the message was sent
SL_Time
Required
The time at which the message was sent, in format HH:MM:SS, using a 24-hour clock
Zone
Optional
The time zone, expressed as an offset from the zero meridian (e.g., UTC-06:00 for Central Standard Time). Defaults to “UTC-06:00” if not specified.
SL_SourceId
Required
The unique ID of the originator of the message. This is the department-assigned number of the organization.
Note
SL_MsgId has to be unique on every message sent between schools and The Ministry of Education. The Ministry of Education cannot accept two XML messages with the same SL_MsgId, even if they come from different schools. SL_MsgId can be any length, as long as it is unique.
Two techniques to ensure uniqueness are recommended. Schools can pick from either of these techniques:
· Concatenate department-assigned school number, date/time, message sequence number and user id to create a unique SL_MsgId, where message sequence number is used to distinguish two or more messages created by the same user in the same second. Separate the parts of the message id by periods.
· Format: {School Number}.{Date}.{Time}.{Message Sequence #}.{UserId}
· Example: 1234567.20040115.200856.0001.doej
· Use a Global Unique Identifier (GUID), also known as a Universal Unique Identifier (UUID). This is a system-generated string of characters that is guaranteed to be universally unique. Most platforms have a function that will generate GUIDs, which can be accessed from development languages available on the platform. Check your platform / development language documentation for how to access this function.
· Example: In Oracle, a GUID can be generated as follows:
select sys_guid() from dual
Note: If a transmission problem prevented The Ministry of Education from receiving an entire batch XML message and the message is being sent again, the SL_MsgId can be kept the same. Otherwise, (e.g., if there is a problem with the XML that needs to be corrected, such as a missing tag), a new SL_MsgId should be used for the corrected message.
Example
12345678901234567890123456789012
2009-09-23
20:23:54
8888888
4.3 SL_UserCredentials – removed from specification
This element is no longer part of the XML specifications.
4.4SL_Event
An event message indicates that data is to be added or changed.
Element
Attribute
Status
Description/Notes
SL_Event
SL_Header
Required
See SL_Header above
SL_ObjectData
Required
Wrapper for the data being sent
SL_ObjectData/ SL_EventObject
Required and Repeatable
Identifies the type of object being sent and wraps the data
ObjectName
Required
The name of the object being sent
Action
Required
The action this event conveys (see below)
Reason
Optional
The reason that indicates why this data is being sent, if non-routine (see below)
SL_ObjectData/ SL_EventObject/ objectname
Required and Repeatable
The actual data being sent (see object specifications above)
Event Action Values
Add
Change
Delete
Delete this information because it was previously sent in error and is incorrect, or so that it can be replaced from scratch. Must be accompanied by a Reason of “ClericalError” or “ToAllowReplacement”. Valid only for objects StudentSchoolEnrollment, StudentClassEnrollment and AllStudentClassEnrollments.
Event Reason Values
ClericalError
Valid only for an Action of “Delete” – indicates that the information originally sent was incorrect and should be deleted.
ToAllowReplacement
Valid only for an Action of “Delete” – indicates that the information is to be deleted so that it can be replaced from scratch. For use with object AllStudentClassEnrollments.
Examples
Change a student’s phone number
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schem