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.
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.
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 SIF Association 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.
As stated elsewhere, SIF primarily uses GUIDs as object identifiers, primary keys, or RefId
s. References to primary keys (foreign key references)
follow certain conventions in SIF in most objects:
IdRefType
can be defined that consists of the referenced object name
concatenated with RefId
, e.g., DataPersonalRefId
(a reference to the object identifier/primary key/RefId
of a DataPersonal
object);
IdRefType
, has an element name of a group's choosing (or generically SIF_RefId
) and enumerates all possible object types that can be referenced
in the SIF_RefObject
attribute; or
IdRefType
containing the referenced object's RefId
, the other enumerating
all possible object types that can be referenced; generically these are named SIF_RefId
and SIF_RefObject
, respectively;
naming conventions that programmatically allow identification of the pair beyond the generic names will be documented when the need arises.
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.:
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 in the Type column. ActionList key values must be unique within an instance of an 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.
A system that supports an Alternate2
e-mail makes no changes to its value for that address type.
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.
A system that supports CountriesOfCitizenship
updates its local data to reflect Australia and German citizenship.
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.
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.
This element contains address data
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
Address | M | This element contains address data. | ||
@ | Type | M | 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. | AUCodeSetsAddressTypeType |
@ | Role | M | A facet of Address | AUCodeSetsAddressRoleType |
Street | M | The street element is a complex element and breaks the street down into several parts. (Allow for PO Box here) | ||
Street/Line1 | M | Address line 1. | xs:normalizedString | |
Street/Line2 | O | Address line 2. | xs:normalizedString | |
Street/Line3 | O | Address line 3. | xs:normalizedString | |
Street/Complex | O | Name of the complex. | xs:normalizedString | |
Street/StreetNumber | O | The address number assigned to the building. | xs:normalizedString | |
Street/StreetPrefix | O | Street prefix like NE | xs:normalizedString | |
Street/StreetName | O | The name of the street. | xs:normalizedString | |
Street/StreetType | O | The type of street. For example, Lane, Blvd., Ave., etc. | xs:normalizedString | |
Street/StreetSuffix | O | Street suffix like SW. | xs:normalizedString | |
Street/ApartmentType | O | Type of apartment, for example, Suite. | xs:normalizedString | |
Street/ApartmentNumberPrefix | O | Apartment number prefix. | xs:normalizedString | |
Street/ApartmentNumber | O | The number of the apartment. | xs:normalizedString | |
Street/ApartmentNumberSuffix | O | Apartment number suffix. | xs:normalizedString | |
City | M | The city part of the address. | xs:normalizedString | |
StateProvince | C | The state or province code. StateTerritory Code only applicable if an Australian Address. Conditional- If Australian Address this is mandatory. | StateProvince | |
Country | O | The country code. | Country | |
PostalCode | M | The ZIP/postal code. | xs:normalizedString | |
GridLocation | O | The location of the address. | GridLocation | |
MapReference | O | A Map Reference in x-y co-ordinates. | ||
@ | Type | M | Type map reference | xs:normalizedString |
MapReference/XCoordinate | M | X Co-ordinate of reference | xs:normalizedString | |
MapReference/YCoordinate | M | Y Co-ordinate of reference | xs:normalizedString | |
RadioContact | O | UHF Radio frequency or channel used for contact eg: 477MHz or CH60 | xs:string |
A list of Address elements.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
AddressList | A list of Address elements. | ActionList (Address/@Type, Address/@Role) | ||
Address | MR | Address | ||
@ | SIF_Action | O |
In a | values:
|
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
AttendanceCode | Code that describes the absence/attendance. | |||
Code | M | Code representing the absence/attendance. | AUCodeSetsAttendanceCodeType | |
OtherCodeList | O | OtherCodeList |
A person's date of birth.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
BirthDate | A person's date of birth. | xs:date |
Common element used to supply information for a contact person at a school, LEA, or other institution.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
ContactInfo | Common element used to supply information for a contact person at a school, LEA, or other institution. | |||
Name | M | Name | ||
PositionTitle | O | The contact person's position title. Examples | xs:normalizedString | |
Role | O | Role played by this contact in this instance. Examples | xs:normalizedString | |
Address | O | Address of the contact. | Address | |
EmailList | O | List of Email elements. | EmailList | |
PhoneNumberList | O | List of PhoneNumber elements. | PhoneNumberList |
A country code.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
Country | A country code. | union of: AUCodeSetsStandardAustralianClassificationOfCountriesSACCType |
Demographics information about the student, contact, staff member, etc.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
Demographics | Demographics information about the student, contact, staff member, etc. | |||
IndigenousStatus | O | Whether or not the student identifies themselves as being of Aboriginal and/or Torres Strait Islander descent. | AUCodeSetsIndigenousStatusType | |
Sex | O | 'Sex' is the distinction 'male' and 'female', as reported by the person | AUCodeSetsSexCodeType | |
BirthDate | O | The person's date of birth. | BirthDate | |
BirthDateVerification | O | Means by which the person's birth date was validated. | AUCodeSetsBirthdateVerificationType | |
PlaceOfBirth | O | The person's place of birth—like village, town, city etc. | xs:normalizedString | |
StateOfBirth | O | The person's state of birth. | StateProvince | |
CountryOfBirth | O | The person's country of birth. | Country | |
CountriesOfCitizenship | O | List | ||
CountriesOfCitizenship/CountryOfCitizenship | MR | A person's country of citizenship. | Country | |
CountriesOfResidency | O | List | ||
CountriesOfResidency/CountryOfResidency | MR | A person's country of residence. | Country | |
CountryArrivalDate | O | Date the person first arrived in the country. | xs:date | |
AustralianCitizenshipStatus | O | The person's citizenship status. | AUCodeSetsAustralianCitizenshipStatusType | |
EnglishProficiency | O | Person's proficiency in English. | EnglishProficiency | |
LanguageList | O | List of languages an individual uses to communicate. | LanguageList | |
DwellingArrangement | O | Setting/environment in which the person resides. | ||
DwellingArrangement/Code | M | Code representing the setting/environment in which the person resides | AUCodeSetsDwellingArrangementType | |
Religion | O | Type of Religion if any | ||
Religion/Code | M | Religion Code | AUCodeSetsAustralianStandardClassificationOfReligiousGroupsASCRGType | |
Religion/OtherCodeList | O | OtherCodeList | ||
ReligiousEventList | O | List of Religious events | List | |
ReligiousEventList/ReligiousEvent | OR | |||
ReligiousEventList/ReligiousEvent/ Type | M | Religious Event - Currently Free Text | xs:normalizedString | |
ReligiousEventList/ReligiousEvent/ Date | M | Date of Religious Event | xs:date | |
ReligiousRegion | O | Belong to Religious Region - Currently Free Text. | xs:normalizedString | |
PermanentResident | O | Australian Residency Status (Mandatory for Student) | AUCodeSetsPermanentResidentStatusType | |
VisaSubClass | O | Visa Sub-Class - Can be free text - not necessary to validate | AUCodeSetsVisaSubClassType | |
VisaStatisticalCode | O | Visa Statistical Code - Can be free text - not necessary to validate | AUCodeSetsVisaStatisticalCodeType | |
VisaExpiryDate | O | Expiry Date of Visa if one exists | xs:date | |
ImmunisationCertificateStatus | O | Status of Immunisation Certificate | AUCodeSetsImmunisationCertificateStatusType | |
CulturalBackground | O | Used to indicate cultural background. | AUCodeSetsAustralianStandardClassificationOfCulturalAndEthnicGroupsASCCEGType |
A code representing the highest level of education completed by a person.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
EducationalLevel | A code representing the highest level of education completed by a person. | AUCodeSetsSchoolEducationLevelTypeType |
Common element used to specify entity identifiers that are read by electronic equipment.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
ElectronicId | Common element used to specify entity identifiers that are read by electronic equipment. | xs:normalizedString | ||
@ | Type | M | Electronic ID type. | AUCodeSetsElectronicIdTypeType |
A list of electronic identifiers associated with an entity.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
ElectronicIdList | A list of electronic identifiers associated with an entity. | List | ||
ElectronicId | MR | ElectronicId |
This element represents an e-mail address of one of a number of types and occurs in objects such as StudentPersonal, StaffPersonal, StudentContactPersonal, etc.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
This element represents an e-mail address of one of a number of types and occurs in objects such as StudentPersonal, StaffPersonal, StudentContactPersonal, etc. | xs:normalizedString | |||
@ | Type | M | This attribute specifies the type of e-mail address. | AUCodeSetsEmailTypeType |
A list of e-mail addresses associated with an individual or organization.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
EmailList | A list of e-mail addresses associated with an individual or organization. | ActionList (Email/@Type) | ||
MR | ||||
@ | SIF_Action | O |
In a | values:
|
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
EnglishProficiency | O | |||
Code | M | Person's proficiency in English. | AUCodeSetsEnglishProficiencyType | |
OtherCodeList | O | OtherCodeList |
Date student officially graduated from secondary education.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
GraduationDate | Date student officially graduated from secondary education. | PartialDateType |
This element contains a map location. The GridLocation element is utilized within the Address element.
Element/@Attribute | Char | Description | Type | |||||
---|---|---|---|---|---|---|---|---|
GridLocation | This element contains a map location. The GridLocation element is utilized within the Address element. | |||||||
Latitude | M | Latitude in decimal degrees. Latitudes north of the equator are positive, latitudes south of the equator are negative [ISO 6709]. | xs:decimal
| |||||
Longitude | M | 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
|
Common element used to specify the locally-defined number or identifier for a homeroom. It is used in objects such as RoomInfo and StudentSnapshot.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
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 |
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
LanguageList | O | List | ||
Language | MR | |||
Language/Code | M | The code representing the specific language that an individual uses to communicate. | AUCodeSetsAustralianStandardClassificationOfLanguagesASCLType | |
Language/OtherCodeList | O | OtherCodeList | ||
Language/LanguageType | O | An indication of the function and context in which an individual uses a language to communicate. | AUCodeSetsLanguageTypeType |
This common metadata element describes the life cycle of the object it represents, based on the IEEE LOM LifeCycle element [LOM].
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
LifeCycle | This common metadata element describes the life cycle of the object it represents, based on the IEEE LOM LifeCycle element [LOM]. | |||
Created | O |
When the object was created by whom. This is a more persistent creation date than
the date/time in the object's SIF_Header .
Depending on the use case being implemented, this value could contain the date the data in the object first entered the zone or was actually created.
| ||
Created/DateTime | M | xs:dateTime | ||
Created/Creators | O | List | ||
Created/Creators/Creator | MR | |||
Created/Creators/Creator/ Name | M | Human-readable name of the data's creator. If the object contains system-generated data, the name should identify the creating service or application. | xs:normalizedString | |
Created/Creators/Creator/ ID | M | Unique identifier of the creator. An email address or URI could be used here. | xs:normalizedString | |
ModificationHistory | O |
An ordered set of Modified elements describing which system modified the data, when
the modification took place, and a brief description of the modification.
| List | |
ModificationHistory/Modified | OR | A single modification event. | ||
ModificationHistory/Modified/ By | M | Identifier of the system or person that modified the data. | xs:normalizedString | |
ModificationHistory/Modified/ DateTime | M | The date/time the modification occurred. | xs:dateTime | |
ModificationHistory/Modified/ Description | O | Human readable description of the data modifications. | xs:string | |
TimeElements | O | List | ||
TimeElements/TimeElement | OR | TimeElement |
This is a common element used to define the locally assigned identifier associated with an entity.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
LocalId | This is a common element used to define the locally assigned identifier associated with an entity. | xs:normalizedString |
This common element initially supports core data elements describing specific physical locations.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
Location | ||||
@ | Type | O | values:
| |
LocationName | O | Name of the location. | xs:token | |
LocationRefId | O |
RefId of the location object if the location is a SIF Object such as SchoolInfo .
| IdRefType | |
@ | SIF_RefObject | M |
Type of SIF Object Location points to.
| values:
|
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
Name | The Name element, which could belong to a student, staff member, contact, etc. This element or a form with a subset of Type values occurs within objects such as StudentPersonal, StudentContactPersonal, StaffPersonal, etc. | BaseNameType | ||
@ | Type | M |
Code that specifies what type of name this is. If unsure, use | AUCodeSetsNameUsageTypeType |
First projected graduation year, usually determined when student is accepted into 9th grade (CCYY).
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
OnTimeGraduationYear | First projected graduation year, usually determined when student is accepted into 9th grade (CCYY). | xs:gYear |
This common element contains status information an institution.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
OperationalStatus | Operational condition of an institution. | union of: AUCodeSetsOperationalStatusType |
List of other codes or strings that crosswalk to or serve as translations of the Code
element paired with this common element. If Code
changes
and OtherCode
s are supported, both Code
and all associated OtherCode
elements must be present.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
OtherCodeList |
List of other codes or strings that crosswalk to or serve as translations of the | List | ||
OtherCode | MR |
A state/province code, local code, other code or a text string that crosswalks to or serves as a translation of an associated | xs:token | |
@ | Codeset | M |
Describes the | values:
|
Previous, alternate or other names or aliases associated with a person.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
OtherNames | O | Previous, alternate or other names or aliases associated with a person. | ActionList (Name/@Type) | |
Name | MR |
Name of the person. Note: Type value of | OtherNameType | |
@ | SIF_Action | O |
In a | values:
|
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
PersonInfo | ||||
Name | M | The name of the person. Note: Type attribute value of LGL must be used here. | NameOfRecordType | |
OtherNames | O | Previous, alternate or other names or aliases associated with the person. | OtherNames | |
Demographics | O | Demographic information about the person. | Demographics | |
AddressList | O | The person’s address(es). | AddressList | |
PhoneNumberList | O | The person’s phone number(s). | PhoneNumberList | |
EmailList | O | The person’s e-mail address(es). | EmailList |
This element represents a phone number and occurs within objects such as StudentPersonal, StaffPersonal, etc.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
PhoneNumber | This element represents a phone number and occurs within objects such as StudentPersonal, StaffPersonal, etc. | |||
@ | Type | M | Code that specifies what type of phone number this is. Note: A subset of valid values may be specified in data objects. | AUCodeSetsTelephoneNumberTypeType |
Number | M | Phone number. Free-form, but typical Australian formats include:
| xs:normalizedString | |
Extension | O | Phone number extension. | xs:normalizedString | |
ListedStatus | O | Indicates whether or not the phone number is available to the public. | AUCodeSetsYesOrNoCategoryType |
Lists phone numbers associated with an entity.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
PhoneNumberList | Lists phone numbers associated with an entity. | ActionList (PhoneNumber/@Type) | ||
PhoneNumber | MR | PhoneNumber | ||
@ | SIF_Action | O |
In a | values:
|
Information about the campus or school principal.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
PrincipalInfo | O | Information about the campus or school principal. | ||
ContactName | M | The name of the principal. | NameOfRecordType | |
ContactTitle | O | The principal's title. | xs:normalizedString | |
PhoneNumberList | O | The principal’s phone number(s). | PhoneNumberList | |
EmailList | O | The principal’s e-mail address(es). | EmailList |
Currently projected graduation year.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
ProjectedGraduationYear | Currently projected graduation year (CCYY). | xs:gYear |
This is a common element used to specify whether or not information (e.g., contact information) should be published in a directory.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
PublishInDirectory | Indicates whether or not information should be published in a directory. | AUCodeSetsYesOrNoCategoryType |
Code that defines the relationship of one person to another.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
Relationship | Code that defines the relationship of one person to another. | |||
Code | M | Code representing the relationship. | AUCodeSetsRelationshipToStudentType | |
OtherCodeList | O | OtherCodeList |
A list of contact persons associated with a school.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
SchoolContactList | A list of contact persons associated with a school. | List | ||
SchoolContact | MR | Information on contact persons for this school. | ||
SchoolContact/PublishInDirectory | O | Indicates whether or not this school contact's information should be published in a directory of school information. | PublishInDirectory | |
SchoolContact/ContactInfo | M | ContactInfo |
URL for a school.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
SchoolURL | URL for a school. | xs:anyURI |
Common element used to designate the academic school year to which an object relates.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
SchoolYear | School year for which the information is applicable, expressed as the four-digit year in which the school year ends (e.g., "2009"). | xs:gYear |
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.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
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_ExtendedElement | OR | A name/value pair, the name being contained in the Name attribute, the value being the element content. | ExtendedContentType | |
@ | Name | M | 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:type | O | Allows type of element to be explicitly communicated. | |
@ | SIF_Action | O |
In a | values:
|
Metadata is commonly referred to as data about data and includes information such as author, grade level, or keywords relating to a learning object, as examples.
Metadata can be used to structure and contain any of this kind of information in a consistent manner.
In the context of SIF, SIF_Metadata
provides a consistent structure to appropriate SIF objects for the purpose of cataloging and object discovery,
as well as other metadata functions and purposes. One recurring use case within the SIF data model is the requirement for some form of temporal constraints and tagging
on objects (see TimeElement
). Other metadata elements are based on needs brought to the Data Model Task Force.
IMPORTANT NOTE ON PERSISTENCE
This data is not designed to be permanent. It is designed to frame an object instance and could dissolve as soon as it leaves the SIF framework for the application space. A data warehouse could be used to store metadata for later tracking.
IMPORTANT NOTE ON USAGE
Any usage of metadata is optional unless made a requirement within individual SIF objects, or if a SIF or local profile or zone installation mandates it. SIF_Metadata allows for the usage of metadata in agents and applications that choose to support it.
This element is designed to operate much like SIF_ExtendedElements. It is an approved common element that is part of any data object.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
SIF_Metadata | A commonly defined container for metadata elements defined within SIF. | |||
TimeElements | O | List | ||
TimeElements/TimeElement | OR | TimeElement | ||
LifeCycle | O | LifeCycle |
A state or province code. Note: When dealing with countries other than Australia, state/province codes/values other than those referenced here can be used.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
StateProvince | A state or province code. Note: When dealing with countries other than Australia, state/province codes/values other than those referenced here can be used. | union of: AUCodeSetsStateTerritoryCodeType xs:token |
This is a common element used to define the state or province assigned identifier associated with an entity.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
StateProvinceId | The identifier for this entity as assigned by the state or province. | xs:normalizedString |
Subject matter.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
SubjectArea | Subject matter. | |||
Code | M | The subject area details | xs:normalizedString | |
OtherCodeList | O | OtherCodeList |
A list of subject areas.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
SubjectAreaList | A list of subject areas. | List | ||
SubjectArea | MR | Subject matter. | SubjectArea |
A common metadata element designed to contain time data, both self-defined and by type.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
TimeElement | A common metadata element designed to contain time data, both self-defined and by type. | |||
Type | M | This element is designed to contain the time period attached to an object. Very long periods (school year, quarter, etc.) and very small periods (second, millisecond, etc.) can be defined. This element provides a scoping description of the time metadata enclosed. Because the educational environment varies so greatly we are including here a suggested but not prescriptive list of values. Although there may be unique needs for values not covered here—and we may have missed a major one—a best practice would be to utilize the examples here to enhance interoperability. Examples | xs:normalizedString | |
Code | M |
This element provides a place for the application to send structured data (code values, unique identifier, timestamps).
This code value can, depending upon the use case agreement between agents, be used to qualify the data in the Value element.
Examples | xs:token | |
Name | M |
Contains a human-readable description of the value in Value .
Examples | xs:normalizedString | |
Value | M | Contains the human-readable value. Examples | xs:normalizedString | |
StartDateTime | O | xs:dateTime | ||
EndDateTime | O | xs:dateTime | ||
SpanGaps | O | A container element for holding multiple possible span gaps. | List | |
SpanGaps/SpanGap | OR |
This structure duplicates much of the structure of TimeElement and is designed to represent a gap in the parent time period
defined by StartDateTime and EndDateTime above.
| ||
SpanGaps/SpanGap/Type | M | xs:normalizedString | ||
SpanGaps/SpanGap/Code | M | xs:token | ||
SpanGaps/SpanGap/Name | M | xs:normalizedString | ||
SpanGaps/SpanGap/Value | M | xs:normalizedString | ||
SpanGaps/SpanGap/StartDateTime | O | xs:dateTime | ||
SpanGaps/SpanGap/EndDateTime | O | xs:dateTime | ||
IsCurrent | M |
This element allows for the system to tag an object as being explicitly current.
Although the baseline assumption in SIF is that objects are always current (default value is typically true ),
there are use cases when that is not the case.
| xs:boolean |
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
YearLevel | Year or academic level. | |||
Code | M | Code representing the year level. | AUCodeSetsYearLevelCodeType |
List of year levels.
Element/@Attribute | Char | Description | Type | |
---|---|---|---|---|
YearLevels | List of year levels. | List | ||
YearLevel | MR | YearLevel |