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 contains address data, some of which is defined by the BS7666 International Address and Geographic Location Specification. Other elements are present for historical reasons.
Address
Figure 6.2.1-1: Address Address Type StartDate EndDate BS7666 PAON Description StartNumber StartNumberSuffix EndNumber EndNumberSuffix SAON Description StartNumber StartNumberSuffix EndNumber EndNumberSuffix Street Locality Town AdministrativeArea PostTown PostCode UniquePropertyReferenceNumber UniqueStreetReferenceNumber Country LocationContext GridLocation LineAddress Line1 Line2 Line3 Line4 Line5
 Element/@AttributeCharDescriptionType
 Address This element contains address data, some of which is defined by the BS7666 International Address and Geographic Location Specification. Other elements are present for historical reasons.  
@TypeMCode that defines the address type. values:
Current
Mailing
Transportation
Previous
Other
 StartDateODate person began using this address. xs:date
 EndDateODate person stopped using this address. xs:date
 BS7666CBritish standard BS7666 format for addresses. This is the preferred format for addresses. Alternatively, LineAddress may also be used (for now).  
 BS7666/PAONMAn element defining the Primary Addressable Object Name (PAON), typically a building number or house name.  
 BS7666/PAON/DescriptionCDwelling name, or at least a general description of the location in lieu of having any other information. This is required when no other PAON information is provided. xs:normalizedString
 BS7666/PAON/StartNumberOStart (single) dwelling number.  
 BS7666/PAON/StartNumberSuffix
     
OStart (single) dwelling number suffix.  
 BS7666/PAON/EndNumberOEnd dwelling number.  
 BS7666/PAON/EndNumberSuffix
     
OEnd dwelling number suffix.  
 BS7666/SAONOThe Secondary Addressable Object Name (SAON), identifying a sub-division of the PAON, typically a flat number, room number or unit in a commerical property.  
 BS7666/SAON/DescriptionCSub-dwelling name, or other descriptive information in lieu of having any other information. This is required when no other SAON data is provided. xs:normalizedString
 BS7666/SAON/StartNumberOStart (single) dwelling number.  
 BS7666/SAON/StartNumberSuffix
     
OStart (single) dwelling number suffix.  
 BS7666/SAON/EndNumberOEnd dwelling number.  
 BS7666/SAON/EndNumberSuffix
     
OEnd dwelling number suffix.  
 BS7666/StreetOThe name of the street. xs:normalizedString
 BS7666/LocalityCThe locality name refers to a neighbourhood, suburb, district, village, estate, settlement, or parish that may form part of a town, or stand in its own right within the context of an administrative area. Where an industrial estate contains streets it is defined as a locality in its own right. At least one of Locality, Town, or AdministrativeArea must be specified. xs:normalizedString
 BS7666/TownCThe city name refers to a city or town that is not an adminstrative area, a suburb of an administrative area that does not form part of another town or a London district. At least one of Locality, Town, or AdministrativeArea must be specified. xs:normalizedString
 BS7666/AdministrativeArea
     
CThe administrative area is a geographic area that may be the highest level local administrative area, and may be a county or a unitary authority, an island or island group, or London. At least one of Locality, Town, or AdministrativeArea must be specified xs:normalizedString
 BS7666/PostTownOPost Office usually assigns these based on Sorting Office. xs:normalizedString
 BS7666/PostCodeOThe code allocated by the Post Office to identify a group of postal delivery points. Valid Postcode formats are: A9 9AA A99 9AA AA9 9AA AA99 9AA A9A 9AA AA9A 9AA Plus BFPO 999 xs:normalizedString
 BS7666/UniquePropertyReferenceNumber
     
OThe unique Property and Land Reference Number (UPRN) for this address. Numeric: 1 to 12 digits. xs:integer
 BS7666/UniqueStreetReferenceNumber
     
OThe unique Property Street Reference Number (USRN) for this address. Numeric: 1 to 8 digits. xs:integer
 CountryOCountry where physical address is located, if known. Usually this is going to be 'GBR' but could be elsewhere if associated with the military, etc. Country
 LocationContextOThe physical location of an address in terms of Census District, LA Electoral Ward, Parliamentary Constituency, and other defining location-centric characteristics. LocationContext
 GridLocationOThe physical property location coordinates. GridLocation
 LineAddressCThe traditional address block of 5 lines. While BS7666 is preferred, this format must be specified when BS7666 is not available.  
 LineAddress/Line1MAddress line 1. xs:normalizedString
 LineAddress/Line2MAddress line 2. xs:normalizedString
 LineAddress/Line3OAddress line 3. xs:normalizedString
 LineAddress/Line4OAddress line 4. xs:normalizedString
 LineAddress/Line5OAddress line 5. xs:normalizedString
Table 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_ActionOIn 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

6.2.3 ContactList

A list of contact persons associated with a school or LA.
ContactList
Figure 6.2.3-1: ContactList ContactList Contact SIF_RefId SIF_RefObject PositionTitle Role PublishInDirectory
 Element/@AttributeCharDescriptionType
 ContactList A list of contact persons associated with a school or LA.  
 ContactMRInformation for a single contact.  
@SIF_RefIdMThe ID (GUID) of the person listed as a contact. Note that this is any person listed as a contact through either a ContactPersonal, WorkforcePersonal, or even a LearnerPersonal record. IdRefType
@SIF_RefObjectMThe object type being referred to.  values:
WorkforcePersonal
ContactPersonal
LearnerPersonal
 Contact/PositionTitleOThe contact person's position title within the school or LA. xs:normalizedString
 Contact/RoleORole played by this contact in the school or LA. Any descriptive text is allowed here. xs:normalizedString
 Contact/PublishInDirectory
     
OIndicates whether or not this contact's information should be published in a directory of school or LA information. values:
Yes
No
Table 6.2.3-1: ContactList

6.2.4 Country

The 3-character alphabetic country code defined by ISO 3166-1. Given this code all other code and name information can be obtained directly from the standard.
Country
Figure 6.2.4-1: Country Country
 Element/@AttributeCharDescriptionType
 Country The 3-character alphabetic country code defined by ISO 3166-1. Given this code all other code and name information can be obtained directly from the standard. SIFUKNationStatesAndCountriesType
Table 6.2.4-1: Country

6.2.5 Demographics

Demographic information about a learner, contact, workforce member, etc. This element occurs within objects such as LearnerPersonal, LearnerContact, etc.
Demographics
Figure 6.2.5-1: Demographics Demographics EthnicityList Gender BirthDate BirthDateVerification PlaceOfBirth CountyOfBirth CountryOfBirth CountriesOfCitizenship CountryOfCitizenship CountriesOfResidency CountryOfResidency CountryArrivalDate EnglishProficiency EALSteps EALAcquisition LanguageList Language Code Fluent TypeList Type Source Study StudyOther MaritalStatus NonUKSystemImmigrant Refugee Religion AffiliationCode EducationStatus CollectiveWorshipStatus Source Traveller Code Source
 Element/@AttributeCharDescriptionType
 Demographics Demographic information about a learner, contact, workforce member, etc. This element occurs within objects such as LearnerPersonal, LearnerContact, etc.  
 EthnicityListOA list of the person's ethnicities by proportion. EthnicityList
 GenderOPerson's gender. values:
M
Male
F
Female
 BirthDateMThe person's date of birth. xs:date
 BirthDateVerificationOMeans by which the person's birth date was validated. SIFUKBirthdateVerificationLevelType
 PlaceOfBirthOThe person's place of birth--like village, town, city etc. xs:normalizedString
 CountyOfBirthOThe county in which the person was born. xs:normalizedString
 CountryOfBirthOThe individual's country of birth. Country
 CountriesOfCitizenshipOA list of the countries in which this person has legal nationality.  
 CountriesOfCitizenship/CountryOfCitizenship
     
MRThe country of legal nationality (i.e. the country which issued the individual's passport). Country
 CountriesOfResidencyOA list of countries in which this person has residency status.  
 CountriesOfResidency/CountryOfResidency
     
MRA person's country of residence. Country
 CountryArrivalDateODate the person first arrived in the UK. xs:date
 EnglishProficiencyOAssessment of a learner's progress in English as an Additional Language.  
 EnglishProficiency/EALSteps
     
OBased on QCA Steps. (England) values:
S1
Step 1
S2
Step 2
1T
Level 1 Threshold
1S
Level 1 Secure
 EnglishProficiency/EALAcquisition
     
OBased on a differing scale from QCA Steps. (Wales) values:
A
New to English
B
Early Acquisition
C
Developing Competence
D
Compentent
E
Fluent
0
Not applicable
 LanguageListOA list of languages spoken by the person The person must be at least somewhat familiar with the language to have it listed here. List
 LanguageList/LanguageMR  
 LanguageList/Language/Code
     
MThis is the code that specifies the person's language. SIFUKLanguagesType
 LanguageList/Language/Fluent
     
OIndicates that the person is fluent in this language. values:
Yes
No
 LanguageList/Language/TypeList
     
MA list of the person's language types. List
 LanguageList/Language/TypeList/
     Type
MRA typification of the language. i.e. how is this language used? ??? Serco: not in CTF and will not be supported. values:
C
Correspondence Language
F
First Language
M
Multiple First Language
H
Home
T
Tuition
S
Second Language
 LanguageList/Language/Source
     
OSource of data on use of the specified language. SIFUKSourceCodeType
 LanguageList/Language/Study
     
OThe level in which the learner is taught this language at school. SIFUKLanguageStudyType
 LanguageList/Language/StudyOther
     
OIndicates whether the learner studies subjects in this language at school separate from studying the language itself. values:
Yes
No
 MaritalStatusOThe person's marital status. SIFUKMaritalStatusType
 NonUKSystemImmigrantOIndicates the learner has recently arrived from a non-English or other common UK language system. (Wales) values:
Yes
No
 RefugeeOIndates the person's refugee/asylum seeker status as defined by the United Nations (Aritcle 1 of the 1951 Refugee Convention). values:
Yes
No
 ReligionODefinition of a person's religious faith.  
 Religion/AffiliationCodeMPerson's religious faith. SIFUKReligiousAffiliationType
 Religion/EducationStatusOIndicates whether the person is actively attending religious education classes. values:
A
Attends
W
Withdrawn
 Religion/CollectiveWorshipStatus
     
OIndicates whether the person is participating in religious collective worship. values:
A
Attends
W
Withdrawn
 Religion/SourceOSource of person's religious affiliation code. SIFUKSourceCodeType
 TravellerOIdentifying information for traveller/gypsy status.  
 Traveller/CodeMCode to identify type of traveller/gypsy. SIFUKTravellerGypsyCodeType
 Traveller/SourceMSource of individual's recorded traveller/gypsy code. SIFUKSourceCodeType
Table 6.2.5-1: Demographics

6.2.6 Email

This element represents an e-mail address of one of a number of types.
Email
Figure 6.2.6-1: Email Email Type
 Element/@AttributeCharDescriptionType
 Email This element represents an e-mail address of one of a number of types. xs:normalizedString
@TypeMThis attribute specifies the type of e-mail address. values:
Business
Personal
School
Alternate1
Alternate2
Alternate3
Alternate4
Table 6.2.6-1: Email

6.2.7 EmailList

A list of e-mail addresses associated with an individual.
EmailList
Figure 6.2.7-1: EmailList EmailList Email
 Element/@AttributeCharDescriptionType
 EmailList A list of e-mail addresses associated with an individual. ActionList (Email/@Type)
 EmailMR  
@SIF_ActionOIn 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.7-1: EmailList

6.2.8 EstablishmentId

The DfES assigned identifier for a school or other educational establishment. The list of all known Establishment ID's is extensive and available online.
EstablishmentId
Figure 6.2.8-1: EstablishmentId EstablishmentId
 Element/@AttributeCharDescriptionType
 EstablishmentId The DfES assigned identifier for a school or other educational establishment. The list of all known Establishment ID's is extensive and available online. SIFUKEstablishmentIDsType
Table 6.2.8-1: EstablishmentId

6.2.9 EthnicityList

EthnicityList
Figure 6.2.9-1: EthnicityList EthnicityList Ethnicity Code Source
 Element/@AttributeCharDescriptionType
 EthnicityList   
 EthnicityMR  
 Ethnicity/CodeMThe general ethnic category which reflects the individual's recognition of his or her community or with which the individual most identifies.  
 Ethnicity/SourceMSource of inidividual's recorded ethnic code. SIFUKSourceCodeType
Table 6.2.9-1: EthnicityList

6.2.10 GridLocation

This element contains a map location. The GridLocation element is utilised within other objects and elements.
GridLocation
Figure 6.2.10-1: GridLocation GridLocation PropertyEasting PropertyNorthing Latitude Longitude
 Element/@AttributeCharDescriptionType
 GridLocation This element contains a map location. The GridLocation element is utilised within other objects and elements.  
 PropertyEastingMEasting coordinate for mapping an address. xs:decimal
 PropertyNorthingMNorthing coordinate for mapping an address. Required when PropertyEasting is also specified. xs:decimal
 LatitudeOGeographical coordinate. xs:decimal
 LongitudeCGeographical coordinate. Required when Latitude is also specified. xs:decimal
Table 6.2.10-1: GridLocation

6.2.11 LAId

The 3-digit number assigned to the LA by the DfES.
LAId
Figure 6.2.11-1: LAId LAId
 Element/@AttributeCharDescriptionType
 LAId The 3-digit number assigned to the LA by the DfES. SIFUKLAListType
Table 6.2.11-1: LAId

6.2.12 LAName

The official name of the LA.
LAName
Figure 6.2.12-1: LAName LAName
 Element/@AttributeCharDescriptionType
 LAName The official name of the LA. SIFUKLAListType
Table 6.2.12-1: LAName

6.2.13 LocationContext

The physical location of an address in terms of Census District, LA Electoral Ward, Parliamentary Constituency, and other defining location-centric characteristics.
LocationContext
Figure 6.2.13-1: LocationContext LocationContext CensusDistrict WardCode WardName ConstituencyCode ConstituencyName Parish ChurchOfEnglandDiocese ChurchOfEnglandParish RomanCatholicDiocese RomanCatholicParish LSCouncilCode CatchmentArea
 Element/@AttributeCharDescriptionType
 LocationContext The physical location of an address in terms of Census District, LA Electoral Ward, Parliamentary Constituency, and other defining location-centric characteristics.  
 CensusDistrictONational Population Census Enumeration District. xs:normalizedString
 WardCodeMONS Ward Code SIFUKONSWardCodeType
 WardNameMONS Ward Name SIFUKONSWardNameType
 ConstituencyCodeOONS Parliamentary Constituency Code SIFUKONSParliamentaryConstituencyCodeType
 ConstituencyNameOONS Parliamentary Constituency Name SIFUKONSParlisamentaryConstituencyNameType
 ParishOONS Parish Council Name SIFUKONSParishCouncilNameType
 ChurchOfEnglandDioceseOChurch of England Diocese SIFUKChurchOfEnglandDioceseType
 ChurchOfEnglandParishOChurch of England Parish xs:normalizedString
 RomanCatholicDioceseORoman Catholic Diocese SIFUKRomanCatholicDioceseType
 RomanCatholicParishORoman Catholic Parish xs:normalizedString
 LSCouncilCodeOLearning and Skills Council area code SIFUKLearningAndSkillsCouncilAreaCodeType
 CatchmentAreaOSchool catchment area description xs:normalizedString
Table 6.2.13-1: LocationContext

6.2.14 Name

The Name element defines name information for a person and occurs within the PersonalInformation element.
Name
Figure 6.2.14-1: Name Name Type Title FamilyName GivenName MiddleNames FamilyNameFirst PreferredFamilyName PreferredFamilyNameFirst PreferredGivenName Suffix FullName
 Element/@AttributeCharDescriptionType
 Name The Name element defines name information for a person and occurs within the PersonalInformation element.  
 TypeMCode that specifies what type of name this is. values:
B
Birth name
C
Current Legal name
A
Alias / Alternative
R
Name of Record
F
Former Name
M
Married Name
P
Professional Name
 TitleOA title or prefix associated with the name. If any of: Mr, Mrs, Ms, Miss, Rev, Fr, Dr, Prof, Hon, Sir, Lord, Lady - these must be as shown, otherwise free text. Note that title is not applicable to learners. xs:normalizedString
 FamilyNameCFull legal family name. That part of the person's name which is used to describe family, clan, tribal group, or marital association. Note that this element is always required. However, when associated with a contact it may not be possible to know the family name in which case you should add the available information to the FullName element. xs:normalizedString
 GivenNameCFull given name (forename) of the person. Note that this element is always required. However, when associated with a contact it may not be possible to know the given name in which case you should add the available information to the FullName element. xs:normalizedString
 MiddleNamesOAll other given or middle names, each separated with a single space character. xs:normalizedString
 FamilyNameFirstOAn indicator used to identify the naming conventions used by some predominantly non-European, ethnic or language groups and related to the display nature of a name. values:
Yes
No
 PreferredFamilyNameOThe family name preferred most by the person (as written). xs:normalizedString
 PreferredFamilyNameFirstOAn indicator used to identify the naming conventions used by some predominantly non-European, ethnic or language groups and related to the display nature of a name. values:
Yes
No
 PreferredGivenNameOThe given name preferred most by the person (as written). xs:normalizedString
 SuffixOTextual suffix like PHD, JP, BSc. xs:normalizedString
 FullNameCA free text field for the complete name for display purposes. If this is associated with a ContactPersonal record and the FamilyName and GivenName are not both specified, then this becomes mandatory. xs:normalizedString
Table 6.2.14-1: Name

6.2.15 NCYearGroup

Code representing a National Curriculum Year Group.
NCYearGroup
Figure 6.2.15-1: NCYearGroup NCYearGroup
 Element/@AttributeCharDescriptionType
 NCYearGroup Code representing a National Curriculum Year Group. SIFUKNCYearGroupsType
Table 6.2.15-1: NCYearGroup

6.2.16 NCYearGroupList

This is a common element used to specify a collection of supported National Curriculum Year Groups. It is used in SchoolInfo and assessment-related objects.
NCYearGroupList
Figure 6.2.16-1: NCYearGroupList NCYearGroupList NCYearGroup
 Element/@AttributeCharDescriptionType
 NCYearGroupList This is a common element used to specify a collection of supported National Curriculum Year Groups. It is used in SchoolInfo and assessment-related objects. List
 NCYearGroupMRCode representing a National Curriculum year group. NCYearGroup
Table 6.2.16-1: NCYearGroupList

6.2.17 PersonalInformation

This element contains basic personal and demographic information related to a person. This element is part of all &quot;personal&quot; objects, including LearnerPersonal, WorkforcePersonal, and ContactPersonal.
PersonalInformation
Figure 6.2.17-1: PersonalInformation PersonalInformation Name OtherNames Name Demographics Email OtherEmailList Address OtherAddressList PhoneNumber OtherPhoneNumberList ElectronicIdList OtherIdList OtherId Type
 Element/@AttributeCharDescriptionType
 PersonalInformation This element contains basic personal and demographic information related to a person. This element is part of all &quot;personal&quot; objects, including LearnerPersonal, WorkforcePersonal, and ContactPersonal.  
 NameMName information for this person. Name
 OtherNamesOA list of other names associated with this person. List
 OtherNames/NameMRAnother name associated with this person. Name
 DemographicsOThis element contains demographic data. Demographics
 EmailOThe person's preferred e-mail address. Email
 OtherEmailListOThe person's other e-mail address(es). EmailList
 AddressOThe person's current physical address. Address
 OtherAddressListOThe person's other address(es). AddressList
 PhoneNumberOThe person's preferred phone number. PhoneNumber
 OtherPhoneNumberListOThe person's other phone number(s). PhoneNumberList
 ElectronicIdListOElectronic identifier(s) associated with this person. ElectronicIdList
 OtherIdListOA list of all &quot;other&quot; IDs associated with this person. List
 OtherIdList/OtherIdMRAn &quot;other&quot; identifier associated with this person. xs:normalizedString
@TypeMText that describes the type of this other ID. xs:normalizedString
Table 6.2.17-1: PersonalInformation

6.2.18 PhoneNumber

This element represents a phone number and occurs within objects such as LearnerPersonal, WorkforcePersonal, etc.
PhoneNumber
Figure 6.2.18-1: PhoneNumber PhoneNumber Type Number Extension ListedStatus
 Element/@AttributeCharDescriptionType
 PhoneNumber This element represents a phone number and occurs within objects such as LearnerPersonal, WorkforcePersonal, etc.  
@TypeMCode that specifies the phone number type. SIFUKPhoneTypeType
 NumberMPhone number. Validation: 0-9 and a leading '+' (for international calls). xs:normalizedString
 ExtensionOPhone number extension. xs:normalizedString
 ListedStatusOIndicates whether or not the phone number is available to the public. values:
Listed
Unlisted
Unknown
Table 6.2.18-1: PhoneNumber

6.2.19 PhoneNumberList

Lists phone numbers associated with an entity.
PhoneNumberList
Figure 6.2.19-1: PhoneNumberList PhoneNumberList PhoneNumber SIF_Action
 Element/@AttributeCharDescriptionType
 PhoneNumberList Lists phone numbers associated with an entity. ActionList (PhoneNumber/@Type)
 PhoneNumberMR PhoneNumber
@SIF_ActionOIn 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: PhoneNumberList

6.2.20 SchoolURN

The alternate DfES assigned identifier for a school or other educational establishment.
SchoolURN
Figure 6.2.20-1: SchoolURN SchoolURN
 Element/@AttributeCharDescriptionType
 SchoolURN The alternate DfES assigned identifier for a school or other educational establishment. SIFUKEstablishmentIdType
Table 6.2.20-1: SchoolURN

6.2.21 SIF_ExtendedElements

This element is supported at the end of all SIF objects. The element is used to extend existing SIF objects with locally-defined elements. Extended elements SHOULD NOT be used to duplicate data that can be obtained from other SIF objects.

SIF_ExtendedElements
Figure 6.2.21-1: SIF_ExtendedElements SIF_ExtendedElements SIF_ExtendedElement Name xsi:type SIF_Action
 Element/@AttributeCharDescriptionType
 SIF_ExtendedElements 

Allows an agent to include data not yet defined within a SIF data object as name/value pairs.

 
ActionList (SIF_ExtendedElement/@Name)
 SIF_ExtendedElementOR

A name/value pair, the name being contained in the Name attribute, the value being the element content.

 
ExtendedContentType
@NameM

The name of the extended element. As it is possible that names for extended elements may collide from agent to agent, it is recommended that the names of extended elements be configurable in an agent, or that agents use URIs for the names of extended elements.

 
xs:normalizedString
@xsi:typeO

Allows type of element to be explicitly communicated.

 
 
@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.21-1: SIF_ExtendedElements
Example 6.2.21-1: SIF_ExtendedElements

6.2.22 SubjectAreaList

A list of subject areas.
SubjectAreaList
Figure 6.2.22-1: SubjectAreaList SubjectAreaList SubjectArea
 Element/@AttributeCharDescriptionType
 SubjectAreaList A list of subject areas. List
 SubjectAreaMRSubject matter. SIFUKGeneralSubjectType
Table 6.2.22-1: SubjectAreaList

Valid XHTML 1.0 Transitional