XML Dialogues - Ministry of Health



Table of Contents

Revision History 3

Purpose of this Document 7

Student Data System XML Dialogues 7

Typical Dialogues 7

Saskatchewan Learning K-12 XML Specification 9

1. Objects 10

1.1 SchoolTerm 10

1.2 SchoolClass 10

1.3 StudentSchoolEnrollment 11

1.4 StudentProgramEnrollment 11

1.5 StudentPersonal 12

1.6 StudentClassEnrollment 12

1.7 StudentExamRegistration 13

1.8 StudentClassMark 13

1.9 StudentSupplementalMark 13

1.10 StudentCourseHistory – last support is in Release 1.1 14

1.11 StudentExternalCourse 14

1.12 StudentEnrollment 14

1.13 StudentCourseEnrollments 16

1.14 StudentCompletedCourses 18

1.15 DeptCourses 19

1.16 AllStudentClassEnrollments 20

1.17 StudentsNotReEnrolled……………… 20

1.18 No Longer Used 21

1.19 StudentPAAModule 21

2. Elements 22

2.1 TermInfo 22

2.2 ClassIdentification 23

2.3 ClassInfo 23

2.4 StudentIdentification 24

2.5 StudentInfo 25

2.6 SchoolEnrollmentInfo 33

2.7 ProgramEnrollmentInfo 38

2.8 ClassEnrollmentInfo 38

2.9 ExamRegistrationInfo 39

2.10 ExamLocation 39

2.11 SchoolMarkInfo 40

2.12 StudentCourseInfo – last support is in Release 1.1 40

2.13 StudentExternalCourseInfo 41

2.14 StudentClass 41

2.15 StudentDeptExam 42

2.16 CompletedCourse 42

2.17 DeptCourse 43

3. Queries 44

3.1 SL_QueryObject – last support is in Release 1.1 44

3.2 GeneralQuery 44

3.3 QueryByStudent 45

3.4 QueryBySchool 46

4. Message Infrastructure 50

4.1 SL_Message 50

4.2 SL_Header 51

4.3 SL_UserCredentials – removed from specification 52

4.4 SL_Event 52

4.5 SL_Request 53

4.6 SL_Response 54

4.7 SL_Ping 57

Appendix A – Country, Language and Province/State Codes 59

Appendix B – Additional Edits 78

SchoolId 80

SchoolClass 80

StudentSchoolEnrollment 80

StudentClassEnrollment 81

StudentClassMark 82

StudentSupplementalMark 82

StudentInfo 83

SL_Query 84

Automatic Setting of End Dates 85

Revision History

|Date |Version |Changes |

|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 |

|Date |Version |Changes |

|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. |

|Date |Version |Changes |

|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 |

|Date |Version |Changes |

|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

Typical Dialogues

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 ) 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.1 SchoolTerm

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.2 SchoolClass

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.3 StudentSchoolEnrollment

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 |

5 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.5 StudentPersonal

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.6 StudentClassEnrollment

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.7 StudentExamRegistration

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.8 StudentClassMark

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.9 StudentSupplementalMark

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.10 StudentCourseHistory – 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.11 StudentExternalCourse

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 |We would encourage only one course per object so that error|

| | |Repeatable |messages can be tied to a specific course. Element 2.13 |

13 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 |Information about one school enrollment for the indicated |

| | |Repeatable |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/ | |Optional |Only required for Foreign and Reciprocal Exchange |

|ExchangeProgram | | | |

| |Code |Required |Programs available (see codes under 2.6 |

| | | |SchoolEnrollmentInfo) |

1.13 StudentCourseEnrollments

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 |Information about classes the student is registered in at |

| | |Repeatable |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 |Information about classes the student is registered in |

| | |Repeatable |during a single term at the school identified by SchoolId.|

|StudentSchoolClasses/ | |Required |Identification of the term the registrations are in. |

|StudentTermClasses/ TermInfo | | |Element 2.1. |

|StudentSchoolClasses/ | |Required and |Information about a single class the student is registered|

|StudentTermClasses/ StudentClass | |Repeatable |in at the school identified by SchoolId, in the term |

| | | |identified by TermInfo. Element 2.14. |

|StudentDeptExam | |Optional and |Information about a department exam the student is |

| | |Repeatable |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.14 StudentCompletedCourses

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 |Information about courses the student completed at one |

| | |Repeatable |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 |Information about one course completed by the student. |

| | |Repeatable |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 |Information about one course completed by the student. |

| | |Repeatable |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.15 DeptCourses

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 |Information about one course. Element 2.17 |

| | |Repeatable | |

Example

6211

Biology 20

1

1992-08-16

. . .

1.16 AllStudentClassEnrollments

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

18 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 |

| | | | |

19 TSLStudentDeptMarks – No Longer Used

1.19 StudentPAAModule

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 |Information about Modules the student has completed. |

| | |repeatable | |

|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.1 TermInfo

|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.2 ClassIdentification

|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.3 ClassInfo

|Element |Attribute |Status |Description/Notes |

|ClassInfo | | |Describes a class |

|DeptAssignedCourseId | |Optional and |Identification of the course(s) covered by the class, using|

| | |Repeatable |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 |The teacher(s) who teach this class, identified by their |

| | |Repeatable |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

24 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.5 StudentInfo

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 |Student's name(s). Legal name is required (rule |

| | |Repeatable |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). |

|Email | |Optional and |Student's email address(es). Must contain exactly one |

| | |Repeatable |@ 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 |The student's country(ies) of citizenship |

| | |Repeatable | |

| |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/ | |Optional and |Language(s) the student uses in the home |

|Language | |Repeatable | |

| |Code |Required |Language code (see appendix A) |

|Demographics/ | |Optional |Information if the student is deceased |

|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 |The student's address information. Permanent mailing |

| | |Repeatable |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/ | |Optional |Name of the complex |

|Complex | | | |

|StudentAddress/ Address/Street/ | |Optional |The address number assigned to the building |

|StreetNumber | | | |

|StudentAddress/ Address/Street/ | |Optional |Street prefix (e.g. SW, NE) |

|StreetPrefix | | | |

|StudentAddress/ Address/Street/ | |Optional |The name of the street |

|StreetName | | | |

|StudentAddress/ Address/Street/ | |Optional |The type of the street (e.g. Lane, Blvd., Ave., etc.) |

|StreetType | | | |

|StudentAddress/ Address/Street/ | |Optional |Street suffix (e.g. SE, NW) |

|StreetSuffix | | | |

|StudentAddress/ Address/Street/ | |Optional |Type of apartment (e.g. Suite) |

|AptType | | | |

|StudentAddress/ Address/Street/ | |Optional |Apartment number prefix |

|AptNumPrefix | | | |

|StudentAddress/ Address/Street/ | |Optional |The number of the apartment |

|AptNumber | | | |

|StudentAddress/ Address/Street/ | |Optional |Apartment number suffix |

|AptNumSuffix | | | |

| StudentAddress/ | |Optional |Quarter Section. Only accepted for AddressType of |

|Address/QSec | | |Permanent Physical Land. Either Quarter Section or |

| | | |River Lot must be included if AddressType is Permanent|

| | | |Physical Land |

| StudentAddress/ | |Optional |Section is Required if Quarter Section is provided. |

|Address/Sec | | | |

| StudentAddress/ | |Optional |River Lot. Only accepted for AddressType of Permanent|

|Address/RL | | |Physical Land. Either River Lot or Quarter Section |

| | | |must be included if AddressType is Permanent Physical |

| | | |Land |

| StudentAddress/ | |Optional |Township is required if AddressType is Permanent |

|Address/Twp | | |Physical Land |

| StudentAddress/ | |Optional |Range is required if AddressType is Permanent Physical|

|Address/Rge | | |Land |

| StudentAddress/ | |Optional |Meridian is required if AddressType is Permanent |

|Address/Mer | | |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 |The student’s phone number. Format is (###) ###-#### |

| | |Repeatable |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

kathy.smith@accesscomm.ca

kathysmith23@

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):

kathy.simpson@accesscomm.ca

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.

26 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/ | |Optional |Only required for Foreign and Reciprocal Exchange |

|ExchangeProgram | | | |

| |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.7 ProgramEnrollmentInfo

|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.8 ClassEnrollmentInfo

|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/ | |Optional |Override indicating how this student receives instruction for this |

|ModeOfInstruction | | |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.9 ExamRegistrationInfo

|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.10 ExamLocation

|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.11 SchoolMarkInfo

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.12 StudentCourseInfo – 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.13 StudentExternalCourseInfo

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.14 StudentClass

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.15 StudentDeptExam

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.16 CompletedCourse

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.17 DeptCourse

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.1 SL_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.

40 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:

41 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

1989-03-15

Request student course history for a student:

< DeptAssignedPersonId >123456789

1989-03-15

42 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):

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:

1234567

2009-02-01

2010-06-28

Request students that are no longer enrolled in the school:

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.1 SL_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=””

xmlns:xsi=""

xsi:schemaLocation=" "

Example

Message content goes here

45 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

46 SL_UserCredentials – removed from specification

This element is no longer part of the XML specifications.

4.4 SL_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 |Identifies the type of object being sent and wraps the |

| | |Repeatable |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/| |Required and |The actual data being sent (see object specifications |

|objectname | |Repeatable |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

12345678901234567890123456789012

2009-09-23

20:23:54

1234567

123456789

1993-10-31

(306) 123-4567

4.5 SL_Request

A request message asks for data to be returned.

|Element |Attribute |Status |Description/Notes |

|SL_Request | | | |

|SL_Header | |Required |See SL_Header above |

|SL_Query | |Required |The query for data. See SL_Query under Queries. |

|SL_Query/ objectname | |Required and |The actual queries, which can be any query in section 3. |

| | |Repeatable | |

Example

12345678901234567890123456789012

2009-09-23

20:23:54

1234567

4.6 SL_Response

A response message acknowledges an event or request, indicates whether or not it could be successfully processed and sends data back if applicable.

|Element |Attribute |Status |Description/Notes |

|SL_Response | | | |

|SL_Header | |Required |See SL_Header above |

|SL_Ack | |Required |Acknowledgement of the message that elicited this response|

|SL_Ack/ SL_OriginalMsgId | |Required |The message ID of the message that elicited this response |

|SL_Ack/ SL_OriginalSource Id | |Required |The unique ID of the originator of the message that |

| | | |elicited this response |

|SL_Ack/SL_Status | |Required |Whether or not the original message was successfully |

| | | |processed |

|SL_Ack/SL_Status/ SL_StatusCode | |Required |Status code (see below) |

|SL_Ack/SL_Status/ SL_StatusMsg | |Optional |Message if required to clarify the status |

|SL_Ack/SL_Error | |Optional and |Exception message |

| | |Repeatable | |

| |ObjectName |Optional |The name of the object that the error relates to, if |

| | | |applicable |

| |RefId |Optional |The reference ID of the object that the error relates to, |

| | | |if applicable |

|SL_Ack/SL_Error/ SL_ErrorSeverity | |Required |Message severity (see below) |

|SL_Ack/SL_Error/ SL_ErrorCode | |Required |Error code (values published separately) |

|SL_Ack/SL_Error/ SL_ErrorMsg | |Optional |Message describing the error |

|SL_ObjectData | |Optional |Wrapper for any data being returned |

|SL_ObjectData/ SL_EventObject | |Required and |Identifies the type of object being returned and wraps the|

| | |Repeatable |data |

| |ObjectName |Required |The name of the object being returned |

| |Action |Required |Will be set to “None” |

| |Reason |Optional |Not applicable |

|SL_ObjectData/ SL_EventObject/ | |Required and |The actual data being returned (see object specifications |

|objectname | |Repeatable |above) |

Status Code Values

|Successful |Processed successfully, no messages or only informational messages |

|Warnings |Processed successfully with warning messages |

|Errors |Processed with error messages |

|Invalid |Invalid XML |

Message Severity Values

|Informational |

|Warning |

|Error |

Examples

Response to an event updating a student’s address

12345678901234567890123456789012

2009-09-23

20:23:54

8888888

98765432109876543210987654321098

1234567

01

Successful

Informational

05

Address start date defaulted to 2009-09-23

Response to a request for a student’s course history

12345678901234567890123456789012

2009-09-23

10:24:15

8888888

98765432109876543210987654321098

1234567

01

Successful

123456789

1993-10-31

2345678

6017

2008-2009

2009-01-28

78

1.0

6702

2008-2009

2009-01-28

73

1.0

4.7 SL_Ping

The ping message allows an institution to determine whether the system it wants to send messages to is receiving messages.

|Element |Attribute |Status |Description/Notes |

|SL_Ping | |Required |Request to acknowledge the ping |

|SL_Header | |Required |See SL_Header above |

Example

12345678901234567890123456789012

2009-09-23

20:23:54

1234567

Appendix A – Country, Language and Province/State Codes

Country Codes (source: ISO-3166-1)

|AF |Afghanistan |

|AX |Aland Islands |

|AL |Albania |

|DZ |Algeria |

|AS |American Samoa |

|AD |Andorra |

|AO |Angola |

|AI |Anguilla |

|AQ |Antarctica |

|AG |Antigua and Barbuda |

|AR |Argentina |

|AM |Armenia |

|AW |Aruba |

|AU |Australia |

|AT |Austria |

|AZ |Azerbaijan |

|BS |Bahamas |

|BH |Bahrain |

|BD |Bangladesh |

|BB |Barbados |

|BY |Belarus |

|BE |Belgium |

|BZ |Belize |

|BJ |Benin |

|BM |Bermuda |

|BT |Bhutan |

|BO |Bolivia, Plurinational State of |

|BA |Bosnia And Herzegovina |

|BW |Botswana |

|BV |Bouvet Island |

|BR |Brazil |

|IO |British Indian Ocean Territory |

|BN |Brunei Darussalam |

|BG |Bulgaria |

|BF |Burkina Faso |

|BU |Burma (No Longer Exists, see Myanmar) |

|BI |Burundi |

|KH |Cambodia |

|CM |Cameroon |

|CA |Canada |

|CV |Cape Verde |

|KY |Cayman Islands |

|CF |Central African Republic |

|TD |Chad |

|CL |Chile |

|CN |China |

|CX |Christmas Island |

|CC |Cocos (Keeling) Islands |

|CO |Colombia |

|KM |Comoros |

|CG |Congo |

|CD |Congo, The Democratic Republic Of The |

|CK |Cook Islands |

|CR |Costa Rica |

|CI |Côte D’ivoire (Ivory Coast) |

|HR |Croatia |

|CU |Cuba |

|CY |Cyprus |

|CZ |Czech Republic |

|CS |Czechoslovakia (No Longer Exists) |

|YD |Democratic Yemen (No Longer Exists) |

|DK |Denmark |

|DJ |Djibouti |

|DM |Dominica |

|DO |Dominican Republic |

|EC |Ecuador |

|EG |Egypt |

|SV |El Salvador |

|GQ |Equatorial Guinea |

|ER |Eritrea |

|EE |Estonia |

|ET |Ethiopia |

|FK |Falkland Islands (Malvinas) |

|FO |Faroe Islands |

|FJ |Fiji |

|FI |Finland |

|FR |France |

|GF |French Guiana |

|PF |French Polynesia |

|TF |French Southern Territories |

|GA |Gabon |

|GM |Gambia |

|GE |Georgia |

|DD |German Democratic Republic (No Longer Exists) |

|DE |Germany |

|GH |Ghana |

|GI |Gibraltar |

|GR |Greece |

|GL |Greenland |

|GD |Grenada |

|GP |Guadeloupe |

|GU |Guam |

|GT |Guatemala |

|GG |Guernsey |

|GN |Guinea |

|GW |Guinea-Bissau |

|GY |Guyana |

|HT |Haiti |

|HM |Heard Island and McDonald Islands |

|HN |Honduras |

|HK |Hong Kong |

|HU |Hungary |

|IS |Iceland |

|IN |India |

|ID |Indonesia |

|IR |Iran, Islamic Republic of |

|IQ |Iraq |

|IE |Ireland |

|IM |Isle of Man |

|IL |Israel |

|IT |Italy |

|JM |Jamaica |

|JP |Japan |

|JE |Jersey |

|JO |Jordan |

|KZ |Kazakhstan |

|KE |Kenya |

|KI |Kiribati |

|KP |Korea, Democratic People’s Republic Of |

|KR |Korea, Republic Of |

|KW |Kuwait |

|KG |Kyrgyzstan |

|LA |Lao People’s Democratic Republic |

|LV |Latvia |

|LB |Lebanon |

|LS |Lesotho |

|LR |Liberia |

|LY |Libyan Arab Jamahiriya |

|LI |Liechtenstein |

|LT |Lithuania |

|LU |Luxembourg |

|MO |Macao |

|MK |Macedonia, the Former Yugoslav Republic Of |

|MG |Madagascar |

|MW |Malawi |

|MY |Malaysia |

|MV |Maldives |

|ML |Mali |

|MT |Malta |

|MH |Marshall Islands |

|MQ |Martinique |

|MR |Mauritania |

|MU |Mauritius |

|YT |Mayotte |

|MX |Mexico |

|FM |Micronesia, Federated States of |

|MD |Moldova, Republic Of |

|MC |Monaco |

|MN |Mongolia |

|ME |Montenegro |

|MS |Montserrat |

|MA |Morocco |

|MZ |Mozambique |

|MM |Myanmar |

|NA |Namibia |

|NR |Nauru |

|NP |Nepal |

|NL |Netherlands |

|AN |Netherlands Antilles |

|NT |Neutral Zone (No Longer Exists) |

|NC |New Caledonia |

|NZ |New Zealand |

|NI |Nicaragua |

|NE |Niger |

|NG |Nigeria |

|NU |Niue |

|NF |Norfolk Island |

|MP |Northern Mariana Islands |

|NO |Norway |

|OM |Oman |

|PK |Pakistan |

|PW |Palau |

|PS |Palestinian Territory, Occupied |

|PA |Panama |

|PG |Papua New Guinea |

|PY |Paraguay |

|PE |Peru |

|PH |Philippines |

|PN |Pitcairn |

|PL |Poland |

|PT |Portugal |

|PR |Puerto Rico |

|QA |Qatar |

|RE |Réunion |

|RO |Romania |

|RU |Russian Federation |

|RW |Rwanda |

|BL |Saint Barthélemy |

|SH |Saint Helena |

|KN |Saint Kitts and Nevis |

|LC |Saint Lucia |

|MF |Saint Martin |

|PM |Saint Pierre and Miquelon |

|VC |Saint Vincent and the Grenadines |

|WS |Samoa |

|SM |San Marino |

|ST |Sao Tome and Principe |

|SA |Saudi Arabia |

|SN |Senegal |

|RS |Serbia, Republic of |

|SC |Seychelles |

|SL |Sierra Leone |

|SG |Singapore |

|SK |Slovakia |

|SI |Slovenia |

|SB |Solomon Islands |

|SO |Somalia |

|ZA |South Africa |

|GS |South Georgia And The South Sandwich Islands |

|ES |Spain |

|LK |Sri Lanka |

|SD |Sudan |

|SR |Suriname |

|SJ |Svalbard and Jan Mayen Islands |

|SZ |Swaziland |

|SE |Sweden |

|CH |Switzerland |

|SY |Syrian Arab Republic |

|TW |Taiwan, Province Of China |

|TJ |Tajikistan |

|TZ |Tanzania, United Republic Of |

|TH |Thailand |

|TP |Timor-Leste |

|TG |Togo |

|TK |Tokelau |

|TO |Tonga |

|TT |Trinidad and Tobago |

|TN |Tunisia |

|TR |Turkey |

|TM |Turkmenistan |

|TC |Turks and Caicos Islands |

|TV |Tuvalu |

|UG |Uganda |

|UA |Ukraine |

|SU |Union Of Soviet Socialist Republics (No Longer Exists) |

|AE |United Arab Emirates |

|GB |United Kingdom (Great Britain) |

|UM |United States Minor Outlying Islands |

|US |United States Of America |

|ZZ |Unknown Or Unspecified Country |

|UY |Uruguay |

|UZ |Uzbekistan |

|VU |Vanuatu |

|VA |Vatican City State |

|VE |Venezuela, Bolivarian Republic of |

|VN |Viet Nam |

|VG |Virgin Islands, British |

|VI |Virgin Islands, U.S. |

|WF |Wallis and Futuna Islands |

|EH |Western Sahara |

|YE |Yemen Republic |

|YU |Yugoslavia (No Longer Exists) |

|ZM |Zambia |

|ZW |Zimbabwe |

Language Codes (source: NISO-Z39.53, with additions)

The NISO-Z39.53 list (used by SIF) does not have separate codes for all languages within each language group (e.g., Athabascan languages, Aleut languages). The following list has had some specific languages and codes added. It also includes some languages without codes and indicates which associated language to use instead.

|ABK |Abkhazian |

|ACE |Achinese |

|ACH |Acoli |

|ADA |Adangme |

|ADY |Adyghe |

|AAR |Afar |

|AFH |Afrihili (Artificial language) |

|AFR |Afrikaans |

|AFA |Afro-Asiatic (Other) |

|AIN |Ainu |

|AKA |Akan |

|AKK |Akkadian |

|ALB |Albanian |

|ALE |Aleut languages |

|ALG |Algonquian languages |

|AJM |Aljamia |

|TUT |Altaic (Other) |

|AMH |Amharic |

|ANP |Angika |

|APA |Apache languages |

|ARA |Arabic |

|ARG |Aragonese |

|ARC |Aramaic |

|ARP |Arapaho |

|ARW |Arawak |

|ARM |Armenian |

|RUP |Aromanian; Macedo-Romanian |

|ART |Artificial (Other) |

|ASM |Assamese |

|AST |Asturian; Bable |

|ATH |Athabascan languages |

|AUS |Australian languages |

|MAP |Austronesian (Other) |

|AVA |Avaric |

|AVE |Avestan |

|AWA |Awadhi |

|AYM |Aymara |

|AZE |Azerbaijani |

|NAH |Aztec |

|BAN |Balinese |

|BAT |Baltic (Other) |

|BAL |Baluchi |

|BAM |Bambara |

|BAI |Bamileke languages |

|BAD |Banda languages |

|BNT |Bantu languages |

|BAS |Basa |

|BAK |Bashkir |

|BAQ |Basque |

|BTK |Batak languages |

|BEJ |Beja |

|BEL |Belarusian |

|BEM |Bemba |

|BEN |Bengali |

|BER |Berber languages |

|BHO |Bhojpuri |

|BIH |Bihari |

|BIK |Bikol |

|BIN |Bini |

|BIS |Bislama |

|BYN |Blin |

|BOS |Bosnian |

|BRA |Braj |

|BRE |Breton |

|BUG |Buginese |

|BUL |Bulgarian |

|BUA |Buriat |

|BUR |Burmese |

|BEL |Byelorussian |

|CAD |Caddo |

|CAT |Catalan |

|CAU |Caucasian (Other) |

|CEB |Cebuano |

|CEL |Celtic languages |

|CAI |Central American Indian (Other) |

|KHM |Central Khmer |

|CHG |Chagatai |

|CMC |Chamic Languages |

|CHA |Chamorro |

|CHE |Chechen |

|CHR |Cherokee |

|CHY |Cheyenne |

|CHB |Chibcha |

|NYA |Chichewa; Nyanja |

|YUE |Chinese, Cantonese |

|CHI |Chinese, Mandarin |

|CHN |Chinook jargon |

|CHP |Chipewyan |

|CHO |Choctaw |

|CHU |Church Slavic |

|CHK |Chuukese |

|CHV |Chuvash |

|NWC |Classical Newari |

|SYR |Classical Syriac |

|COP |Coptic |

|COR |Cornish |

|COS |Corsican |

|CRE |Cree |

|MUS |Creek |

|CRP |Creoles and Pidgins (Other) |

|CPE |Creoles and Pidgins, English-based (Other) |

|CPF |Creoles and Pidgins, French-based (Other) |

|CPP |Creoles and Pidgins, Portuguese-based (Other) |

|CRH |Crimean Tatar |

|SCR |Croatian |

|CUS |Cushitic (Other) |

|CZE |Czech |

|DAK |Dakota |

|DAN |Danish |

|DAR |Dargwa |

|DEL |Delaware |

|CHP |Dene Suline |

|DIN |Dinka |

|DIV |Divehi; Maldivian |

|DOI |Dogri |

|DGR |Dogrib |

|DRA |Dravidian (Other) |

|DUA |Duala |

|DUT |Dutch |

|DUM |Dutch, Middle (ca. 1050-1350) |

|DYU |Dyula |

|DZO |Dzongkha |

|EFI |Efik |

|EGY |Egyptian |

|EKA |Ekajuk |

|ELX |Elamite |

|ENG |English |

|ENM |English, Middle (1100-1500) |

|ANG |English, Old (ca. 450-1100) |

|MYV |Erzya |

|ESP |Esperanto |

|EST |Estonian |

|ETH |Ethiopic |

|EWE |Ewe |

|EWO |Ewondo |

|FAN |Fang |

|FAT |Fanti |

|FAR |Faroese |

|PER |Farsi |

|FIJ |Fijian |

|FIL |Filipino; Pilipino |

|FIN |Finnish |

|FIU |Finno-Ugrian (Other) |

|VLA |Flemish |

|FON |Fon |

|FRE |French |

|FRM |French, Middle (ca. 1400-1600) |

|FRO |French, Old (ca. 842-1400) |

|FRI |Frisian |

|FRS |Frisian, Eastern |

|FRR |Frisian, Northern |

|FRY |Frisian. Western |

|FUR |Friulian |

|FUL |Fulah |

|GAA |Ga |

|GAE |Gaelic, Scots |

|CAR |Galibi Carib |

|GAG |Galician |

|LUG |Ganda |

|GAY |Gayo |

|GBA |Gbaya |

|GEZ |Geez |

|GEO |Georgian |

|GER |German |

|GMH |German, Middle High (ca. 1050-1500) |

|GOH |German, Old High (ca. 750-1050) |

|GEM |Germanic (Other) |

|GIL |Gilbertese |

|GON |Gondi |

|GOR |Gorontalo |

|GOT |Gothic |

|GRB |Grebo |

|GRC |Greek, Ancient (to 1453) |

|GRE |Greek, Modern (1453- ) |

|GUA |Guarani |

|GUJ |Gujarati |

|GWI |Gwich’in |

|HAI |Haida |

|HAT |Haitian |

|HAU |Hausa |

|HAW |Hawaiian |

|HEB |Hebrew |

|HER |Herero |

|HIL |Hiligaynon |

|HIM |Himachali |

|HIN |Hindi |

|HMO |Hiri Motu |

|HUN |Hungarian |

|HUP |Hupa |

|IBA |Iban |

|ICE |Icelandic |

|IDO |Ido |

|IBO |Igbo |

|IJO |Ijo languages |

|ILO |Iloko |

|INC |Indic (Other) |

|INE |Indo-European (Other) |

|IND |Indonesian |

|INH |Ingush |

|INT |Interlingua (International Auxiliary Language Association) |

|ILE |Interlingue |

|INU |Inuit languages |

|IKU |Inuktitut;Inuktut |

|IPK |Inupiaq |

|IRA |Iranian (Other) |

|IRI |Irish |

|MGA |Irish, Middle (900-1200) |

|SGA |Irish, Old (to 900) |

|IRO |Iroquoian languages |

|ITA |Italian |

|JPN |Japanese |

|JAV |Javanese |

|JRB |Judeo-Arabic |

|JPR |Judeo-Persian |

|KBD |Kabardian |

|KAB |Kabyle |

|KAC |Kachin; Jingpho |

|KAL |Kalaallisut |

|XAL |Kalmyk; Oirat |

|KAM |Kamba |

|KAN |Kannada |

|KAU |Kanuri |

|KRC |Karachay-Balkar |

|KAA |Kara-Kalpak |

|KRL |Karelian |

|KAR |Karen languages |

|KAS |Kashmiri |

|CSB |Kashubian |

|KAW |Kawi |

|KAZ |Kazakh |

|KHA |Khasi |

|KHI |Khoisan (Other) |

|KHO |Khotanese |

|KIK |Kikuyu |

|KMB |Kimbundu |

|KIN |Kinyarwanda |

|KIR |Kirghiz; Kyrgyz |

|TLH |Klingon; Tlhlngan-Hol |

|KOM |Komi |

|KON |Kongo |

|KOK |Konkani |

|KOR |Korean |

|KOS |Kosraean |

|KPE |Kpelle |

|KRO |Kru languages |

|KUA |Kuanyama |

|KUM |Kumyk |

|KUR |Kurdish |

|KRU |Kurukh |

|KUS |Kusaie |

|KUT |Kutenai |

|LAD |Ladino |

|LAH |Lahnda |

|LKT |Lakota |

|LAM |Lamba |

|DAY |Land Dayak languages |

|LAN |Langue d’oc (post-1500) |

|LAO |Lao |

|LAP |Lapp |

|LAT |Latin |

|LAV |Latvian |

|LTZ |Letzeburgesch; Luxembourgish |

|LEZ |Lezghian |

|LIM |Limburgan |

|LIN |Lingala |

|LIT |Lithuanian |

|JBO |Lojban |

|NDS |Low German; Low Saxon |

|LOZ |Lozi |

|LUB |Luba-Katanga |

|LUA |Luba-Lulua |

|LUI |Luiseno |

|LUN |Lunda |

|LUO |Luo (Kenya and Tanzania) |

|LUS |Lushai |

|MAC |Macedonian |

|MAD |Madurese |

|MAG |Magahi |

|MAI |Maithili |

|MAK |Makasar |

|MLA |Malagasy |

|MAY |Malay |

|MAL |Malayalam |

|MLT |Maltese |

|MNC |Manchu |

|MDR |Mandar |

|MAN |Mandingo |

|MNI |Manipuri |

|MNO |Manobo languages |

|MAX |Manx |

|MAO |Maori |

|ARN |Mapudungun; Mapuche (was Araucanian) |

|MAR |Marathi |

|CHM |Mari |

|MAH |Marshallese |

|MWR |Marwari |

|MAS |Masai |

|MYN |Mayan languages |

|MEN |Mende |

|MCH |Michif |

|MIC |Micmac; Mi’kmaq |

|MIN |Minangkabau |

|MWL |Mirandese |

|MIS |Miscellaneous (Other) |

|MOH |Mohawk |

|MDF |Moksha |

|MOL |Moldavian |

|LOL |Mongo |

|MON |Mongolian |

|MKH |Mon-Khmer (Other) |

|MOS |Mossi |

|MUL |Multiple languages |

|MUN |Munda (Other) |

|NQO |N’Ko |

|NAH |Nahuatl languages |

|DAK |Nakota |

|NAU |Nauru |

|NAV |Navajo |

|NDE |Ndebele, North |

|NBL |Ndebele, South |

|NDO |Ndonga |

|NAP |Neapolitan |

|NEP |Nepali |

|NEW |Newari |

|NIA |Nias |

|NIC |Niger-Kordofanian (Other) |

|SSA |Nilo-Saharan (Other) |

|NIU |Niuean |

|NOG |Nogai |

|NON |Norse, Old |

|NAI |North American Indian (Other) |

|NSO |Northern Sotho; Pedi |

|NOR |Norwegian |

|NOB |Norwegian, Bokmal |

|NNO |Norwegian, Nynorsk |

|NUB |Nubian languages |

|NYM |Nyamwezi |

|NYA |Nyanja |

|NYN |Nyankole |

|NYO |Nyoro |

|NZI |Nzima |

|OCI |Occitan (post 1500); Provencal |

|OJI |Ojibwa |

|PEO |Old Persian (ca. 600-400 B.C.) |

|ORI |Oriya |

|GAL |Oromo |

|OSA |Osage |

|OSS |Ossetian; Ossetic |

|OTO |Otomian languages |

|PAL |Pahlavi |

|PAU |Palauan |

|PLI |Pali |

|PAM |Pampanga |

|PAG |Pangasinan |

|PAN |Panjabi |

|PAP |Papiamento |

|PAA |Papuan-Australian (Other) |

|PUS |Pashto |

|PER |Persian |

|PEO |Persian, Old (ca.600-400 B.C.) |

|PHI |Philippine (Other) |

|PHN |Phoenician |

|PON |Pohnpeian |

|POL |Polish |

|PON |Ponape |

|POR |Portuguese |

|PRA |Prakrit languages |

|PRO |Provencal, Old (to 1500) |

|PUS |Pushto |

|QUE |Quechua |

|RAJ |Rajasthani |

|RAP |Rapanui |

|RAR |Rarotongan; Cook Islands Maori |

|ROA |Romance (Other) |

|RUM |Romanian |

|ROH |Romansh (was Raeto-Romance) |

|ROM |Romany |

|RUN |Rundi |

|RUS |Russian |

|SAL |Salishan languages |

|SAM |Samaritan Aramaic |

|SMI |Sami languages (Other) |

|SMN |Sami, Inari |

|SMJ |Sami, Lule |

|SME |Sami, Northern |

|SMS |Sami, Skolt |

|SMA |Sami, Southern |

|SAO |Samoan |

|SAD |Sandawe |

|SAG |Sango |

|SAN |Sanskrit |

|SAT |Santali |

|SRD |Sardinian |

|SAS |Sasak |

|SAU |Saulteaux |

|SCO |Scots |

|SEL |Selkup |

|SEM |Semitic (Other) |

|SCC |Serbian |

|SRR |Serer |

|SHN |Shan |

|SHO |Shona |

|III |Sichuan Yi |

|SCN |Sicilian |

|SID |Sidamo |

|SGN |Sign Languages |

|BLA |Siksika |

|SND |Sindhi |

|SNH |Sinhalese |

|SIT |Sino-Tibetan (Other) |

|SIO |Siouan languages |

|SIO |Sioux |

|DEN |Slave, Athapascan |

|SLA |Slavic (Other) |

|SLO |Slovak |

|SLV |Slovenian |

|SOG |Sogdian |

|SOM |Somali |

|SON |Songhai languages |

|SNK |Soninke |

|WEN |Sorbian languages |

|DSB |Sorbian, Lower |

|HSB |Sorbian, Upper |

|SSO |Sotho |

|SAI |South American Indian (Other) |

|ALT |Southern Altai |

|SPA |Spanish |

|SRN |Sranan Tongo |

|SUK |Sukuma |

|SUX |Sumerian |

|SUN |Sundanese |

|SUS |Susu |

|SWA |Swahili |

|SSW |Swati |

|SWZ |Swazi |

|SWE |Swedish |

|GSW |Swiss German |

|TAG |Tagalog |

|TAH |Tahitian |

|TAI |Tai languages |

|TAJ |Tajik |

|TMH |Tamashek |

|TAM |Tamil |

|TAR |Tatar |

|TEL |Telugu |

|TER |Tereno |

|TET |Tetum |

|THA |Thai |

|TIB |Tibetan |

|TIG |Tigre |

|TIR |Tigrinya |

|TEM |Time |

|TIV |Tiv |

|TLI |Tlingit |

|TPI |Tok Pisin |

|TKL |Tokelau |

|TOG |Tonga, Nyasa |

|TON |Tonga, Tonga Islands |

|TRU |Truk |

|TSI |Tsimshian |

|TSO |Tsonga |

|TSW |Tswana |

|TUM |Tumbuka |

|TUP |Tupi languages |

|TUR |Turkish |

|OTA |Turkish, Ottoman |

|TUK |Turkmen |

|TVL |Tuvalu |

|TYV |Tuvinian |

|TWI |Twi |

|UDM |Udmurt |

|UGA |Ugaritic |

|UIG |Uighur |

|UKR |Ukrainian |

|UMB |Umbundu |

|UND |Undetermined |

|URD |Urdu |

|UZB |Uzbek |

|VAI |Vai |

|VEN |Venda |

|VIE |Vietnamese |

|VOL |Volapuk |

|VOT |Votic |

|WAK |Wakashan languages |

|WAL |Walaitta |

|WLN |Walloon |

|WAR |Waray |

|WAS |Washo |

|WEL |Welsh |

|WOL |Wolof |

|XHO |Xhosa |

|SAH |Yakut |

|YAO |Yao |

|YAP |Yapese |

|YID |Yiddish |

|YOR |Yoruba |

|YPK |Yupik languages |

|ZND |Zande languages |

|ZAP |Zapotec |

|ZZA |Zaza; Dimili |

|ZEN |Zenaga |

|ZHA |Zhuang |

|ZUL |Zulu |

|ZUN |Zuni |

Province/State Codes

|AB |Alberta |

|BC |British Columbia |

|MB |Manitoba |

|NB |New Brunswick |

|NL |Newfoundland and Labrador |

|NT |Northwest Territories |

|NS |Nova Scotia |

|NU |Nunavut |

|ON |Ontario |

|PE |Prince Edward Island |

|QC |Quebec |

|SK |Saskatchewan |

|YT |Yukon |

|AL |Alabama |

|AK |Alaska |

|AZ |Arizona |

|AR |Arkansas |

|CA |California |

|CO |Colorado |

|CT |Connecticut |

|DE |Delaware |

|DC |District of Columbia |

|FL |Florida |

|GA |Georgia |

|GU |Guam |

|HI |Hawaii |

|ID |Idaho |

|IL |Illinois |

|IN |Indiana |

|IA |Iowa |

|KS |Kansas |

|KY |Kentucky |

|LA |Louisiana |

|ME |Maine |

|MD |Maryland |

|MA |Massachusetts |

|MI |Michigan |

|MN |Minnesota |

|MS |Mississippi |

|MO |Missouri |

|MT |Montana |

|NE |Nebraska |

|NV |Nevada |

|NH |New Hampshire |

|NJ |New Jersey |

|NM |New Mexico |

|NY |New York |

|NC |North Carolina |

|ND |North Dakota |

|OH |Ohio |

|OK |Oklahoma |

|OR |Oregon |

|PA |Pennsylvania |

|PR |Puerto Rico |

|RI |Rhode Island |

|SC |South Carolina |

|SD |South Dakota |

|TN |Tennessee |

|TX |Texas |

|UT |Utah |

|VT |Vermont |

|VA |Virginia |

|VI |Virgin Islands |

|WA |Washington |

|WV |West Virginia |

|WI |Wisconsin |

|WY |Wyoming |

Appendix B – Additional Edits

Additional Edits Revision History

|Date |Version |Changes |

|2003 Oct 24 |Pre-release |Added minimal XML to register a student in a supplemental or adult challenge departmental|

| | |exam. |

| | |Added rules for rejecting the following: |

| | |StudentPersonal or StudentProgramEnrollment for an individual who is not enrolled in the |

| | |sending school or registered in a class at the sending school (unless accompanied by |

| | |enrollment or registration). |

| | |StudentSchoolMark for a class in which the student is not registered. |

| | |Added rules for queries – the system will not return data if the learning id number does |

| | |not correspond to a student at the sending school. |

| | |Changed references to PreviousProvince and PreviousCountry to indicate that these have |

| | |been moved to object StudentSchoolEnrollment. |

| | |Added edits on StartDates and EndDates. |

|2003 Oct 29 |Pre-release |Address edit rules for atomic (discrete) addresses changed |

|2003 Oct 31 |Pre-release |Added edits on SectionInfo, preventing multiple secondary level courses per class. |

|2003 Oct 31 |Release 1.0 |Released. |

|2003 Nov 7 |Release 1.0 |Correction: StaffPersonal object is not mandatory when registering a student in a class. |

| | |Clarification: School mark will not be accepted for a student if the student registration|

| | |XML does not identify the teacher of the class, unless the class was previously created |

| | |with a teacher identified. |

| | |Edit added: If StudentSchoolMark received for a class and the teacher has never been |

| | |identified for the class, the mark will be rejected. |

|2003 Nov 17 |Release 1.0 |Edits added: |

| | |StudentSectionEnrollment: 2 edits about ExitDate (dropped date) |

| | |SectionInfo: rejected if for inactive course number |

| | |Future-dated TreatyStatusNbr, BandAffiliation or ReserveResidency will be ignored. |

|2003 Nov 24 |Release 1.0 |Minimal XML for updating student demographics added. |

|2003 Dec 3 |Release 1.1 |Modified to match changes in XML for release 1.1. |

| | |Some edits moved to main definition of specifications. |

|2003 Dec 4 |Release 1.1 |Edit added: Reject mark if one exists and this is not a correction. |

|2004 Jan 15 |Release 1.1 |One error and two warning messages added for StudentSchoolEnrollment (student already in |

| | |course; student already has credit; missing pre/co-requisite). |

|2004 Jan 22 |Release 1.1 |Error added for StudentClassMark (reject if student not enrolled in base school or |

| | |registered as a home-based student). |

|2004 Jan 29 |Release 1.1 |Edit changed – Grade is required for enrollment of a new student. Grade will not be |

| | |changed if enrollment of existing student does not specify the grade (quick enrollment). |

|2004 Feb 26 |Release 1.1 |Edit added – Class mark will be rejected if the MarkSource is School and there is a |

| | |department exam and the educator is not accredited. |

| | |Edit added to this section (was already in the main specifications) – Class mark will be |

| | |rejected if there is no educator assigned to the class. |

| | |Warning message added – If class is updated to indicate a non-accredited educator and |

| | |there are registrations that require an accredited educator (marks will be rejected). |

| | |Warning message added – If class registration received that requires an accredited |

| | |educator and the educator is not accredited (marks will be rejected). |

|2005 May 11 |Release 1.1 |Edit added – Enrollment type of “continuation of enrollment at the same school” is valid |

| | |only if the student has an active enrollment at the sending school. |

The following rules indicate edits Student Data System XML will be subjected to in addition to any editing listed in the XML specifications, and the system action in each case. Appropriate messages will be returned to the school (to indicate both the cause of the problem and the action taken by the system).

SchoolId

|XML |Message/system action |

|SchoolId does not match the message |The object containing the SchoolId element will be rejected. Schools can only send |

|SourceId. |data on their own behalf (rule SEC-XML-001). |

SchoolClass

|XML |Message/system action |

|SchoolClass to update EducatorInfo received and registrations with |School mark will not be accepted for any students registered |

|MarkSource of 100% school mark already exist for the class and the |in the class with a MarkSource of 100% school mark (rule |

|new teacher is not accredited and the course has a department exam. |SDS-MARKS-012). |

StudentSchoolEnrollment

|XML |Message/system action |

|StudentSchoolEnrollment received for student not already in The |StudentSchoolEnrollment will be rejected (rule |

|Ministry of Education database and Grade is missing. |SDS-ENROL-001). |

|StudentSchoolEnrollment with action Add received for existing student|Student will be kept at same grade as already indicated in |

|and Grade is missing. |the database (rule SDS-ENROL-001). |

|StudentSchoolEnrollment received indicating “continuation of |StudentSchoolEnrollment will be rejected (rule |

|enrollment at the same school” and the student is not actively |SDS-ENROL-012). |

|enrolled in the school sending the data. | |

|StudentSchoolEnrollment received indicating base school and student |Enrollment will be treated as a non-base school (rule |

|is already enrolled in a different school as his/her base school. |DAT-LE-041). Message will suggest that school contact the |

| |student’s current base school to resolve enrollment status. |

|StudentSchoolEnrollment received for Grade 10, 11 or 12 student |No profile or transcript can be produced until the student’s |

|without ProgramEnrollmentInfo or StudentProgramEnrollment and there |program is provided (rule SDS-RPT-001). |

|is no information already on file about what program the student is | |

|in. | |

|StudentSchoolEnrollment with action Add received, EntryType indicates|Message will request that previous province be provided (rule|

|transfer from out-of-province Canadian schooling and |DAT-STUREC-008). |

|PreviousProvState is missing. | |

|StudentSchoolEnrollment with action Add received, EntryType indicates|Message will request that previous country be provided (rule |

|transfer from out-of-country schooling and PreviousCountry is |DAT-STUREC-008). |

|missing. | |

|ExitType is not consistent with new enrollment information received |Enrollment outcome will be updated to reflect new information|

|from another school. |received (e.g., “discontinued schooling” updated to |

| |“transferred to another SK school”) (rule DAT-STUREC-031). |

|StudentSchoolEnrollment received with action of Delete and this is |Deleting StudentSchoolEnrollment will be rejected (rule |

|the student’s base school and the student has course registrations in|SDS-ENROL-003). |

|effect during the time of the enrollment. | |

StudentClassEnrollment

|XML |Message/system action |

|StudentClassEnrollment received for a Class with no educator |School mark will not be accepted for this student for this |

|identified. |class (rule SDS-MARKS-002). |

|StudentClassEnrollment with action Add received and MarkSource is |If the course has a department exam and ExamRegistrationInfo |

|missing. |is included or the teacher is not accredited, the final mark |

| |will be calculated as a blended school/dept mark. Otherwise, |

| |the final mark will be calculated as 100% school mark (rule |

| |DAT-STUREC-005). |

|ExamRegistrationInfo is included but there is no department exam in |ExamRegistrationInfo will be ignored (rule DAT-STUREC-035). |

|the course. | |

|MarkSource indicates School and ExamRegistrationInfo is included and |MarkSource will be ignored (Blended will be used instead) |

|there is a department exam in the course. |(rule DAT-STUREC-005). |

|MarkSource indicates School and ExamRegistrationInfo is not included|School mark will not be accepted for this student for this |

|and there is a department exam in the course and the educator |class (rule SDS-MARKS-012). |

|identified for the class is not accredited. | |

|ExitDate is set (to before the term EndDate) and Dropped element is |Dropped element will be ignored. It will be assumed that the |

|included, and the Dropped element indicates that the student has not |student dropped the class on the indicated ExitDate (rule |

|dropped the class. |DAT-STUREC-018). |

|StudentClassEnrollment received with action of Delete and a mark |Deleting StudentClassEnrollment will be rejected (rule |

|exists for this record. |DAT-STUREC-010). |

|StudentClassEnrollment received and the student already has an active|StudentClassEnrollment will be rejected (rule SDS-MARKS-007).|

|registration for the same course during the same term. | |

|StudentClassEnrollment received and the student already has credit |StudentClassEnrollment will be processed. Message will |

|for the same course or a “like” credit course, or is currently |indicate the existence of the same or like credit course and |

|registered in a “like” credit course. |that the student will not receive credit for both (rule |

| |DAT-STUREC-036). |

|StudentClassEnrollment received and student does not have the pre |StudentClassEnrollment will be processed. Message will |

|and/or co-requisites. |indicate missing pre/co-requisite (rule DAT-STUREC-037). |

StudentClassMark

|XML |Message/system action |

|StudentClassMark received with no CorrectionCode or |StudentClassMark will be rejected (rule SDS-MARKS-004). |

|CorrectionCode=”No” and the student already has a mark for the | |

|indicated class. | |

|StudentClassMark received and the student is not enrolled in a base |StudentClassMark will be rejected (rule SDS-MARKS-005). |

|school or registered as a home-based student at any time between the | |

|class start and end dates. | |

|StudentClassMark received and the MarkSource is School and there is a|StudentClassMark will be rejected (rule SDS-MARKS-012). |

|department exam in the course and the educator is not accredited. | |

|StudentClassMark received and there is no educator assigned to the |StudentClassMark will be rejected (rule SDS-MARKS-002). |

|class. | |

StudentSupplementalMark

|XML |Message/system action |

|StudentSupplementalMark received with no CorrectionCode or |StudentSupplementalMark will be rejected (rule |

|CorrectionCode=”No” and the student already has a supplemental mark |SDS-MARKS-004). |

|for the indicated course. | |

StudentInfo

|XML |Message/system action |

|Legal Name provided in conjunction with DeptAssignedPersonId and not |Name will be ignored. Message will indicate appropriate |

|matching the individual’s current legal name in the database. |procedure for changing legal name (rule SDS-DEMO-001). |

|Any Name element includes a period (.). |The period will be dropped or replaced by a space (rule |

| |DAT-LE-013). No message. |

|All elements within a Name are completely in uppercase. |Name will be converted to mixed case (lowercase with an |

| |initial capital on each separate word) (rule DAT-LE-014). No |

| |message. |

|All elements within a Name are completely in lowercase. |Name will be converted to mixed case (lowercase with an |

| |initial capital on each separate word) (rule DAT-LE-014). No |

| |message. |

|HSN provided in conjunction with DeptAssignedPersonId and not |Object will be rejected (rule SDS-DEMO-011). Student Records |

|matching the individual’s information in the database. |staff will undertake to resolve the identity of the |

| |individual. |

|Gender provided in conjunction with DeptAssignedPersonId and not |Object will be rejected (rule SDS-DEMO-001). Student Records |

|matching what is in the database and neither value is U (unknown). |staff will undertake to resolve the identity of the |

| |individual. |

|Gender provided in conjunction with DeptAssignedPersonId and not |Gender will be ignored (rule SDS-DEMO-001). |

|matching what is in the database and the XML value is U (unknown). | |

|Address does not meet edit rules (see below). |Address will be rejected (rule DAT-LE-009). If this is the |

| |permanent mailing address of a new student, the student will |

| |be rejected (rule SDS-DEMO-002). |

|Address does not include Country. |Country will default to Canada (rule DAT-LE-009). No message.|

|Address PostalCode is in format ANANAN (no space). |A space will be inserted before editing (rule DAT-LE-009). No|

| |message. |

|Address PostalCode is a string of 9 digits with no punctuation or |A hyphen will be inserted before editing (rule DAT-LE-009. No|

|spaces (U.S. postal code). |message. |

|Permanent mailing address includes EndDate |EndDate will be ignored (rule DAT-LE-018). |

|Address StartDate is prior to the date it is received and prior to |Address will be ignored (rule SDS-DEMO-004). |

|the StartDate of the address currently in effect (for the same type | |

|of address). | |

|TreatyStatusNbr StartDate is prior to the date it is received and |TreatyStatusNbr will be ignored (rule SDS-DEMO-006). |

|prior to the StartDate of the treaty status number in effect. | |

|BandAffiliation StartDate is prior to the date it is received and |BandAffiliation will be ignored (rule SDS-DEMO-006). |

|prior to the StartDate of the band affiliation in effect. | |

|TreatyStatusNbr, BandAffiliation or ReserveResidency StartDate is |TreatyStatusNbr, BandAffiliation or ReserveResidency will be |

|after the date it is received (future-dated). |ignored (rule SDS-DEMO-012). |

|TreatyStatusNbr, BandAffiliation or ReserveResidency included from a |Will be ignored (rule SEC-DEMO-001). |

|school that is not a band school. | |

|TreatyStatusNbr is included and the student has not declared as a |TreatyStatusNbr will be ignored (rule SDS-DEMO-008). |

|treaty/registered/status Indian. | |

|BandAffiliation or ReserveResidency is included and the student has |BandAffiliation and ReserveResidency will be ignored (rule |

|not declared any aboriginal status. |SDS-DEMO-008). |

Address Edit Rules

An address must include at least one of the following:

• Street/Line1

• Street/Complex

• Street/StreetNumber

• Street/StreetName

Note that box number, rural route designation (e.g., RR 7) or “general delivery” can be included in any of the Complex, StreetNumber or StreetName elements.

An address must include City.

If the Country is (or is implied to be) Canada:

• StatePr must be included and must be a valid code for a Canadian province.

• Postal code must be included (unless this is a physical address), must be in the format ANA NAN, and must be valid for the indicated province.

If the Country is the United States:

• StatePr must be included and must be a valid code for a U.S. state.

• Postal code must be included (unless this is a physical address) and must be in the format NNNNN or NNNNN-NNNN.

SL_Query

|XML |Message/system action |

|The query specifies a DeptAssignedPersonId for an individual who is |No data will be returned, other than a message indicating |

|not already enrolled in or registered in a class delivered by the |that the learning id number is not for a student at the |

|sending school. |school (rule SEC-XML-003). |

|The query specifies a DeptAssignedPersonId that does not correspond |No data will be returned, other than a message indicating |

|to any individual. |that the learning id number is not for a student at the |

| |school. |

Automatic Setting of End Dates

The following end dates will be automatically set in the The Ministry of Education database when new information is received, and thus do not have to be explicitly sent in XML.

If an address is received and accepted, the system will automatically set the end date of the address of the same type in effect prior to the start date of the new address. The exception is if the address is a temporary mailing address and the prior address already has an end date before the start date of the new address (rule DAT-LE-018).

If a TreatyStatusNbr, BandAffiliation, ReserveResidency, Primary E-Mail Address or PhoneNumber element is received and accepted, the system will automatically set the end date of the similar element in effect prior to the start date of the new element (rules DAT-LE-027, 028, 029, 019, 020). Note that if a student has two home phone numbers in effect at the same time, they should both be sent in the same XML object whenever updating the home phone number. Note also that receiving a new Alternate E-Mail Address does not automatically end-date the previous alternate e-mail address (rule DAT-LE-037).

If a StudentProgramEnrollment is received and accepted, the system will automatically set the exit date of the program enrollment in effect prior to the entry date of the new program enrollment (rule DAT-STUREC-034).

-----------------------

[pic]

[pic]

[pic]

[pic]

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download