Sharebar?

IMS MD and CP Schema Updates

IMS Logo IMS Schema Updates
Copyright © 2001 IMS Global Learning Consortium, Inc. All Rights Reserved.
The IMS Logo is a trademark of IMS Global Learning Consortium, Inc.
Document Name: IMS Schema Updates
Revision: 27 November 2001

 


Introduction

Implementers of the IMS Learning Resource Meta-data and Content Packaging specifications have been encountering problems with the XML Schemas associated with these specifications. The two major areas of difficulty have been:

  1. Some commercial XML Tools and Parsers encounter errors when attempting to edit the XML Schemas and/or use them to validate instances of XML documents.
  2. With each minor release of the IMS specifications, the XML namespaces associated with the schemas were changed; forcing implementers to modify programs referencing the namespaces (particularly programs utilizing XPath expressions). A namespace change is not necessary if a specification's information model or binding semantics do not change.

Investigation of the problems revealed that some minor changes to the XML would enable the schemas to be used with the following four identified XML tools:

  • Xerces version 1.4.3
  • XML Spy, version 4.01
  • Microsoft XML Parser, version 4.0
  • Turbo XML, version 2.2

Furthermore, changes to the policy of IMS namespace creation and modification would enable the published schemas and implementations using the schemas to be more stable. These changes are documented below.

Namespace and Version Changes

Meta-data

  • The XML namespace for the IMS Learning Resource Meta-data specification, version 1.2 and all minor versions (e.g., v1.2.1, v1.2.2, etc.) is: http://www.imsglobal.org/xsd/imsmd_v1p2
  • The version incorporating this round of schema and namespace changes to version 1.2.2
  • The XML Schema file is called imsmd_v1p2p2.xsd. This file can be downloaded and used locally, or referenced at: http://www.imsglobal.org/xsd/imsmd_v1p2p2.xsd

Content Packaging

  • The XML namespace for the IMS Content Packaging specification, version 1.1 and all minor versions (e.g., v1.1.1, v1.1.2, etc.) is: http://www.imsglobal.org/xsd/imscp_v1p1
  • The version incorporating this round of schema and namespace changes to version 1.1.3
  • The XML Schema file is called imscp_v1p1p3.xsd. This file can be downloaded and used locally, or referenced at: http://www.imsglobal.org/xsd/imscp_v1p1p3.xsd

Schema Changes

Meta-data Schema (imsmd_v1p2p2.xsd)

  • Modified namespace declaration for the W3C 'XML' namespace from: xmlns:xml=http://www.w3.org/XML/1998/namespace to xmlns:x=http://www.w3.org/XML/1998/namespace
  • Changed ##any references to ##other. This change does not change the semantics of the schema, and enables the schema to be processed by deterministic parsers (e.g. Turbo XML and MSXML)
  • Changed schema namespace to http://www.imsglobal.org/xsd/imsmd_v1p2
  • Changed filename to imsmd_v1p2p2.xsd

Content Packaging XML Schema (imscp_v1p1p3.xsd)

  • Modified namespace declaration for the W3C 'XML' namespace from: xmlns:xml=http://www.w3.org/XML/1998/namespace to xmlns:x=http://www.w3.org/XML/1998/namespace.
  • Changed schema namespace to http://www.imsglobal.org/xsd/imsmd_v1p2
  • Changed filename to imsmd_v1p2p2.xsd

Content Packaging DTD (imscp_v1p1p3.dtd)

Testing revealed some errors with the existing CP DTD. The following changes were made:

  • Changed datatype of "isvisible" attribute from boolean to string. This was necessary since DTDs do not appear to support use of 'true' and 'false' as values for boolean datatypes.
  • Added the attribute structure to the <organization> element

Specification Sample Changes

Changes to the namespace, version numbers, and schema files require changes in the specification samples to reflect these changes.

Meta-data Samples

  • Meta-data samples were updated to reflect new namespace for Meta-data and new name for Meta-data schema file.

Content Packaging Samples

  • Content Packaging samples were updated to reflect new namespaces for Meta-data and Content Packaging and new names for the Meta-data and Content Packaging schema files.
  • The sample manifests were updated to use a local reference to the relevant XML schemas. This change is consistent with the Meta-data samples and enables validation to occur when there is not a live connection to the Internet.
  • Testing revealed that the CP samples were incorrectly using version 1.1 Meta-data. The samples were updated to use version 1.2 Meta-data
  • Testing revealed that the Sub-Manifest sample had a number of additional errors that were corrected:
    1. Invalid and incorrect values for some of the href attributes on <resource> and <file> were corrected
    2. Use of the xml:base attribute was removed from this sample, since this attribute is not support uniformly across XML tools.
    3. An invalid reference to a non-existent style sheet was removed

Specification Document Changes

This section contains recommended changes for the specification documents. These changes have not been made.

Meta-data Specification

  • msmd_infov1p2p1.pdf
    • No changes except file name, header info, and About info
  • imsmd_bindv1p2p1.pdf
    • Change file name, header info, and About info
    • Incorporate summary of schema and namespace changes described above
    • URL in Introduction - pg 5
    • Update .xsd name - pg 6
    • Remove reference to Microsoft XDR's - pg 6
    • Update code snippets that reference namespace and schema's to new values - pg 6, 8
    • Update reference to namespaces in A.4.1 - pg 59
    • Update document, and schema names in Appendix B - pg 77
  • imsmd_bestv1p2p1.pdf
    • Change file name, header info, and About info
    • url - pg 5
    • Update document, and schema names in Appendix A - pg 23

Content Packaging Specification

  • imscp_infov1p1p2.pdf
    • Change file name, header info, and About info
    • Update doc version numbers - pg 3
  • imscp_bindv1p1p2.pdf
    • Change file name, header info, and About info
    • Incorporate summary of schema and namespace changes described above
    • Update reference to DTD (or remove?) - pg 6
  • imscp_bestv1p1p2.pdf
    • Change file name, header info, and About info
    • Update code snippets that reference namespace and schema's to new values - pg 15, 17, 25
    • Update text in B2 - to indicate that testing was done with above 4 XMl tools and fact that samples reference local schemas. Inform readers that to perform validation, they should copy the schemas to the sample folder. (consistent with Meta-data)

Summary of Testing

Test Environment

The \Testing folder contains the test environment, with relevant schema or DTD files copied to each sample directory.

  • \Tests\XMLSchemaTests: Contains Meta-data and content packaging samples, with relevant XML schema files copied to each sample directory.
  • \Tests\ XMLSchemaTests\Errors: Contains Content Packaging manifests. imsmanifest_cperror contains an intentional error in the content packaging element. imsmanifest_mderror contains an intentional met-data error.
  • \Tests\DTDTests: Contains one representative meta-data and one representative content packaging sample, with the relevant DTD's schema files copied to each sample directory.
  • \Tests\validate_msxml4.htm: A simple browser-based tool that enables validation testing with the Microsoft XML Parser, version 4.
  • \Tests\validate_xerces.htm: A batch file to exercise the Xerces parser. (Has hard-coded paths).

Tests Performed

Each of the four identified XML tools was used to perform the following tests

  • Parse and validate each sample in \Tests\XMLSchemaTests, \Tests\DTDTests, and \Tests\Errors.
  • The Content Packaging samples were further tested with the Microsoft LRN Validator, which in addition to schema validation, checks for the presence of locally referenced resources. This test identified numerous issues with the Sub_Manifest sample.

Test Results

  • All four XML tools correctly identified errors in the samples with intentional errors. (While this may seem obvious, there are cases where if a tool cannot locate a schema, it skips validation, while returning a success message).
  • All four XML tools successfully parsed and validated all Meta-data samples.
  • All four XML tools successfully parsed and validated all Content Packaging samples, except for the following samples:
    • Extensions sample: This sample references the QTI schema which has similar problems. See note 1 below.
    • Test_Cases\extending_resources sample: This sample references the ADL SCORM 1.2 schema (adlcp_rootv1p2.xsd) which has similar problems. See note 3 below.

Notes

  1. The current Question and Test XML Schema (ims_qt_rootv1p1.xsd) has the same limitations encountered with the Meta-data and Content Packaging. These issues should be addressed in the upcoming release of QTI.
  2. The changes to the Content Packaging schema should not adversely affect the work in Simple Sequencing. However, the Simple Sequencing specification should build off the updated Meta-data and Content Packaging schemas.
  3. The current SCORM Content Aggregation Schema (adlcp_rootv1p2.xsd) has the same limitations encountered with the Meta-data and Content Packaging. These issues should be followed up on with the ADL. (Note: the adlcp_rootv1p2.xsd file in the \Tests folder was easily modified to work, and could be used to demonstrate the low risk of these changes to ADL).