## 6.4 Data Model Task Force

Click here for non-normative background/supplementary documentation from this group.

### 6.4.1 SIF_Metadata

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.

Figure 6.4.1-1: SIF_Metadata

| 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
| RightsElements | O |  | List
| RightsElements/RightsElement | OR |  | RightsElement

Table 6.4.1-1: SIF_Metadata
<SIF_Metadata> <TimeElements> <TimeElement> <Type>Full school year</Type> <Code>01</Code> <Name>2004/2005 School Year</Name> <Value>2004-2005</Value> <StartDateTime>2004-09-01T08:00:00-05:00</StartDateTime> <EndDateTime>2005-06-30T15:00:00-05:00</EndDateTime> <SpanGaps> <SpanGap> <Type>Holiday</Type> <Code>02</Code> <Name>2005 Winter Break</Name> <Value>2005 Winter Break</Value> <StartDateTime>2005-02-21T15:00:00-05:00</StartDateTime> <EndDateTime>2005-02-25T08:00:00-05:00</EndDateTime> </SpanGap> </SpanGaps> <IsCurrent>true</IsCurrent> </TimeElement> </TimeElements> </SIF_Metadata>
Example 6.4.1-1: SIF_Metadata

### 6.4.2 TimeElement

A common metadata element designed to contain time data, both self-defined and by type.

Figure 6.4.2-1: TimeElement

| 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 Full school year Mini-term Long session Other Semester Trimester Quarter Spring Vacation Summer Term Intercession Holiday | 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 2007SY 2006.FallConferences | xs:token
| Name | M | Contains a human-readable description of the value in `Value`. Examples Class of '07 Fall 2007 Parent-Teacher Conferences | xs:normalizedString
| Value | M | Contains the human-readable value. Examples 2007 Evening of 10/12/06 | 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

Table 6.4.2-1: TimeElement
<TimeElement> <Type>Full school year</Type> <Code>01</Code> <Name>2004/2005 School Year</Name> <Value>2004-2005</Value> <StartDateTime>2004-09-01T08:00:00-05:00</StartDateTime> <EndDateTime>2005-06-30T15:00:00-05:00</EndDateTime> <SpanGaps> <SpanGap> <Type>Holiday</Type> <Code>02</Code> <Name>2005 Winter Break</Name> <Value>2005 Winter Break</Value> <StartDateTime>2005-02-21T15:00:00-05:00</StartDateTime> <EndDateTime>2005-02-25T08:00:00-05:00</EndDateTime> </SpanGap> </SpanGaps> <IsCurrent>true</IsCurrent> </TimeElement>
Example 6.4.2-1: TimeElement

### 6.4.3 LifeCycle

This common metadata element describes the life cycle of the object it represents, based on the IEEE LOM LifeCycle element [LOM].

Figure 6.4.3-1: LifeCycle

| 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

Table 6.4.3-1: LifeCycle
<LifeCycle> <Created> <DateTime>2006-08-13T09:00:00-05:00</DateTime> <Creators> <Creator> <Name>Alphonse Berdonosi</Name> <ID>http://www.edugeeks.com/aberdonosi</ID> </Creator> </Creators> </Created> <ModificationHistory> <Modified> <By>http://www.edugeeks.com/aberdonosi</By> <DateTime>2006-08-17T09:30:00-05:00</DateTime> </Modified> </ModificationHistory> </LifeCycle>
Example 6.4.3-1: LifeCycle

### 6.4.4 RightsElement

A common metadata element designed to carry any intellectual property or copyright information, based on the IEEE LOM Rights element [LOM].

Figure 6.4.4-1: RightsElement

| Element/@Attribute | Char | Description | Type
--- | --- | --- | --- | ---
| RightsElement |  | A common metadata element designed to carry any intellectual property or copyright information, based on the IEEE LOM Rights element [LOM]. |
| Cost | O |  | xs:boolean
| FeesForUse | O | A container for fees for use of the content in the object. | List
| FeesForUse/FeeForUse | OR | Description of one fee structure applying to the use of this resource. |
| FeesForUse/FeeForUse/UseType | M | A description of the fee structure for this resource. Some resources may be licensed differently depending upon their context. For example, a content provider might charge one fee structure for resources used in the classroom and a separate fee for those resources available to parents from home. | xs:string
| FeesForUse/FeeForUse/MeteringType | M |  | xs:token
| FeesForUse/FeeForUse/MeteringURL | O |  | xs:anyURI
| FeesForUse/FeeForUse/PerUseCharge | O |  | MonetaryAmountType
| CopyrightStatement | O |  | xs:string
| TermsOfUse | O |  | xs:string

Table 6.4.4-1: RightsElement
<RightsElement> <Cost>true</Cost> <FeesForUse> <FeeForUse> <UseType>UseType</UseType> <MeteringType>MeteringType</MeteringType> <MeteringURL>http://www.xmlspy.com</MeteringURL> <PerUseCharge Currency="USD">1.00</PerUseCharge> </FeeForUse> </FeesForUse> <CopyrightStatement>CopyrightStatement</CopyrightStatement> <TermsOfUse>TermsOfUse</TermsOfUse> </RightsElement>
Example 6.4.4-1: RightsElement