Guidelines for Using the IMS LRM to IEEE LOM 1.0 Transform
Copyright © 2006 IMS Global Learning Consortium, Inc. All Rights Reserved.
The IMS Logo is a registered trademark of IMS/GLC
Document Name: Guidelines for Using the IMS LRM to IEEE LOM 1.0 Transform
Revision: 31 August 2006
|Date Issued:||31 August 2006|
IPR and Distribution Notices
Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the specification set forth in this document, and to provide supporting documentation.
IMS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on IMS's procedures with respect to rights in IMS specifications can be found at the IMS Intellectual Property Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf.
Copyright © 2006 IMS Global Learning Consortium. All Rights Reserved.
Permission is granted to all parties to use excerpts from this document as needed in producing requests for proposals.
Use of this specification to develop products or services is governed by the license with IMS found on the IMS website: http://www.imsglobal.org/license.html.
The limited permissions granted above are perpetual and will not be revoked by IMS or its successors or assigns.
THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTER'S OWN RISK, AND NEITHER THE CONSORTIUM, NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.
1.2 About XSL Transforms
1.3 Structure of this Document
2. Using the Transforms
2.1 Comments and Redistribution
2.1.1 Identifiers and Catalog Entries
2.2 Meta-data Schema Values
2.3 Requirements and orComposite Elements
2.4 Error Handling in the Transforms
2.5 Vocabulary Handling in the Transforms
About This Document
List of Contributors
This package contains three XSL Transforms for transforming implementations of the IMS Learning Resource Meta-data (LRM) v1.2.1, v1.2.2 and v1.2.4 (henceforth "IMSMD") to IEEE Learning Object Meta-data (LOM) 1.0 (henceforth "LOM"), as well as numerous support files designed to help ensure the transformation suits the needs of any particular user. This guide also illustrates the operation of the transform.
This guide does not address best practices for transforming large numbers of documents, for deciding how and when to transition from IMSMD to LOM, or for archiving old IMSMD instances. It only addresses the transform itself and how users may modify the transform to ensure that it addresses their needs. The files contained with this document are:
- LRMv1p2p1-LOMv1p0-v1p0.xsl - the actual XSL Transform from IMSMD v1.2.1;
- LRMv1p2p2-LOMv1p0-v1p0.xsl - the actual XSL Transform from IMSMD v1.2.2;
- LRMv1p2p4-LOMv1p0-v1p0.xsl - the actual XSL Transform from IMSMD v1.2.4;
- MDv1p2p1/IMS-samples/* - the original samples that shipped with IMS Meta-data v1.2.1;
- MDv1p2p1/LOM-samples/* - the results of applying the transform to the IMS Samples. Result files have the same name as the source files;
- MDv1p2p2/IMS-samples/* - the original samples that shipped with IMS Meta-data v1.2.2;
- MDv1p2p2/LOM-samples/* - the results of applying the transform to the IMS Samples. Result files have the same name as the source files;
- MDv1p2p4/IMS-samples/* - the original samples that shipped with IMS Meta-data v1.2.4;
- MDv1p2p4/LOM-samples/* - the results of applying the transform to the IMS Samples. Result files have the same name as the source files.
XSL Transform (sometimes referred to as simply XSL) is an XML-based language for transforming XML instances. In order to use any XSL instance, you will need an XSL engine. The three most popular XML editors (Oxygen, Turbo XML, and XML Spy) include an XSL engine; other products are also available.
This guide assumes that you have an XSL engine, that it is properly installed, and that you are comfortable using it. This document also assumes that you are familiar with XML syntax. If you intend to modify the transform, this document assumes that you are comfortable editing an XML file, either in an XML editor or in a text editor.
|2. Using the Transforms||Explains how to the use the transforms as supplied and how to modify them for a specific application.|
As provided, the transforms attempt to handle the transformation in a way that is generic, yet reasonably comprehensive. It is entirely possible that any given user may have needs that are different from the generic needs. In such cases, users are free to modify the transform to suit their own needs. The instructions that follow are a guide to modifying the transform.
IMS maintains a forum at http://www.imsglobal.org/developers/ims/imsforum/categories.cfm?catid=3. Users are invited to post questions, comments, and modified transforms to that forum. Users are free to redistribute their modified transform under the following conditions:
- The original, unmodified transform shall be included in any redistribution of any modified transform;
- All support files (this file, the ReadMe file, the Schemas, and all samples) shall be included in any redistribution of any modified transform;
- The filename of the modified transform shall be changed. This name change should reflect the modifications.
- Additional samples that reflect how the modified transform differs in operation from the original transform should be included in any redistribution. If the modified transform handles the original IMS samples differently, simply including the output of the modified transform on those instances is probably sufficient; if not, the package should include an original source IMSMD file or files, the result of applying the original unmodified transform to that file(s), and the result of applying the modified transform to that file(s);
- Additional ReadMe or Guidelines documentation, as appropriate, should be included in any redistribution of any modified transform.
The new LOM information model takes the two elements previously used to identify resources (identifier and catalogentry) and turns them into a single element (identifier, with catalog and entry children). This makes the appropriate transform logic a question for some debate. The logic used in this transform is:
- If there is an identifier element in the source, create a catalogentry element in the target, where the entry is the value of the identifier element from the source and the catalog is blank. Any catalogentry elements in the source are copied into comments in the target;
- If there is no identifier element, copy catalogentry elements unchanged from the source meta-data to the target.
There is a comment in the transform with the text "##CatalogEntry" that indicates where this logic exists in the transform. The transform does not contain any logic for handling these values any other way; however, users are free to revise the logic as they see fit.
The value of the metaDataSchema element in files produced by the transform is fixed at "IEEE LOM 1.0". If you would rather simply copy the meta-data schema from the source files, find the global variable "metaDataSchemaHandling" (indicated in the transform with the text "##MetaDataSchema" in a comment), and change the value from "fixed" to "copy".
- In IMSMD, multiple requirement elements are connected with AND. Each requirement element directly contains the requirement in question.
- In LOM, multiple requirement elements are still connected with AND. However, each requirement element now contains multiple orComposite elements that are connected with OR. Each orComposite element directly contains the requirement in question.
In practice, users using IMSMD have often abused the semantics of duplicate requirement elements. Strictly speaking, it makes no sense to have multiple requirement elements of the same type (requiring Windows XP and Mac OS X, for example). In practice, however, this has been used to indicate an OR relationship in IMSMD.
The transform contains two versions of the 'requirement' template: one that makes no assumptions about the semantics of repeated requirements, and one that assumes that the semantics of repeated requirements are as described above. In the transform as it ships, the version that makes the assumptions is active (marked with the text "##Requirement" in a comment), and the other is commented out. If you desire the version that does not make any assumptions, and merely copies individual requirements, switch the commenting. Detailed instructions are in the comment.
The transform attempts to handle some errors in the source meta-data. One error handled by the transform is if there is a requirement type with a declared source of 'LOMv1p0' that does not in fact exist in LOM. (The MERLOT examples distributed with IMSMD demonstrate this error.) The transform changes the source to 'unknown'; if you would like a different value, change the value of the "unknownSource" global variable (marked with the text "##UnknownSource" in a comment).
Another error handled in the transform (although incompletely) is date/time data that does not conform to the LOM datatype. Currently, when a date is incorrectly represented as an eight-digit number (for example, "20030916"), it will be translated into the LOM hyphen-separated format (for example, "2003-09-16"). This is the only format that the transform will translate. The location in the transform where this translation occurs is marked with the "##DateTimeConversion" in a comment; users are free to add or remove translation mechanisms.
The transform converts vocabulary terms from the old binding's vocabulary to the new binding's vocabulary. Note that the bulk of the conversion is used to handle the change in vocabulary for element 5.6 Context from the IMS Information Model to the LOM information model. Users may want to check to see that the choice of token translation agrees with their use; the tokens that are translated are indicated in the table below. Users may also want to add tokens to be translated; instructions are in the XSL, at the location marked with "##VocabularyTokenReplacement".
|Title||Guidelines for Using the IMS LRM to IEEE LOM 1.0 Transform|
|Editor|| Colin Smythe (IMS, UK)
Brendon Towle (Thomson NETg, USA)
|Version Date||31 August 2006|
|Summary||This document provides guidelines for transforming implementations of the IMS Learning Resource Meta-data v1.2.1, v1.2.2 and v1.2.4 to IEEE Learning Object Meta-data v1.0.|
|Revision Information||August 2006|
|Purpose||This document has been approved by the IMS Technical Board and is made available for pubic review and comment.|
|Send comments or questions about this specification to IMSspeccomments@imsglobal.org or visit: http://www.imsglobal.org/developers/ims/imsforum/categories.cfm?catid=3|
|Brendon Towle||Thomson NETg (USA)|
|Colin Smythe||IMS/GLC (UK)|
|Version No.||Release Date||Comments|
|Final 1.0||31 August 2006||For public adoption.|
IMS Global Learning Consortium, Inc. ("IMS/GLC") is publishing the information contained in this Guidelines for Using the IMS LRM to IEEE LOM 1.0 Transform ("Specification") for purposes of scientific, experimental, and scholarly collaboration only.
IMS/GLC makes no warranty or representation regarding the accuracy or completeness of the Specification.
This material is provided on an "As Is" and "As Available" basis.
The Specification is at all times subject to change and revision without notice.
It is your sole responsibility to evaluate the usefulness, accuracy, and completeness of the Specification as it relates to you.
IMS/GLC would appreciate receiving your comments and suggestions.
Please contact IMS/GLC through our website at http://www.imsglobal.org
Please refer to Document Name: Guidelines for Using the IMS LRM to IEEE LOM 1.0 Transform Revision: 31 August 2006