6 Data Model

6.1 Introduction

This section presents the XML structure for SIF Data Model common elements and objects in a tabular format for readers less versed in parsing formal XML schema definitions, along with conventions that typically apply in the data model for easy reference.

6.1.1 Format

The Char(acteristics) column for all of the tables in this section use the following codes:

Code Characteristic
M Mandatory element or attribute
O Optional element or attribute
C Conditional element or attribute
MR Mandatory and repeatable element
OR Optional and repeatable element
CR Conditional and repeatable element

Mandatory elements MUST be present in Add events, and in non-empty and non-error responses to requests for entire SIF objects (e.g., no SIF_Query/SIF_QueryObject/SIF_Element elements supplied in the request). Mandatory attributes MUST always be present if their corresponding element is present.

SIF Agents and Zone Integration Servers MUST supply data according to the types specified in the Type columns and their corresponding equivalents in the most recent schema files associated with this specification. If there is a discrepancy between object and element definitions in this specification and the corresponding schema files, the definition in the schema files takes precedence; every effort will be made to note discrepancies in the errata for this document as they are identified.

6.1.2 Conventions

6.1.2.1 Object Attributes/Primary Keys

While XML attributes are primarily used in SIF to provide additional processing information regarding the associated element content, attributes at the root level of an object have special significance. These attributes serve as the primary key or identifier for the object; in many cases this is no more than a RefId GUID of RefIdType, though the primary key may consist solely of foreign key references to other SIF objects and include school years, dates, etc. These key attributes are immutable over the lifetime of an object and serve the purpose of uniquely identifying an object, especially in Change and Delete events. Some groups include non-primary key attributes in object attributes (e.g. mandatory foreign key references to other objects) and attributes that provide additional processing information regarding the objects. As SIF currently mandates that all object attributes be included in all messages, when a SIFA working group or task force places a non-primary key attribute in the object's attribute definitions (typically out of historical query conventions), they are indicating that this value must still be accessible to systems in Change and, more notably, Delete events. All object attributes must be supplied to identify the object in Change and Delete events.

6.1.2.2 Object References

As stated elsewhere, SIF primarily uses GUIDs as object identifiers, primary keys, or RefIds. References to primary keys (foreign key references) follow certain conventions in SIF in most objects:

6.1.2.3 Lists/Repeatable Elements

To those accustomed with normalized relational databases, the SIF Data Model will appear to not be especially normalized, especially with regard to repeating groups of data not being separated into their own "tables," or in SIF's case, "objects" with primary/foreign keys to maintain the relationship. Bear in mind that SIF is not a format for storing data; it is a format for transmitting data asynchronously between disparate and distributed systems needing to share data for interoperability; the format this data takes in different systems can vary greatly, and the data related to any given "entity" may come from a variety of sources and systems. The goals of normalization—eliminating redundancy, organizing data efficiently, reducing inconsistencies, etc.—take on a different meaning in a message queuing system. Of primary importance is transmitting the data needed for interoperability in a minimum number of messages. The need to "join" together a great number of separate objects is kept to a minimum in SIF, as individual systems do not have access to all the data required and due to the asynchronous nature of SIF, any one of these systems may take a fair amount of time before returning data necessary for joins (SIF_ExtendedQuery has been developed to communicate a join to a single system that may have direct access to the all the data necessary to efficiently accomplish this task). It's one thing to make a separate request for a student's picture or enrollment information, another entirely to request every available phone number, address and e-mail address separately from the SIF Zone. As such, it is often the case in SIF that repeating data is stored directly in an object, rather than being separated out into a separate object.

Repeating data is very analogous to objects, though, within any given object. In SIF's Publish/Subscribe model, repeating elements in objects can be added to, changed in or deleted from an object, much like objects can be added to, changed in or deleted from a Zone. Within an existing object, all of these actions take place within a Change event, and repeating elements—if any exist initially—are first made available within an object in an Add event or can be obtained directly via requests. Repeatable elements are contained within a parent List element in most SIF objects whether or not they support events, e.g.:

<EmailList> <Email Type="Primary">contact@sifinfo.org</Email> <Email Type="Alternate1">info@sifinfo.org</Email> </EmailList>
Example 6.1.2.3-1: EmailList

Two types of list are currently defined in SIF, ActionList and List; both consist of a list container element and a single repeatable child element. Each type of list serves different needs and has associated conventions for communication and processing in the SIF Publish/Subscribe Model. List or ActionList is specified in the Type column in tables in this section for each list; when an ActionList the key, possibly compound, is also indicated.

6.1.2.3.1 ActionList

An ActionList has a key that uniquely identifies each child element within the list. This type of list is primarily used when it is desirable or necessary for systems to support or refer to a subset of the list, either due to functionally only being able to support a subset or because specifying a subset in Change events is more efficient than transmitting a whole list as in List. While one system may support the Primary and Alternate1 e-mail address types above, another may additionally support Alternate2 addresses. The second system is able to communicate the addition, change or deletion of an Alternate2 address without the first system inadvertently interpreting that to mean a student or staff member's Primary and Alternate1 addresses have been deleted.

Systems communicate the whole list as a cohesive unit consisting of the parent list container element and all child elements in an Add event; if the container is present with no child elements, the list is empty; the same is implied when an optional list is not present in an Add event. In a Change event, systems SHOULD only transmit those elements that have been added, changed or deleted. Deletion is not implied by the omission of a child element, but rather explicitly communicated with a SIF_Action attribute of Delete added to the deleted element, along with the element's key attribute(s)/element(s) at a minimum. An empty list in a Change event implies no changes have occurred in the list, as does the omission of the list. Systems storing ActionList data should set/replace/delete any existing values identified by primary keys in the Change event they support.

<EmailList> <Email Type="Primary">editor@sifinfo.org</Email> <Email Type="Alternate1" SIF_Action="Delete" /> </EmailList>
Example 6.1.2.3.1-1: Indicating a new value for the Primary e-mail address and deleting the Alternate1 address

A system that supports an Alternate2 e-mail makes no changes to its value for that address type.

6.1.2.3.2 List

While a unique, primary key may still be identifiable in its child elements, a List is used primarily when:

Lists are always transmitted as a cohesive unit consisting of the parent list container element and all child elements. If no child elements exist in the list, the list consists of the container element alone. Omission of an optional List in an Add event also implies no list items. In a Change event, omission of the List indicates no changes have been made; otherwise the parent container element and all child elements, if any, are included. Systems storing List data should replace all corresponding data in their systems when persisting the list; likewise when a change is made to one or more list items or when all items in the list are deleted, systems should send the whole list in a Change event.

<CountriesOfCitizenship> <CountryOfCitizenship>US</CountryOfCitizenship> <CountryOfCitizenship>DE</CountryOfCitizenship> </CountriesOfCitizenship>
Example 6.1.2.3.2-1: Indicating an updated list of country citizenships

A system that supports CountriesOfCitizenship updates its local data to reflect U.S. and German citizenship.

6.1.2.4 Supported Optional Elements Without Values

Some agents follow the convention of supplying an optional element as empty (e.g. <BirthDate></BirthDate> or <BirthDate/> to indicate that the application supports the element, but that it currently has no value available within a given object. To allow for this convention within SIF—as in this example an empty string does not satisfy the xs:date type definition of BirthDate—all optional elements in SIF are defined as nillable [SCHEMA]. To satisfy type constraints on an element while still supplying an empty or "nil" value, agents MUST tag the element with a true value for the nil attribute from namespace http://www.w3.org/2001/XMLSchema-instance [SCHEMA] (e.g. <BirthDate xsi:nil="true"/> where the prefix xsi has been mapped to the namespace http://www.w3.org/2001/XMLSchema-instance), unless an empty value is valid with regard to the element's type definition, in which case supplying the nil attribute value of true is optional. See SIF and XML Namespaces for more details on namespaces, and SIF and XML Schema for more details on SIF's use of XML Schema.

6.1.2.5 Externally-Defined XML

Note that XML not defined within SIF does not necessarily support ad hoc omission of XML elements at will to conform with the conventions of the SIF Publish/Subscribe Model (where unchanged elements are typically omitted in Change events, and where non-key elements are often omitted in Delete events) or of the SIF Request/Response Model (where a subset of elements can be retrieved from objects with requests). If externally-defined XML occurs within a SIF data object, SIF conventions do not extend to that XML unless that XML is defined to accommodate SIF conventions; the XML, when transmitted, must only conform to any external definitions dictating its structure, if any. Applications should be prepared for the possibility of receiving whole externally-defined XML structures in Change events (regardless of how little or much of the external XML has changed) and possibly also Delete events, likewise in responses even when a subset of the XML structure's child elements may have explicitly been requested.

6.2 Common Elements

6.2.1 Address

This element represents an address. This element occurs within objects and elements such as StaffPersonal and StudentPersonal/StudentAddress, etc.

Address
Figure 6.2.1-1: Address Address Type Street Line1 Line2 Line3 Complex StreetNumber StreetPrefix StreetName StreetType StreetSuffix ApartmentType ApartmentNumberPrefix ApartmentNumber ApartmentNumberSuffix City County StateProvince Country PostalCode GridLocation
 Element/@AttributeCharDescriptionType
 AddressM

This element contains address data.

 
 
@TypeM

Code that defines the location of the address. Note: A subset of specific valid values for each instance in a data object may be listed in that object.

 
NCES0025AddressTypeType
 StreetM

The street element is a complex element and breaks the street down into several parts.

 
 
 Street/Line1M

Address line 1.

 
xs:normalizedString
 Street/Line2O

Address line 2.

 
xs:normalizedString
 Street/Line3O

Address line 3.

 
xs:normalizedString
 Street/ComplexO

Name of the complex.

 
xs:normalizedString
 Street/StreetNumberO

The address number assigned to the building.

 
xs:normalizedString
 Street/StreetPrefixO

Street prefix like NE

 
xs:normalizedString
 Street/StreetNameO

The name of the street.

 
xs:normalizedString
 Street/StreetTypeO

The type of street. For example, Lane, Blvd., Ave., etc.

 
xs:normalizedString
 Street/StreetSuffixO

Street suffix like SW.

 
xs:normalizedString
 Street/ApartmentTypeO

Type of apartment, for example, Suite.

 
xs:normalizedString
 Street/ApartmentNumberPrefix
     
O

Apartment number prefix.

 
xs:normalizedString
 Street/ApartmentNumberO

The number of the apartment.

 
xs:normalizedString
 Street/ApartmentNumberSuffix
     
O

Apartment number suffix.

 
xs:normalizedString
 CityM

The city part of the address.

 
xs:normalizedString
 CountyO

The county part of the address.

 
xs:normalizedString
 StateProvinceM

The state or province code.

 
StateProvince
 CountryM

The country code.

 
Country
 PostalCodeM

The ZIP/postal code.

 
xs:normalizedString
 GridLocationO

The location of the address.

 
GridLocation
Table 6.2.1-1: Address
<Address Type="0123"> <Street> <Line1>1 IBM Plaza</Line1> <Line2>Suite 2000</Line2> <StreetNumber>1</StreetNumber> <StreetName>IBM</StreetName> <StreetType>Plaza</StreetType> <ApartmentType>Suite</ApartmentType> <ApartmentNumber>2000</ApartmentNumber> </Street> <City>Chicago</City> <County>Cook</County> <StateProvince>IL</StateProvince> <Country>US</Country> <PostalCode>60611</PostalCode> <GridLocation> <Latitude>41.850000</Latitude> <Longitude>-87.650000</Longitude> </GridLocation> </Address>
Example 6.2.1-1: Address

6.2.2 AddressList

A list of Address elements.

AddressList
Figure 6.2.2-1: AddressList AddressList Address SIF_Action
 Element/@AttributeCharDescriptionType
 AddressList 

A list of Address elements.

 
ActionList (Address/@Type)
 AddressMR Address
@SIF_ActionO

In a Change event, this flag can be used to indicate an element has been deleted from the parent list container. At a minimum the key for the list must also be present.

 
values:
Delete
Table 6.2.2-1: AddressList
<AddressList> <Address Type="0123"> <Street> <Line1>1 IBM Plaza</Line1> <Line2>Suite 2000</Line2> <StreetNumber>1</StreetNumber> <StreetName>IBM</StreetName> <StreetType>Plaza</StreetType> <ApartmentType>Suite</ApartmentType> <ApartmentNumber>2000</ApartmentNumber> </Street> <City>Chicago</City> <County>Cook</County> <StateProvince>IL</StateProvince> <Country>US</Country> <PostalCode>60611</PostalCode> <GridLocation> <Latitude>41.850000</Latitude> <Longitude>-87.650000</Longitude> </GridLocation> </Address> </AddressList>
Example 6.2.2-1: AddressList

6.2.3 BirthDate

A person's date of birth.

BirthDate
Figure 6.2.3-1: BirthDate BirthDate
 Element/@AttributeCharDescriptionType
 BirthDate 

A person's date of birth.

 
xs:date
Table 6.2.3-1: BirthDate
<BirthDate>1970-08-11</BirthDate>
Example 6.2.3-1: BirthDate

6.2.4 CongressionalDistrict

Common element used to indicate the number of the U.S. Congressional District in which an entity resides or is physically located.

CongressionalDistrict
Figure 6.2.4-1: CongressionalDistrict CongressionalDistrict
 Element/@AttributeCharDescriptionType
 CongressionalDistrict 

Number for the US congressional district. While typically numerical, this element does allow for text values to cover exceptions, e.g. to indicate an "at-large" district as in Wyoming.

 
union of:

xs:unsignedInt
xs:token
Table 6.2.4-1: CongressionalDistrict
<CongressionalDistrict>3</CongressionalDistrict>
Example 6.2.4-1: CongressionalDistrict

6.2.5 ContactInfo

Common element used to supply information for a contact person at a school, LEA, or other institution.

ContactInfo
Figure 6.2.5-1: ContactInfo ContactInfo Name Type Prefix LastName FirstName MiddleName Suffix PreferredName SortName FullName PositionTitle Role Address EmailList PhoneNumberList
 Element/@AttributeCharDescriptionType
 ContactInfo 

Common element used to supply information for a contact person at a school, LEA, or other institution.

 
 
 NameM

The name of the contact person. Note that Name is redefined here to allow for LastName and FirstName to be omitted if they cannot be provided; when omitted, FullName must have a value.

 
 
@TypeM

Code that specifies what type of name this is. If unsure, use 04.

 
values:
01
Given Name (Name at Birth)
02
Current Legal
03
Alias
04
Name of Record
05
Previous Name (sometimes called Maiden Name of Female Persons)
07
Married Name
08
Professional Name
 Name/PrefixO

A prefix associated with the name like Mr., Ms., etc.

 
xs:normalizedString
 Name/LastNameO

The last name.

 
LastName
 Name/FirstNameO

The first name.

 
FirstName
 Name/MiddleNameO

The middle name or initial.

 
MiddleName
 Name/SuffixO

Generation of suffix like II, Jr., etc.

 
xs:normalizedString
 Name/PreferredNameO

This is a name that the person prefers to be called by.

 
xs:normalizedString
 Name/SortNameO

This is the name to be used for sorting purposes.

 
xs:normalizedString
 Name/FullNameC

A free text field for the complete name. Mandatory if LastName and FirstName are omitted.

 
xs:normalizedString
 PositionTitleO

The contact person's position title.

Examples
Superintendent

xs:normalizedString
 RoleO

Role played by this contact in this instance.

Examples
Report Contact
Primary Contact
Alternate Contact

xs:normalizedString
 AddressO

Address of the contact.

 
Address
 EmailListO

List of Email elements.

 
EmailList
 PhoneNumberListO

List of PhoneNumber elements.

 
PhoneNumberList
Table 6.2.5-1: ContactInfo
<ContactInfo> <Name Type="04"> <LastName>Geisel</LastName> <FirstName>Theodore</FirstName> <FullName>Theodore Geisel</FullName> </Name> <PositionTitle>Superintendent</PositionTitle> <EmailList> <Email Type="Primary">drseuss@whoville.k12.state.us</Email> </EmailList> <PhoneNumberList> <PhoneNumber Type="0096"> <Number>(555) 555-0102</Number> </PhoneNumber> </PhoneNumberList> </ContactInfo>
Example 6.2.5-1: ContactInfo

6.2.6 Country

A country code.

Country
Figure 6.2.6-1: Country Country
 Element/@AttributeCharDescriptionType
 Country 

A country code.

 
union of:

ISO31661EnglishCountryNamesAndCodeElementsType
ISO31663CodeForFormerlyUsedNamesOfCountriesType
Table 6.2.6-1: Country
<Country>US</Country>
Example 6.2.6-1: Country

6.2.7 CourseCode

School-defined local code for a course.

CourseCode
Figure 6.2.7-1: CourseCode CourseCode
 Element/@AttributeCharDescriptionType
 CourseCode 

School-defined local code for a course.

 
xs:normalizedString
Table 6.2.7-1: CourseCode
<CourseCode>CS101A</CourseCode>
Example 6.2.7-1: CourseCode

6.2.8 CourseCredits

The number of credits awarded upon course completion.

CourseCredits
Figure 6.2.8-1: CourseCredits CourseCredits Type
 Element/@AttributeCharDescriptionType
 CourseCredits 

The number of credits awarded upon course completion.

 
xs:decimal
@TypeM

The type of credit offered.

 
NCES0108CreditTypeEarnedType
Table 6.2.8-1: CourseCredits
<CourseCredits Type="0588">2</CourseCredits>
Example 6.2.8-1: CourseCredits

6.2.9 CourseTitle

Title of a course.

CourseTitle
Figure 6.2.9-1: CourseTitle CourseTitle
 Element/@AttributeCharDescriptionType
 CourseTitle 

Title of a course.

 
xs:normalizedString
Table 6.2.9-1: CourseTitle
<CourseTitle>Graphics Basics</CourseTitle>
Example 6.2.9-1: CourseTitle

6.2.10 Demographics

Demographics information about the student, contact, staff member, etc. This element occurs within objects such as StudentPersonal, StudentContact, etc.

Demographics
Figure 6.2.10-1: Demographics Demographics RaceList HispanicLatino Gender BirthDate BirthDateVerification PlaceOfBirth CountyOfBirth StateOfBirth CountryOfBirth CountriesOfCitizenship CountryOfCitizenship CountriesOfResidency CountryOfResidency CountryArrivalDate CitizenshipStatus EnglishProficiency Code OtherCodeList LanguageList Language Code OtherCodeList LanguageType Dialect DwellingArrangement Code OtherCodeList MaritalStatus
 Element/@AttributeCharDescriptionType
 Demographics 

Demographics information about the student, contact, staff member, etc. This element occurs within objects such as StudentPersonal, StudentContact, etc.

 
 
 RaceListO RaceList
 HispanicLatinoO HispanicLatino
 GenderO

Person's gender.

 
Gender
 BirthDateO

The person's date of birth.

 
BirthDate
 BirthDateVerificationO

Means by which the person's birth date was validated.

 
NCES0315BirthdateVerificationType
 PlaceOfBirthO

The person's place of birth—like village, town, city etc.

 
xs:normalizedString
 CountyOfBirthO

The county in which the person was born.

 
xs:normalizedString
 StateOfBirthO

The person's state of birth.

 
StateProvince
 CountryOfBirthO

The person's country of birth.

 
Country
 CountriesOfCitizenshipO List
 CountriesOfCitizenship/CountryOfCitizenship
     
MR

A person's country of citizenship.

 
Country
 CountriesOfResidencyO List
 CountriesOfResidency/CountryOfResidency
     
MR

A person's country of residence.

 
Country
 CountryArrivalDateO

Date the person first arrived in the country.

 
xs:date
 CitizenshipStatusO

The person's citizenship status.

 
NCES0322CitizenshipStatusType
 EnglishProficiencyO  
 EnglishProficiency/CodeM

Person's proficiency in English.

 
NCES0585EnglishProficiencyType
 EnglishProficiency/OtherCodeList
     
O OtherCodeList
 LanguageListO List
 LanguageList/LanguageMR  
 LanguageList/Language/Code
     
M

The code representing the specific language that an individual uses to communicate. 

 
NISOZ3953LanguageCodesType
 LanguageList/Language/OtherCodeList
     
O OtherCodeList
 LanguageList/Language/LanguageType
     
O

An indication of the function and context in which an individual uses a language to communicate.

 
NCES0327LanguageTypeType
 LanguageList/Language/Dialect
     
O

Specific dialect of a person's language.

 
xs:normalizedString
 DwellingArrangementO

Setting/environment in which the person resides.

 
 
 DwellingArrangement/CodeM

Code representing the setting/environment in which the person resides

 
NCES0600DwellingArrangementType
 DwellingArrangement/OtherCodeList
     
O OtherCodeList
 MaritalStatusO

The person's marital status.

 
NCES0330MaritalStatusType
Table 6.2.10-1: Demographics
<Demographics> <RaceList> <Race> <Code>1002</Code> </Race> </RaceList> <Gender>M</Gender> <BirthDate>1990-09-26</BirthDate> <BirthDateVerification>1004</BirthDateVerification> <PlaceOfBirth>Miami</PlaceOfBirth> <CountyOfBirth>Dade</CountyOfBirth> <StateOfBirth>FL</StateOfBirth> <CountryOfBirth>US</CountryOfBirth> <CountriesOfCitizenship> <CountryOfCitizenship>US</CountryOfCitizenship> </CountriesOfCitizenship> <CountriesOfResidency> <CountryOfResidency>US</CountryOfResidency> </CountriesOfResidency> <CitizenshipStatus>1017</CitizenshipStatus> <EnglishProficiency> <Code>1633</Code> </EnglishProficiency> <LanguageList> <Language> <Code>eng</Code> </Language> </LanguageList> <DwellingArrangement> <Code>1674</Code> </DwellingArrangement> <MaritalStatus>1042</MaritalStatus> </Demographics>
Example 6.2.10-1: Demographics

6.2.11 DistrictCourseCode

A district course code.

DistrictCourseCode
Figure 6.2.11-1: DistrictCourseCode DistrictCourseCode
 Element/@AttributeCharDescriptionType
 DistrictCourseCode 

A district course code.

 
xs:normalizedString
Table 6.2.11-1: DistrictCourseCode
<DistrictCourseCode>CS101</DistrictCourseCode>
Example 6.2.11-1: DistrictCourseCode

6.2.12 EarnedStatus

This gives information about a staff member's meal status.

EarnedStatus
Figure 6.2.12-1: EarnedStatus EarnedStatus Type StartDate EndDate
 Element/@AttributeCharDescriptionType
 EarnedStatus 

This gives information about a staff member's meal status.

 
 
@TypeM

Earned status type.

In SIF objects where the EarnedStatus is required and does not apply, NA should be used.

 
values:
Yes
No
NA
 StartDateO

Date on which earned status became effective (inclusive).

 
xs:date
 EndDateC

Date on which earned status was last in effect. This attribute is conditional upon the StartDate element. It exists only if the StartDate element exists.

 
xs:date
Table 6.2.12-1: EarnedStatus
<EarnedStatus Type="Yes"> <StartDate>2004-01-01</StartDate> <EndDate>2004-12-31</EndDate> </EarnedStatus>
Example 6.2.12-1: EarnedStatus

6.2.13 EconomicDisadvantage

Does the student meet the State criteria for classification as having an economic disadvantage?

EconomicDisadvantage
Figure 6.2.13-1: EconomicDisadvantage EconomicDisadvantage
 Element/@AttributeCharDescriptionType
 EconomicDisadvantage 

Does the student meet the State criteria for classification as having an economic disadvantage?

 
values:
Yes
No
Unknown
Table 6.2.13-1: EconomicDisadvantage
<EconomicDisadvantage>No</EconomicDisadvantage>
Example 6.2.13-1: EconomicDisadvantage

6.2.14 EducationalLevel

A code representing the highest level of education completed by a person.

EducationalLevel
Figure 6.2.14-1: EducationalLevel EducationalLevel
 Element/@AttributeCharDescriptionType
 EducationalLevel 

A code representing the highest level of education completed by a person.

 
NCES0332HighestLevelOfEducationCompletedType
Table 6.2.14-1: EducationalLevel
<EducationalLevel>1057</EducationalLevel>
Example 6.2.14-1: EducationalLevel

6.2.15 ElectronicId

Common element used to specify entity identifiers that are read by electronic equipment. It is used in objects such as StudentPersonal, StaffPersonal, and LibraryPatronStatus.

ElectronicId
Figure 6.2.15-1: ElectronicId ElectronicId Type
 Element/@AttributeCharDescriptionType
 ElectronicId 

Common element used to specify entity identifiers that are read by electronic equipment. It is used in objects such as StudentPersonal, StaffPersonal, and LibraryPatronStatus.

 
xs:normalizedString
@TypeM

Electronic ID type.

 
values:
Barcode
Magstripe
PIN
RFID
Table 6.2.15-1: ElectronicId
<ElectronicId Type="Barcode">206654</ElectronicId>
Example 6.2.15-1: ElectronicId

6.2.16 ElectronicIdList

A list of electronic identifiers associated with an entity.

ElectronicIdList
Figure 6.2.16-1: ElectronicIdList ElectronicIdList ElectronicId
 Element/@AttributeCharDescriptionType
 ElectronicIdList 

A list of electronic identifiers associated with an entity.

 
List
 ElectronicIdMR ElectronicId
Table 6.2.16-1: ElectronicIdList
<ElectronicIdList> <ElectronicId Type="Barcode">206654</ElectronicId> <ElectronicId Type="PIN">9823</ElectronicId> </ElectronicIdList>
Example 6.2.16-1: ElectronicIdList

6.2.17 ELL

Is the student an English Language Learner under Title 3?

ELL
Figure 6.2.17-1: ELL ELL
 Element/@AttributeCharDescriptionType
 ELL 

Is the student an English Language Learner under Title 3?

 
values:
Yes
No
Unknown
Table 6.2.17-1: ELL
<ELL>No</ELL>
Example 6.2.17-1: ELL

6.2.18 Email

This element represents an e-mail address of one of a number of types and occurs in objects such as StudentPersonal, StaffPersonal, StudentContact, etc.

Email
Figure 6.2.18-1: Email Email Type
 Element/@AttributeCharDescriptionType
 Email 

This element represents an e-mail address of one of a number of types and occurs in objects such as StudentPersonal, StaffPersonal, StudentContact, etc.

 
xs:normalizedString
@TypeM

This attribute specifies the type of e-mail address.

 
values:
Primary
Alternate1
Alternate2
Alternate3
Alternate4
Table 6.2.18-1: Email
<Email Type="Primary">contact@sifinfo.org</Email>
Example 6.2.18-1: Email

6.2.19 EmailList

A list of e-mail addresses associated with an individual.

EmailList
Figure 6.2.19-1: EmailList EmailList Email SIF_Action
 Element/@AttributeCharDescriptionType
 EmailList 

A list of e-mail addresses associated with an individual.

 
ActionList (Email/@Type)
 EmailMR Email
@SIF_ActionO

In a Change event, this flag can be used to indicate an element has been deleted from the parent list container. At a minimum the key for the list must also be present.

 
values:
Delete
Table 6.2.19-1: EmailList
<EmailList> <Email Type="Primary">contact@sifinfo.org</Email> <Email Type="Alternate1">info@sifinfo.org</Email> </EmailList>
Example 6.2.19-1: EmailList

6.2.20 EntryDate

Common element used to specify the date on which a student enters a school, program, course section, etc. It is used in objects such as StudentSchoolEnrollment and StudentSectionEnrollment.

EntryDate
Figure 6.2.20-1: EntryDate EntryDate
 Element/@AttributeCharDescriptionType
 EntryDate

The first date on which a student enters.

 
xs:date
Table 6.2.20-1: EntryDate
<EntryDate>2004-08-27</EntryDate>
Example 6.2.20-1: EntryDate

6.2.21 ExceptionalityCategories

ExceptionalityCategories
Figure 6.2.21-1: ExceptionalityCategories ExceptionalityCategories ExceptionalityCategory Code OtherCodeList ExceptionalityPriority
 Element/@AttributeCharDescriptionType
 ExceptionalityCategories  List
 ExceptionalityCategoryMR  
 ExceptionalityCategory/Code
     
M

Exceptionality description/code which identifies the exceptionality or areas of need of the student. Not all programs require identification of an exceptionality. If required for this program type, must have at least one element with ExceptionalityPriority value of Primary.

 
union of:

NCES0768PrimaryDisabilityTypeType

additional values:

9999
Other (not valid for special education)
 ExceptionalityCategory/OtherCodeList
     
O OtherCodeList
 ExceptionalityCategory/ExceptionalityPriority
     
M

Identifies priority of the exceptionality. "Primary" is the first and is required even if only one exceptionality is specified. "Secondary", etc. are of lower priority. Primary, Secondary, and Tertiary must be specified before "Additional" is used.

 
values:
Primary
Identifies relative severity of disability - only one can be primary
Secondary
Identifies relative severity of disability - only one can be secondary
Tertiary
Identifies relative severity of disability - only one can be tertiary
Additional
Multiple disabilities can be identified as "Additional"
Table 6.2.21-1: ExceptionalityCategories
<ExceptionalityCategories> <ExceptionalityCategory> <Code>2121</Code> <ExceptionalityPriority>Primary</ExceptionalityPriority> </ExceptionalityCategory> <ExceptionalityCategory> <Code>2134</Code> <ExceptionalityPriority>Secondary</ExceptionalityPriority> </ExceptionalityCategory> <ExceptionalityCategory> <Code>2127</Code> <ExceptionalityPriority>Tertiary</ExceptionalityPriority> </ExceptionalityCategory> </ExceptionalityCategories>
Example 6.2.21-1: ExceptionalityCategories

6.2.22 ExitDate

The last school calendar day (membership day) the student was enrolled (inclusive). Refer to the object for a precise contextual definition.

ExitDate
Figure 6.2.22-1: ExitDate ExitDate
 Element/@AttributeCharDescriptionType
 ExitDate

The date on which a student exits.

 
xs:date
Table 6.2.22-1: ExitDate
<ExitDate>2005-06-03</ExitDate>
Example 6.2.22-1: ExitDate

6.2.23 FirstName

A person's first name.

FirstName
Figure 6.2.23-1: FirstName FirstName
 Element/@AttributeCharDescriptionType
 FirstName 

A person's first name.

 
xs:normalizedString
Table 6.2.23-1: FirstName
<FirstName>Mark</FirstName>
Example 6.2.23-1: FirstName

6.2.24 Gender

A person's gender.

Gender
Figure 6.2.24-1: Gender Gender
 Element/@AttributeCharDescriptionType
 GenderO

A person's gender.

 
values:
M
Male
F
Female
U
Unknown
Table 6.2.24-1: Gender
<Gender>F</Gender>
Example 6.2.24-1: Gender

6.2.25 GiftedTalented

Is the student in Gifted/Talented programs?

GiftedTalented
Figure 6.2.25-1: GiftedTalented GiftedTalented
 Element/@AttributeCharDescriptionType
 GiftedTalented 

Is the student in Gifted/Talented programs?

 
values:
Yes
No
Unknown
Table 6.2.25-1: GiftedTalented
<GiftedTalented>Yes</GiftedTalented>
Example 6.2.25-1: GiftedTalented

6.2.26 GradeLevel

This is a common element used to specify a grade level. It is used in StudentSchoolEnrollment and assessment-related objects.

GradeLevel
Figure 6.2.26-1: GradeLevel GradeLevel Code OtherCodeList
 Element/@AttributeCharDescriptionType
 GradeLevel

Grade or academic level.

 
 
 CodeM

Code representing the grade level.

 
values:
PK
Pre-Kindergarten/Preschool
KG
Kindergarten
01
02
03
04
05
06
07
08
09
10
11
12
PG
Postgraduate/Adult
UN
Ungraded
Other
Unknown
 OtherCodeListO OtherCodeList
Table 6.2.26-1: GradeLevel
<GradeLevel> <Code>08</Code> </GradeLevel>
Example 6.2.26-1: GradeLevel

6.2.27 GradeLevels

This is a common element used to specify a collection of grade levels supported. It is used in SchoolInfo and assessment-related objects.

GradeLevels
Figure 6.2.27-1: GradeLevels GradeLevels GradeLevel
 Element/@AttributeCharDescriptionType
 GradeLevels 

This is a common element used to specify a collection of grade levels supported. It is used in SchoolInfo and assessment-related objects.

 
List
 GradeLevelMR GradeLevel
Table 6.2.27-1: GradeLevels
<GradeLevels> <GradeLevel> <Code>05</Code> </GradeLevel> <GradeLevel> <Code>06</Code> </GradeLevel> <GradeLevel> <Code>07</Code> </GradeLevel> <GradeLevel> <Code>08</Code> </GradeLevel> </GradeLevels>
Example 6.2.27-1: GradeLevels

6.2.28 GraduationDate

Date student officially graduated from secondary education.

GraduationDate
Figure 6.2.28-1: GraduationDate GraduationDate
 Element/@AttributeCharDescriptionType
 GraduationDate 

Date student officially graduated from secondary education.

 
PartialDateType
Table 6.2.28-1: GraduationDate
<GraduationDate>2005-05-27</GraduationDate>
Example 6.2.28-1: GraduationDate

6.2.29 GraduationRequirement

Does the state require that the course be completed for graduation?

GraduationRequirement
Figure 6.2.29-1: GraduationRequirement GraduationRequirement
 Element/@AttributeCharDescriptionType
 GraduationRequirement 

Does the state require that the course be completed for graduation?

 
values:
Yes
No
Table 6.2.29-1: GraduationRequirement
<GraduationRequirement>Yes</GraduationRequirement>
Example 6.2.29-1: GraduationRequirement

6.2.30 GridLocation

This element contains a map location. The GridLocation element is utilized within other objects and elements, such as BusStopInfo and Address, etc.

GridLocation
Figure 6.2.30-1: GridLocation GridLocation Latitude Longitude
 Element/@AttributeCharDescriptionType
 GridLocation 

This element contains a map location. The GridLocation element is utilized within other objects and elements, such as BusStopInfo and Address, etc.

 
 
 LatitudeM

Latitude in decimal degrees.

Latitudes north of the equator are positive, latitudes south of the equator are negative [ISO 6709].

 
xs:decimal
xs:minInclusive-90
xs:maxInclusive90
 LongitudeM

Longitude in decimal degrees.

Longitudes east of the Prime Meridian in Greenwich are positive, longitudes west of the Prime Meridian are negative. The 180th meridian is negative. [ISO 6709]

 
xs:decimal
xs:minInclusive-180
xs:maxInclusive180
Table 6.2.30-1: GridLocation
<GridLocation> <Latitude>41.850000</Latitude> <Longitude>-87.650000</Longitude> </GridLocation>
Example 6.2.30-1: GridLocation

6.2.31 HispanicLatino

An indication that the individual traces his or her origin or descent to Mexico, Puerto Rico, Cuba, Central or South America, or other Spanish cultures, regardless of race.

HispanicLatino
Figure 6.2.31-1: HispanicLatino HispanicLatino
 Element/@AttributeCharDescriptionType
 HispanicLatino 

An indication that the individual traces his or her origin or descent to Mexico, Puerto Rico, Cuba, Central or South America, or other Spanish cultures, regardless of race.

 
values:
Yes
No
Table 6.2.31-1: HispanicLatino
<HispanicLatino>Yes</HispanicLatino>
Example 6.2.31-1: HispanicLatino

6.2.32 Homeless

Is the student homeless?

Homeless
Figure 6.2.32-1: Homeless Homeless
 Element/@AttributeCharDescriptionType
 Homeless 

Is the student homeless?

 
values:
Yes
No
Unknown
Table 6.2.32-1: Homeless
<Homeless>No</Homeless>
Example 6.2.32-1: Homeless

6.2.33 HomeroomNumber

Common element used to specify the locally-defined number or identifier for a homeroom. It is used in objects such as RoomInfo and StudentSnapshot.

HomeroomNumber
Figure 6.2.33-1: HomeroomNumber HomeroomNumber
 Element/@AttributeCharDescriptionType
 HomeroomNumber

Common element used to specify the locally-defined number or identifier for a homeroom. It is used in objects such as RoomInfo and StudentSnapshot.

 
xs:normalizedString
Table 6.2.33-1: HomeroomNumber
<HomeroomNumber>A-204</HomeroomNumber>
Example 6.2.33-1: HomeroomNumber

6.2.34 IDEA

Is the student IDEA-eligible ("special education")? (Mutually exclusive with Section 504 classification.)

IDEA
Figure 6.2.34-1: IDEA IDEA
 Element/@AttributeCharDescriptionType
 IDEA 

Is the student IDEA-eligible ("special education")? (Mutually exclusive with Section 504 classification.)

 
values:
Yes
No
Unknown
Table 6.2.34-1: IDEA
<IDEA>No</IDEA>
Example 6.2.34-1: IDEA

6.2.35 IdentificationInfo

Other identification information associated with a school or LEA.

IdentificationInfo
Figure 6.2.35-1: IdentificationInfo IdentificationInfo Code
 Element/@AttributeCharDescriptionType
 IdentificationInfo 

Other identification information associated with a school or LEA.

 
xs:normalizedString
@Code 

Code indicating which identification system is used.

 
NCES0147IdentificationSystemType

subset:

0175
0264
0276
0764
9999
Table 6.2.35-1: IdentificationInfo
<IdentificationInfo Code="0175">00123</IdentificationInfo>
Example 6.2.35-1: IdentificationInfo

6.2.36 IdentificationInfoList

IdentificationInfoList
Figure 6.2.36-1: IdentificationInfoList IdentificationInfoList IdentificationInfo
 Element/@AttributeCharDescriptionType
 IdentificationInfoList  List
 IdentificationInfoMR

Other identification information associated with a school or LEA.

 
IdentificationInfo
Table 6.2.36-1: IdentificationInfoList
<IdentificationInfoList> <IdentificationInfo Code="0175">00123</IdentificationInfo> </IdentificationInfoList>
Example 6.2.36-1: IdentificationInfoList

6.2.37 Immigrant

Does the student meet the State criteria for classification as being an immigrant?

Immigrant
Figure 6.2.37-1: Immigrant Immigrant
 Element/@AttributeCharDescriptionType
 Immigrant 

Does the student meet the State criteria for classification as being an immigrant?

 
values:
Yes
No
Unknown
Table 6.2.37-1: Immigrant
<Immigrant>No</Immigrant>
Example 6.2.37-1: Immigrant

6.2.38 InstructionalLevel

An indication of the general nature and difficulty of instruction provided.

InstructionalLevel
Figure 6.2.38-1: InstructionalLevel InstructionalLevel Code OtherCodeList
 Element/@AttributeCharDescriptionType
 InstructionalLevel 

An indication of the general nature and difficulty of instruction provided.

 
 
 CodeM

Code representing the general nature and difficulty of instruction provided.

 
NCES0437InstructionalLevelType
 OtherCodeListO OtherCodeList
Table 6.2.38-1: InstructionalLevel
<InstructionalLevel> <Code>0571</Code> </InstructionalLevel>
Example 6.2.38-1: InstructionalLevel

6.2.39 LastName

A person's last name.

LastName
Figure 6.2.39-1: LastName LastName
 Element/@AttributeCharDescriptionType
 LastName 

A person's last name.

 
xs:normalizedString
Table 6.2.39-1: LastName
<LastName>Wesson</LastName>
Example 6.2.39-1: LastName

6.2.40 LEAName

Name of Local Education Agency.

LEAName
Figure 6.2.40-1: LEAName LEAName
 Element/@AttributeCharDescriptionType
 LEAName 

Name of Local Education Agency.

 
xs:normalizedString
Table 6.2.40-1: LEAName
<LEAName>Happy Meadow School District</LEAName>
Example 6.2.40-1: LEAName

6.2.41 LocalId

This is a common element used to define the locally assigned identifier associated with an entity. It is used in StudentPersonal, StaffPersonal, SchoolInfo, and other objects.

LocalId
Figure 6.2.41-1: LocalId LocalId
 Element/@AttributeCharDescriptionType
 LocalId 

This is a common element used to define the locally assigned identifier associated with an entity. It is used in StudentPersonal, StaffPersonal, SchoolInfo, and other objects.

 
xs:normalizedString
Table 6.2.41-1: LocalId
<LocalId>123321A</LocalId>
Example 6.2.41-1: LocalId

6.2.42 MealStatus

This gives information about a student's meal status.