Sharable Content Object Reference Model (SCORMTM) Version 1.2
Version 2.0
January 4, 2002
This page intentionally left blank.
This page intentionally left blank.
Addendum 1: Incorrect Multiplicity for the Resource Href Attribute in the Content Packaging Information Model 1-5
Addendum 2: Incorrect examples in The SCORM Meta-data XML Binding 1-7
Addendum 3: Typographical Error in Section 2.2.4.4 “The SCORM Meta-data
Addendum 4: Incorrect Error Code indicated in the SCORM Run-Time Environment
Addendum 5: Incorrect Page Numbering in The SCORM Run-Time Environment 1-13
Addendum 6: Incorrect Vocabulary Reference for the cmi.core.entry Data Model
Addendum 7: Incorrect String Length for the Educational.Language Meta-data
Addendum 9: Multiplicity of Elements in SCORM Meta-data Information Model 1-21
Addendum 11: Clarification of the Multiplicity of the <taxon> Element 1-25
Addendum 12: Removal of ADL Note for Element 3.2.4 Item 1-27
Addendum 13: Updates to Element 3.5 Language in the SCORM Meta-data
Addendum 14: Clean up of Errors dealing with Content Packaging 1-31
Addendum 16: Clarification of LMS Initialization Requirements 1-37
Addendum 17: Updates to SCORM Run-Time Environment Data Model 1-39
This page intentionally left blank.
The SCORMTM Addendums
This page intentionally left blank.
The ADL Technical Team is posting these addendums to the SCORM Version 1.2 to correct several errors found in the SCORM Version 1.2.
Addendum | Addendum Title |
1 | Incorrect multiplicity for the Resource Href attribute in Section 2.3.4 “The SCORM Content Packaging Information Model.” |
2 | Incorrect examples in the Section 2.2.3 “The SCORM Meta-data XML Binding.” |
3 | Typo in Section 2.2.4.4 “The SCORM Meta-data Application Profile Requirements.” |
4 | Incorrect Error Code indicated in Section 3.4.4 “The SCORM Run-Time Environment Data Model.” |
5 | Incorrect Page Numbering in The SCORM Run-Time Environment. |
6 | Incorrect Vocabulary Reference for the cmi.core.entry Data Model Element. |
7 | Incorrect String Length for the Educational.Language Meta-data Element. |
8 | LOM Best Practice Vocabulary Source Value. |
9 | Multiplicity of Elements in SCORM Meta-data Information Model. |
10 | Best Practice for DateTypes in Meta-data. |
11 | Clarification of the Multiplicity of the <taxon> Element. |
12 | Clean up of ADL Note for Element 3.2.4 Item. |
13 | Updates to Element 3.5 Language in the SCORM Meta-data Information Model. |
14 | Clean up of Errors dealing with Content Packaging. |
15 | Update to Content Packaging Example |
16 | Clarification of LMS Initialization Requirements |
17 | Updates to SCORM Run-Time Environment Data Model |
This document will be updated to include additional corrections should they become known.
Please submit any additional errors to the ADL Technical Team via the Help & Info Center on ADLNet.
This page intentionally left blank.
This addendum corrects an error found in Section 2.3.4 “The SCORM Content Packaging Information Model” and Section 2.3.5 “The SCORM Content Packaging XML Binding”. The change is to correct a multiplicity error for a Resource Href sub-element found in both sections.
Update Required
The SCORM Content Packaging Information Model Change:
The following table shows the correction to the SCORM Content Packaging Information Model found in Section 2.3.4.
4.1.3 | Href | A reference to the “entry point” of this resource. ADL Note: This value will be used as the launch location when Resources are launched. | 1 and only 1 0 or 1 | String (smallest permitted maximum: 2000 characters) |
Excerpt from the SCORM Content Packaging Information Model
The SCORM Content Packaging XML Binding Change:
The change to the SCORM Content Packaging XML Binding is being put in place to reflect the change to the SCORM Content Packaging Information Model. The change is to the href attribute of the <resource> element. The href attribute should be optional.
The SCORM Version 1.2 Content Packaging XML Binding states that the href attribute is required.
<resource> Element
Description: This element describes a specific content file.
Data Type: This element is a container element and only contains other elements.
Multiplicity: The <resource> element may occur 0 or more times within the
<resources> element.
Attributes:
identifier (required). An identifier, provided by the author or authoring tool, that is unique within the Manifest.
type (required). A string that identifies the type of resource. This specification defines only type “webcontent”.
adlcp:scormtype (required). Defines the type of the SCORM resource. This is an ADL extension to the IMS Content Packaging Information Model. Data Type: Restricted vocabulary of either “sco” or “asset”.
href (required optional). A reference to the “entry point” of this resource. External fully qualified URIs are also permitted.
xml:base (optional). This provides a relative path offset for the content file(s). The usage of this element is defined in the XML Base Working Draft from the W3C. Data type = string.
There is no change needed to the XML Schema Definition (XSD). Neither the IMS Global Learning Consortium, Inc. Content Packaging Specification Version 1.1.2 XML XSD or the Advanced Distributed Learning SCORM Version 1.2 Content Packaging XML XSD require modification.
Rationale for Change
The href attribute is not required when the <resource> is declared for the purpose of packaging a collection of assets and is thus not referred to as a launchable resource. If the <resource> is not launchable then there is no need for the “entry point” to be declared. A <resource> without an href should not be referenced by an <item> in the content structure (<organization>) section of a Manifest.
This allows for the following scenario:
<resource identifier="R_01" type=”webcontent” adlcp:scormtype=”asset”><!-- no href -->
<file href=”img1.jpg”/>
<file href=”img2.jpg”/>
</resource>
<resource identifier=”R_02” type=”webcontent” adlcp:scormtype=”asset” identifier="foo"><!-- no href -->
<dependency identifierref="R_01" />
<file href=”file.htm”/>
<file href=”img4.gif”/>
</resource>
<resource identifier=”R_03” type=”webcontent” adlcp:scormtype=”sco” href="xyz.htm">
<dependency identifierref="R_02" />
</resource>
<resource identifier=”R_04” type=”webcontent” adlcp:scormtype=”asset” href="abc.htm">
<dependency identifierref="R_02" />
</resource>
This addendum corrects an error found in Section 2.3.3 “The SCORM Meta-data XML Binding”. The change is to correct the XML binding. Several of the XML bindings and examples show the use of a <vocabulary> element. The<vocabulary> element does not exist in the IMS Learning Resource Meta-data Specifications. The following elements are affected:
2.2.3.1.1.8 <structure> Element
2.2.3.1.1.9 <aggregationlevel> Element
2.2.3.1.2.2 <status> Element
2.2.3.1.2.3.1 <role> Element
2.2.3.1.3.3.1 <role> Element
2.2.3.1.4.4.1 <type> Element
2.2.3.1.4.4.2 <name> Element
2.2.3.1.5.1 <interactivitytype> Element
2.2.3.1.5.2 <learningresourcetype> Element
2.2.3.1.5.3 <interactivitylevel> Element
2.2.3.1.5.4 <semanticdensity> Element
2.2.3.1.5.5 <intendedenduserrole> Element
2.2.3.1.5.6 <context> Element
2.2.3.1.5.8 <difficulty> Element
2.2.3.1.6.1 <cost> Element
2.2.3.1.6.2 <copyrightandotherrestrictions> Element
2.2.3.1.7.1 <kind> Element
2.2.3.1.9.1 <purpose> Element
All of the above mentioned elements should not contain a <vocabulary> element as defined currently in the SCORM Version 1.2. This change is to replace the
<vocabulary> element with the following two elements: <source> and <value>.
Update Required
2.2.3.1.1.8 <structure> Element
Description: This data element describes the underlying organizational structure of this learning resource. The vocabularies defined for this element are restricted vocabularies.
Multiplicity: The <structure> element occurs 0 or 1 time within the <general> element.
Attributes:
None
Elements:
<vocabulary>
<source>
<value>
LOM Defined Vocabularies (<source> element set to LOMv1.0) Restricted Vocabulary:
Collection
Mixed
Linear
Hierarchical
Networked
Branched
Parceled
Atomic
Example:
The example needs to be updated to remove the <vocabulary> element.
<general>
<structure>
<source>
<langstring xml:lang=”x-none”>LOMv1.0</langstring>
</source>
<value>
<langstring xml:lang=”x-none”>Collection</langstring>
</value>
</structure>
</general>
Revised XML Binding Example
This change needs to be propagated throughout Section 2.2.3 “The SCORM Meta-data XML Binding.” Every element that has a Data Type of VocabularyType is impacted. There are no changes to Section 2.2.2 “The SCORM Meta-data Information Model” or the Meta-data controlling documents (IMS Global Learning Consortium, Inc. Learning Resource Meta-data Specification Version 1.2.1 XML XSD - imsmd_rootv1p2p1.xsd).
Rationale for Change
This change is needed to clarify a misinterpretation of the IMS Learning Resource Meta- data Specifications. There is no element identified as <vocabulary> in the IMS Learning Resource Meta-data XML Binding Specification.
This addendum corrects an error found in Section 2.2.4.4 “The SCORM Meta-data Application Profiles Requirements”. The change is to correct a typographical error that could cause an invalid Meta-data instance.
Update Required
There is a typographic error in Table 2.2.4.4a “SCORM Meta-data Application Profile Requirements” for the element 6.2 copyrightandotherrestrictions entry. The Name of the element is misspelled:
Name | Content Aggregation | SCO | Asset |
6.0 rights | M | M | M |
6.1 cost | M | M | M |
6.2 copyrightsandotherrestrictions 6.2 copyrightandotherrestrictions | M | M | M |
6.3 description | O | O | O |
Excerpt from Table 2.2.4.4a: SCORM Meta-data Application Profile Requirements
The “s” needs to be removed from the end of the word copyrights to make
<copyrightandotherrestrictions>.
Rationale for Change
This was a fix to a typographical error that could cause some confusion. Earlier in the document (Section 2.2.3 “The SCORM Meta-data XML Binding”), the “s” does not appear in the name of the element or any of the examples.
This page intentionally left blank.
This addendum corrects an error found in Section 3.4.4 “The SCORM Run-Time Environment Data Model.” The change is to correct a typographical error that could cause misinterpretation of the Data Model.
Update Required
The error code that should be reported by the Learning Management System for several elements is incorrect. If the data type of the value used to set the data model element is incorrect when the LMSSetValue() API function is invoked, the LMS will set the error code to 405 – Incorrect Data Type. The following data model elements are impacted:
cmi.core.session_time
cmi.interactions.n.id
cmi.interactions.n.objectives.n.id
cmi.interactions.n.time
cmi.interactions.n.type
cmi.interactions.n.correct_responses.n.pattern
cmi.interactions.n.weighting
cmi.interactions.n.student_response
cmi.interactions.n.result
cmi.interactions.n.latency
These elements indicated that the error code should be 205. The 205 error code is incorrect and does not exist. The following is an excerpt from Section 3.4.4. The SCORM Run-Time Environment Data Model and shows the update that needs to be made.
cmi.interactions.n.id | |
Supported API calls: LMSSetValue() LMS Mandatory: No Data Type: CMIIdentifier SCO Accessibility: Write Only | Definition: Unique identifier for an interaction. Usage: Used to set a unique interactions id. SCO specific. Format: Alpha-numeric string. No internal spaces. LMS Behavior: LMSGetValue() on this element, the LMS should set the error code to 404 and return an empty string (""). |
Initialization: Value is controlled by the SCO.
LMSGetValue(): LMS should set an error code according to the following and return an empty string ("").
Error Code:
401 - Not implemented error. If this element is not supported an empty string is returned and an error code is set to indicate that the element is not supported.
404 - Element is write only. If a SCO tries to call
"I_001" "i1" SCO Usage Example: // Set the first interactions id LMSSetValue("cmi.interactions.0.id","I_001"); |
LMSSetValue(): Sets the data model element to the supplied value. Value must match the data type for this element.
Example API call: LMSSetValue(“cmi.interactions.0.id”,"I_001")
Example Set Values:
Error Code:
205 405 – Incorrect Data Type: If an LMSSetValue() is invoked and the value to be used to set the element to is not of the correct Data Type.
401 - Not implemented error. If this element is not supported an error code is set to indicate that the element is not supported.
Excerpt from the SCORM Run-Time Environment Data Model
Rationale for Change
This was a fix to a typographical error that could cause some confusion. The 205 Error Code does not exist in the set of error codes found in Section 3.3.3 API Error Code Usage.
This addendum corrects two page-numbering errors found in The SCORM Run-Time Environment. The change is to correct the page-numbering inconsistencies.
Update Required
There are two page-numbering errors found in the SCORM Run-Time Environment. The first occurs after Section 3.5 “Run-Time Environment Behavior”. The page after this is number 3-1. The correct page number should be 3-61. The second page number error occurs at the beginning of Appendix C. Appendix C starts at page C-5. The page- numbering should be corrected to start at C-1.
Rationale for Change
The change is being made to fix page number inconsistencies, which may cause confusion.
This page intentionally left blank.
This addendum corrects a reference to an invalid vocabulary. In the cmi.core.entry section of Section 3.4.4 “The SCORM Run-Time Environment Data Model”, there is a reference to cmi.core.exit having a value of “resume”. The cmi.core.exit data model element does not have “resume” as a member of its list of valid vocabulary values. This vocabulary reference should be changed to “suspend”. The change is to prevent confusion with incorrect vocabulary references.
Update Required
The required update is to change “resume” to “suspend” in the cmi.core.entry section of the SCORM Run-Time Environment Data Model table. The invalid reference is located in the Additional Behaviors section under the LMS Behavior sub-heading.
cmi.core.entry | |
Supported API calls LMSGetValue() LMS Mandatory: Yes Data Type: CMIVocabulary (Entry) "ab-initio" "resume" "" - empty string SCO Accessibility: Read Only | Definition: Indication of whether the student has been in the SCO before. Usage: When a student enters the SCO for the first time the cmi.core.entry element should be set to ab-initio by the LMS. If the student re-enters a suspended SCO then the entry flag should be set to resume by the LMS. Format: A set vocabulary phrase. Three possible vocabulary values: LMS Behavior: "ab-initio" "resume" |
"ab-initio": This indicates it is the first time the student is entering the SCO. Because the student may have passed all of the objectives in a SCO by completing a pre-test, the lesson_status of not attempted is not a reliable indicator. That is, a SCO may be passed without the student having ever seen it.
"resume": This indicates that the student was in the SCO earlier. The student is resuming a suspended SCO.
"": The empty string should be used to represent an entry into the SCO that is neither an initial (ab-initio) nor a continuation from a suspended state (resume). A scenario that this might be used is if the SCO was already completed and then later it was loaded for review purposes. In this case it was neither an initial launch (ab-initio) nor a continuation from a suspended state (resume).
Initialization: Upon initial launch of the SCO the LMS should initialize the data model value to "ab-inito".
Additional Behavior: Upon receiving an LMSFinish() or the user navigates away, the LMS should set the cmi.core.entry to either “” – (empty) or “resume”. This is determined by the LMS looking at the value that the SCO had set for the cmi.core.exit. If the SCO set the value of cmi.core.exit to “suspend”, then the LMS will set cmi.core.entry to “resume” upon the next launch of the SCO. If the SCO set cmi.core.exit to a value other than “resume” “suspend” or did not set the value at all, the LMS will set cmi.core.entry to “” (empty).
LMSGetValue(): Returns the value stored in the data model. The return must be one of the set vocabularies for the cmi.core.entry data element
Example Return Values:
Error Code:
SCO Usage Example: var entryStatus = LMSGetValue("cmi.core.entry") if (LMSGetLastError() == "0") { if (entryStatus == "resume") { // Student is resuming SCO } else { // This is the first time the student has entered the SCO } } else { // Error condition, handle appropriately } |
401 - Not implemented error. If this element is not supported an empty string is returned and an error code is set to indicate that the element is not supported. NOTE element must be supported by LMS since the element is mandatory.
LMSSetValue(): LMS should set an error code according to the following:
Error Code:
403 - Element is read only. If a request attempts to invoke an LMSSetValue() on this element, then the LMS should set the error code to 204.
401 - Not implemented error. If this element is not supported an error code is set to 401 by the LMS to indicate that the element is not supported. NOTE element must be supported by LMS since the element is mandatory.
Rationale for Change
The cmi.core.exit data model element does not have “resume” as a valid vocabulary member. The change is being made to fix this incorrect value that may have caused some confusion.
This addendum corrects a reference to an invalid string length for the Educational.Language element (Number 5.11) in Section 2.2.2 “The SCORM Meta-data Information Model.” The change is to correct an error that may cause an incorrect representation of a language.
Update Required
The IEEE Learning Technology Standards Committee (LTSC) Learning Object Metadata (LOM) information model indicates that element number 5.11. Educational.Language has a string length of 100 (smallest permitted maximum). This is also reflected in the IMS Learning Resource Meta-data Specification Version 1.2.1. Section 2.2.2 “The SCORM Meta-data Information Model” of the SCORM Content Aggregation Model indicates that the string length has a smallest permitted maximum value is 10. This value should be updated to 100.
5.11 | Language | The human language used by the typical intended user of the resource. “None” is an acceptable value. Must be expressed as per ISO 63923 & ISO 316624 standards. | 0 or More (smallest permitted maximum: 10) | String (smallest permitted maximum: |
Excerpt from the SCORM Meta-data Information Model
Rationale for Change
This value is not consistent with the IEEE LTSC LOM or the IMS Learning Resource Meta-data Specification Version 1.2.1. The change is being made to fix an error that may have caused some confusion.
This page intentionally left blank.
This addendum clarifies, for those elements that have a data type of a VocabularyType and are considered Best Practice, what value should be used in the <source> element. The following elements have a data type of VocabularyType in which the vocabulary items are considered Best Practice:
Lifecycle.Contribute.Role (2.3.1)
Metametadata.Contribute.Role (3.3.1)
Technical.Requirement.Type (4.4.1)
Technical.Requirement.Name (4.4.2)
Educational.Learning Resource Type (5.2)
Educational.Context (5.6)
Relation.Kind (7.1)
Classification.Purpose (9.1)
The SCORM states that for those VocabularyType elements that are Restricted vocabularies that the <source> element should be set to “LOMv1.0”. However for the VocabularyType elements that are Best Practice vocabularies mentioned above, SCORM does not address what the <source> element should be.
Update Required
For those elements mentioned above, the corresponding sections in the SCORM Meta- data XML Binding (Section 2.2.3) needs to be updated. The XML Binding should indicated that if the user elects to use the provided vocabularies then the meta-data record should indicate the <source> to be “LOMv1.0”. If the user elects to use their own vocabularies (ones that are not in the best practice list), then the meta-data record should indicate the <source> to be something other than “LOMv1.0”. It is up to the organization that defined the vocabulary to define the value to be used for the source. This option provides more flexibility to the indexer of learning resources, at the expense of semantic interoperability. User defined values will not be used consistently throughout the larger community.
Rationale for Change
This change is being made to clarify the use of the Best Practice vocabularies identified in the SCORM Meta-data XML Binding.
This page intentionally left blank.
This addendum clarifies several errors found in Section 2.2.2 “The SCORM Meta-data Information Model” and Section 2.2.3 “The SCORM Meta-data XML Binding.” This addendum clarifies the multiplicity for the following Meta-data Elements and corresponding XML Bindings:
General.Catalog Entry.Catalog (1.3.1)
General.Catalog Entry.Entry (1.3.2)
Life Cycle.Contribute.Role (2.3.1)
Meta-Metadata.Catalog Entry.Catalog (3.2.1)
Meta-Metadata.Catalog Entry.Entry (3.2.2)
Meta-Metadata.Contribute.Role (3.3.1)
Relation.Resource.Catalog Entry.Catalog (7.2.3.1)
Relation.Resource.Catalog Entry.Entry (7.2.3.2)
The SCORM Meta-data Information Model and SCORM Meta-data XML Binding indicate that these elements are optional (0 or 1). The elements are optional, however if their respective parent elements are used, then the above-mentioned elements become mandatory.
Update Required
Section 2.2.2 “The SCORM Meta-data Information Model”
The information model will be updated to add an ADL Note for the above-mentioned elements. The ADL Note will be placed under the Explanation column. The ADL Note will state the following: If the Catalog Entry element is used, the Catalog element shall exist 1 and only 1 time. Each information element will be updated with similar words, depending on the element in question.
Section 2.2.3 “The SCORM Meta-data XML Binding”
The XML Binding sections will be updated to add information to the Multiplicity section for the above-mentioned elements. The information being added will state the following: If the <catalogentry> element is used, the <catalog> element shall exist 1 and only 1 time. Each section will be updated with similar words, depending on the element in question.
Rationale for Change
The update is to reflect the IMS Learning Resource Meta-data specification.
This page intentionally left blank.
This addendum adds a best practice for dates and times used within meta-data records. Due to the difficulty of maintaining interoperability with the wide range of format variants set forth in the ISO 8601 standard, the SCORM (and Conformance Test Suite) recommends the following best practice. This best practice is that all "datetime" elements shall be in the form of the "International Standard Date notation" (yyyy-mm-dd) or the "International Standard for the Time of Day" (hh:mm:ss).
Update Required
The update required is to add the following best practice to the Data Type Information Model found in Section 2.2.2 “The SCORM Meta-data Information Model.”
Date Type Information Model | ||||
Nr | Name | Explanation | Multiplicity | Data Type |
1 | Datetime | Date expressed as per ISO8601 standard. Best Practice: All Datetime elements shall be in the form of the "International Standard Date notation" (yyyy-mm-dd) or the "International Standard for the Time of Day" (hh:mm:ss). | single value | String (smallest permitted maximum: 200 characters) |
2 | Description | Description of the date. | single value | LangString (smallest permitted maximum: 1000 characters) |
Excerpt from Section 2.2.2 “The SCORM Meta-data Information Model”
Rationale for Change
The best practice is being added due to the difficulty of maintaining interoperability with the wide range of format variants set forth in the ISO 8601 standard. This information was missing from the SCORM but has been mentioned in the Conformance Requirements and the Conformance Test Suite.
This page intentionally left blank.
This addendum clarifies the multiplicity found in the SCORM Meta-data Information Model and the SCORM Meta-data XML Binding. The current smallest permitted maximum for the <taxon> path element is 15. This value indicates the smallest permitted maximum number of <taxon> elements that a system is required to support. The <taxon> element has been changed in the IMS Learning Resource Meta-data Specification to be recursively nested in a <taxonpath> element. This was addressed in SCORM Version 1.2, however the multiplicity of this recursive nesting has caused some confusion.
Update Required
The smallest permitted maximum of 15 represents the number of recursively nested
<taxon> elements, not the number of <taxon> elements in a <taxonpath>. For example,
Correct Interpretation | Incorrect Interpretation |
<taxonpath> <taxon> <taxon> <taxon> </taxonpath> | <taxonpath> <taxon> <taxon> <taxon> </taxonpath> |
The recursive nesting of <taxon> elements is considered the <taxonpath>. If more than one <taxonpath> is needed, the meta-data record should repeat the <taxonpath> element and the recursive nesting of the necessary <taxon> elements.
Rationale for Change
To help clarify the meaning behind the smallest permitted maximum for the <taxon> element.
This page intentionally left blank.
This addendum is being added to clean up an erroneous note found in the Section 2.3.4 “The SCORM Content Packaging Information Model.” The note deals with identifierrefs for Items that represent content aggregations (blocks, chapters, modules, etc…). The note states that the identifierref should be set to an empty string (“”) for these scenarios. This is incorrect. Several use cases have been brought to our attention for allowing these container <items> to reference resources via the identifierref. The SCORM is being updated to remove this limitation.
Update Required
The update required is to remove the note indicating that the identifierref attributed is required to be an empty string (“”), for those Item elements that represent content aggregations (blocks, modules, lesson, etc…),
3.2.4 | Item | This element describes a node within the organization structure. ADL Note: This element is used to represent <block> and <sco> elements that are defined in the SCORM Version 1.1 CSF. The identifierref attribute is required to be empty (“”) for items that represent <block> elements. A <block> element is just a container for other <block> elements and <sco> elements and does not contain actual content and therefore does not need to reference a resource. The identifierref attribute for items that represent <sco> elements is required to reference a resource that defines a SCO. The parameters attribute of this element replaces the <parameterString> SCORM Version 1.1 CSF element. | 0 or More | Container |
Rationale for Change
Several use cases have been brought to our attention to allow this ability. Nothing in the IMS Content Packaging Specification contradicts this functionality.
This page intentionally left blank.
This addendum clarifies the format of the Language element found in the SCORM Meta- data Information Model.
Update Required
The format for this element should be expressed as per the IS0 639/3166 standards.
3.5 | Language | Language of this meta-data instance. This is the default language for all langstring values in this meta-data instance. This can be a different language than that of the content being described. “None” is an acceptable value. Must be expressed as per ISO 639 & ISO 3166 standards. | 0 or 1 | String (smallest permitted maximum: 100 characters) |
Excerpt from the SCORM Meta-data Information Model
Rationale for Change
This information was missing from the SCORM Meta-data Information Model.
This page intentionally left blank.
This addendum fixes several errors found in Section 2.3.4 “The SCORM Content Packaging Information Model” and Section 2.3.5 “The SCORM Content Packaging XML Binding.”
Update Required
Section 2.3.4 The SCORM Content Packaging Information Model
Update to the Version item. The Multiplicity column for the Version item is incorrect. The correct multiplicity should be 0 or 1.
1.2 | Version | Identifies the version of the Manifest. | 1 and only 1 0 or 1 | String (smallest permitted maximum: 20 characters) |
Update to the Href item. The Multiplicity column for the Href item is incorrect. The correct multiplicity should be 1 and only 1.
4.1.6.1 | Href | A reference to the location of this file. | String (smallest permitted maximum: 2000 characters) |
or 1
and only 1
Update to the Type item. Clarification to state that if the Manifest contains a
<adlcp:prerequisite> element that the type attribute is required and should be set to “aicc_script” (e.g. <adlcp:prerequisite type=”aicc_script”>).
3.2.4.8.1 | Type | Defines the scripting language used to represent the prerequisites. ADL Note: This is an ADL extension to the IMS Content Packaging Information Model. The Type is optional, however if the Prerequisites element is used, the Type is required. Vocabulary List: | 0 or 1 | Vocabulary (Restricted) |
aicc_script
Update to the Max Time Allowed item. The Data Type column needs updated to reflect the length of the Timespan.
3.2.4.9 | Max Time Allowed | This element defines the amount of time a student is allowed to have in the current attempt of the SCO represented by the item. ADL Note: This is an ADL extension to the IMS Content Packaging Information Model. This element is only allowed to exist if the parent item element is representing a SCO and not a Block. This element was a sub- element of the <timeLimit> element defined within the SCORM Version 1.1 CSF. The <timeLimit> container element was removed. | 0 or 1 | Timespan (maximum of 13 characters) |
Update to the Identifier Ref item. The Data Type column needs updated to reflect the appropriate type for the Identifier Ref item. The Data Type should be a String.
4.1.7.1 | Identifier Ref | A reference to the resource. | 1 and only 1 |
|
Section 2.3.5 “The SCORM Content Packaging XML Binding”
The smallest permitted maximum length for the value of the <schemaversion> does not match the smallest permitted maximum found in the SCORM Content Packaging Information Model. The <schemaversion> element, found in the Section 2.3.5.2.2, should be updated to read:
Data Type: String (smallest permitted maximum of 100 20 characters)
The smallest permitted maximum length for the value of the <title> does not match the smallest permitted maximum found in the SCORM Content Packaging Information Model. The <title> element, sub-element of <organization>, found in the Section 2.3.5.3.1.1, should be updated to read:
Data Type: String (smallest permitted maximum of 100 200 characters)
The default attribute of the <organizations> element needs updated. The multiplicity of this attribute does not match the multiplicity defined in the SCORM Content Packaging Information Model. The default attribute found in Section 2.3.5.1.2 should be updated to read:
default (required optional). Identifies the default organization to use. Data type
= IDRef.
The identifierref attribute of the <dependency> element does not report the correct data type. The data type does not reflect the data type found in the IMS Content Packaging Specifications. The identifierref attribute, found in Section
2.3.5.4.4 should be updated to read:
identifierref (required). An identifier for other resources to reference. Data Type – IDRef String
Rationale for Change
Changes needed to clean up inconsistencies between the IMS Content Packaging Specification, SCORM Content Packaging Information Model and SCORM Content Packaging XML Binding.
This page intentionally left blank.
This addendum updates an example found in the SCORM Content Aggregation Model. The example references incorrect XML Schema Definitions.
Update Required
The XML example found in section 2.3.5.1 <manifest> Elements of the Content Aggregation Model needs to be updated to reflect changes addressed in Addendum 15.
FROM:
<manifest identifier=”Manifest" version="1.1" xmlns="http://www.imsproject.org/xsd/imscp_rootv1p1p2" xmlns:adlcp="http://www.adlnet.org/xsd/adl_cp_rootv1p1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=
"http://www.imsproject.org/xsd/imscp_rootv1p1p2 imscp_rootv1p1p2.xsd http://www.imsproject.org/xsd/imsmd_rootv1p2 ims_md_rootv1p1.xsd http://www.adlnet.org/xsd/adl_cp_rootv1p1 adl_cp_rootv1p1.xsd">
<!-- imsmanifest contents -->
</manifest>
TO:
<manifest identifier=”Manifest" version="1.1" xmlns="http://www.imsproject.org/xsd/imscp_rootv1p1p2" xmlns:adlcp="http://www.adlnet.org/xsd/adlcp_rootv1p2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=
"http://www.imsproject.org/xsd/imscp_rootv1p1p2 imscp_rootv1p1p2.xsd http://www.imsglobal.org/xsd/imsmd_rootv1p2p1 imsmd_rootv1p2p1.xsd http://www.adlnet.org/xsd/adlcp_rootv1p2 adlcp_rootv1p2.xsd">
<!-- imsmanifest contents -->
</manifest>
Rationale for Change
This update is being made to correct the XML example found in section 2.3.5.1. The update reflects the latest schemas that should be used in conjunction with SCORM 1.2 development. See Addendum 15 for more information.
This page intentionally left blank.
This addendum clarifies LMS Initialization requirements found in the SCORM Version
1.2. With the addition of the ADL namespace elements into the IMS Manifest (adlcp:masteryscore, adlcp:timelimitaction, adlcp:maxtimeallowed), there are scenarios that are not clearly addressed in the SCORM Version 1.2 for handling initialization of the corresponding SCORM Run-Time Environment Data Model elements.
Update Required
The following clarifications are being made:
adlcp:masteryscore - According to the SCORM Data Model the cmi.student_data.mastery_score should be initialized using the IMS Manifest. If the IMS Manifest does not provide the element, what does the LMS initialize the data model to?
If the LMS does not implement the data model element, cmi.student_data.mastery_score is optional, then it is not a problem. The LMS does not initialize this value and should set the Error Code to "401" Not implemented error, if accessed (Get or Set) from a SCO.
If the LMS does implement the data model element, and no value is provided the LMS shall initialize the cmi.student_data.mastery_score to an empty string (“”).
adlcp:timelimitaction According to the SCORM Data Model the cmi.student_data.time_limit_action should be initialized using the IMS Manifest. If the IMS Manifest does not provide the element, what does the LMS initialize the data model to?
If the LMS does not implement the data model element, cmi.student_data.time_limit_action is optional, then it is not a problem. The LMS does not initialize this value and should set the Error Code to "401" Not implemented error, if accessed (Get or Set) from a SCO.
If the LMS does implement the data model element, and no value is provided the LMS shall initialize the cmi.student_data.time_limit_action to “continue,no message”.
adlcp:maxtimeallowed - According to the SCORM Data Model the cmi.student_data.max_time_allowed should be initialized using the IMS Manifest. If the IMS Manifest does not provide the element, what does the LMS initialize the data model to?
If the LMS does not implement the data model element, cmi.student_data.max_time_allowed is optional, then it is not a problem. The LMS does not initialize this value and should set the Error Code to "401" Not implemented error, if accessed (Get or Set) from a SCO.
If the LMS does implement the data model element, and no value is provided the LMS shall initialize the cmi.student_data.max_time_allowed to an empty string (“”).
Rationale for Change
This clarification is being made to help alleviate existing confusion.
This addendum updates the SCORM Run-Time Environment Data Model found in the SCORM Version 1.2. This addendum coincides with changes discussed in Addendum
17. In order to permit the changes discussed in Addendum 17, changes need to be made to the SCORM Run-Time Environment Data Model.
Update Required
cmi.student_data.mastery_score | |
Supported API calls: LMSGetValue() LMS Mandatory: No Data Type: CMIDecimal or CMIBlank SCO Accessibility: Read Only | Definition: The passing score, as determined outside the SCO. When the SCO score is greater than or equal to the mastery score, the student is considered to have passed, or mastered the content. In some cases, the SCO does not know what this passing score is, because it is determined by the LMS system. Usage: For an LMS system to support mastery_score, it must be able to change the lesson_status based on the score passed to if from the SCO. Just passing a mastery_score to a SCO does not constitute full support for this feature. Format: Decimal number LMS Behavior: <adlcp:masteryscore>, and the LMS implements this element, then the LMS should initialize this element to an empty string (“”). “75” “100” “5” SCO Usage Example: var masteryScoreValue = LMSGetValue(“cmi.student_data.mastery_score”); |
cmi.student_data.max_time_allowed | |
Supported API calls: LMSGetValue() LMS Mandatory: No Data Type: CMITimespan or CMIBlank | Definition: The amount of time the student is allowed to have in the current attempt on the SCO. See time_limit_action for the SCO’s expected response to exceeding the limit. Usage: Used to present the SCO with the maximum amount of time that the student is allowed to be in the SCO. Format: Hours, minutes and seconds separated by a colon. HHHH:MM:SS.SS |
Initialization: LMS is responsible – value obtained from manifest (adlcp:masteryscore) item elements. If manifest does not contain the
LMSGetValue(): Returns the current value stored by the LMS.
Example Return Values:
Error Code:
401 - Not implemented error. If this element is not supported an empty string is returned and an error code is set to indicate that the element is not supported.
LMSSetValue(): LMS should set an error code according to the following:
Error Code:
403 - Element is read only. If the element is supported by the LMS and a request attempts to invoke an LMSSetValue() on this element, then the LMS should set the error code to 403.
401 - Not implemented error. If this element is not supported an error code is set to 401 by the LMS to indicate that the element is not supported.
SCO Accessibility: Read Only | Hours have a minimum of 2 digits and a maximum of 4 digits. Minutes shall consist of exactly 2 digits. Seconds shall contain 2 digits, with an optional decimal point and 1 or 2 additional digits. (i.e. 34.45). LMS Behavior: <adlcp:maxtimeallowed>, and the LMS implements this element, then the LMS should initialize this element to an empty string (“”). “00:14:30” “02:03:00” “01:09:00” SCO Usage Example: var maxTimeAllowedValue = LMSGetValue(“cmi.student_data.max_time_allowed”); |
cmi.student_data.time_limit_action | |
Supported API calls: LMSGetValue() LMS Mandatory: No Data Type: CMIVocabulary (Time Limit Action) “exit,message” “exit,no message” “continue,message” “continue,no message” SCO Accessibility: Read Only | Definition: Tells the SCO what to do when the max_time_allowed is exceeded. There are two arguments for this element: What the SCO should do – exit or continue What the student should see – message or no message Usage: Used to indicate to the SCO what the action should be when the maximum time allowed in the SCO has been exceeded. Format: A set vocabulary phrase. Four possible vocabulary values: LMS Behavior: SCO Usage Example: var timeLimitActionValue = LMSGetValue(“cmi.student_data.time_limit_action”); |
Initialization: LMS is responsible – value obtained from manifest (adlcp:maxtimeallowed) item elements. If manifest does not contain the
LMSGetValue(): Returns the current value stored by the LMS.
Example Return Values:
Error Code:
401 - Not implemented error. If this element is not supported an empty string is returned and an error code is set to indicate that the element is not supported.
LMSSetValue(): LMS should set an error code according to the following:
Error Code:
403 - Element is read only. If the element is supported by the LMS and a request attempts to invoke an LMSSetValue() on this element, then the LMS should set the error code to 403.
401 - Not implemented error. If this element is not supported an error code is set to 401 by the LMS to indicate that the element is not supported.
“exit,message”
“exit,no message”
“continue,message”
“continue,no message”
Initialization: LMS is responsible – value obtained from manifest (adlcp:timelimitaction) item elements. If value is not found in an Manifest, and the value is supported by the LMS, then the LMS shall initialize this value to “continue,no message”.
LMSGetValue(): Returns the current value stored by the LMS.
Example Return Values: "exit,message""continue,no message"
Error Code:
401 - Not implemented error. If this element is not supported an empty string is returned and an error code is set to indicate that the element is not supported.
LMSSetValue(): LMS should set an error code according to the following:
Error Code:
403 - Element is read only. If the element is supported by the LMS and a request attempts to invoke an LMSSetValue() on this element, then the LMS should set the error code to 403.
401 - Not implemented error. If this element is not supported an error code is set to 401 by the LMS to indicate that the element is not supported.
Rationale for Change
This change is being made in conjunction with Addendum 17. The change is being put in place to permit the ability for Learning Management Systems to properly handle the initialization of data model elements if the corresponding entries in a Manifest are not present.
This page intentionally left blank.
Release Date | Description of Change |
11/09/2001 | Added the following addendums:
|
01/04/2002 | Added the following addendums:
|