IMS Reusable Definition of Competency or Educational Objective - XML Binding
Version 1.0 Final Specification
Copyright © 2002 IMS Global Learning Consortium, Inc. All Rights Reserved.
The IMS Logo is a trademark of IMS Global Learning Consortium, Inc.
Document Name: IMS Reusable Definition of Competency or Educational Objective - XML Binding
Revision: 25 October 2002
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 © 2002 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.1 Namespace and Status of the Binding
1.2 XML Basics
1.2.1 Ordering of Elements
1.2.2 Repeated Elements
1.2.3 Valid Character Sets and Encoding
1.3 W3C Schema Language Control Document
2. Narrative Description of XML Binding
2.1 Elements Used Globally
2.1.1 Human Language Strings, <langstring>
2.1.2 Vocabulary Terms, <source> and <value>
2.2 RDCEO, <rdceo>
2.2.1 Identifier, <identifier>: Catalog and Entry
2.2.2 Title, <title>
2.2.3 Description, <description>
2.2.4 Definition, <definition>
2.2.5 Metadata, <metadata>
3.1 Extensions with DTDs
3.2 Namespaced Element Extension Mechanism
3.3 Namespaced Attribute Extension Mechanism
4.1 Core Conformance
4.2 Conformance Profiles
Appendix A - Additional Resources
About This Document
List of Contributors
This binding is identified by the namespace http://www.imsglobal.org/xsd/imsrdceo_rootv1p0. It is important to note that the W3C Schema Language control document is an adjunct to the binding and has been created to conform with the binding; it does not define the binding.
This binding uses current practice where relevant to inform its structure and typing. It is anticipated that the release of an XML binding for IEEE 1484-12.1-2002: Standard for Learning Object Metadata (LOM) will influence community practice in ways that might favor an alternative binding approach for the IMS Reusable Definition of Competency or Educational Objective. The timescale of the LOM binding effort is well beyond that of this specification and requires us to make decisions now that may benefit from changes in future.
This guide does not replicate the details of XML 1.0 but indicates recommendations relevant to the binding that are not presented in the Reusable Definition of Competency or Educational Objective Best Practice and Implementation Guide.
Where XML elements are containers for lists of other elements, it is often necessary to define a sequence for elements in the list when using W3C Schema Language. The ordering of these elements must be preserved for XML document validity. The binding, however, does not define an element order and applications should not assume any element order when reading RDCEO instances but should employ a relevant technology such as Xpath.
Repeating the containing element at its specific location in the XML structure creates an unordered list of contents. The order of the repetitions has no significance. All repeatable elements in the Reusable Definition of Competency or Educational Objective XML Binding are to be interpreted in this way. For example:
<title> <langstring xml:lang="en">Title</langstring > <langstring xml:lang="es">Ttulo</langstring > </title>
An IMS RDCEO instance should use the UTF-8 encoding as defined in RFC 2044 of the character sets as defined in ISO 10646. Alternative encodings are possible but may restrict interoperability. Numeric entity references are not recommended.
The Reusable Definition of Competency or Educational Objective Specification is being released with a control document using W3C Schema Language (i.e., an XSD file) and not with a document type description (DTD). This reflects the development of XML specifications and the almost-universal adoption of W3C Schema Language due to its greater flexibility and precision.
- All elements are declared global; their names are unique in the namespace.
- No other namespace is explicitly referenced; this avoids 'tie-in' to specifications that are evolving. See section 2.1.1, Human Language Strings, <langstring>, for a consequence of this decision.
- Microsoft XML Parser version 4
- XML Spy version 4.4
- XML Authority 2.2 (excluding instance validation)
- Xerces for Java 2.0.2
- Turbo XML 2.3.1
The following excerpt shows a suitable header for an RDCEO XML instance, including cases where IMS Meta-Data v1.2.1 is used. It may need to have a catalog attribute added in some applications. Note that the xsi:schemaLocation attribute is associating the namespaces with copies of the control documents local to the RDCEO instance rather than master copies on IMS or W3C Web servers. This is probably good practice in most cases, especially if XML is to be processed disconnected from the Internet. If XML is exchanged with local xsd file references then it is advisable to include these files in the exchange process.
<?xml version="1.0" encoding="utf-8"?> <rdceo xmlns="http://www.imsglobal.org/xsd/imsrdceo_rootv1p0" xsi:schemaLocation="http://www.imsglobal.org/xsd/imsrdceo_rootv1p0 imsrdceo_rootv1p0.xsd http://www.imsglobal.org/xsd/imsmd_rootv1p2p1 imsmd_rootv1p2p1.xsd http://www.w3.org/XML/1998/namespace xml.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
Note: Note: the xsi:schemaLocation associates a file "xml.xsd" with namespace "http://www.w3.org/XML/1998/namespace". This file is a slightly modified version of the master reference copy at http://www.w3.org/2001/xml.xsd. It has been changed to eliminate the reference to the DTD that defines the W3C Schema grammar to avoid the necessity to include this file. It has also been changed to include a namespace declaration: xmlns="http://www.w3.org/XML/1998/namespace" in order to satisfy the requirements of Microsoft XML Parser 4. The file xml.xsd is included with this specification support files collection.
All elements are declared global in the control document since all element names are unique in the namespace. However, there are two "common" structures: langstring and vocabulary. NB: a different approach to the IMS Meta-Data v1.2 binding has been adopted.
- xml:lang - identifies the human language of the contents of the element according to RFC 3066 (supersedes RFC 1766). The use of this attribute is optional but it is the only way the language of the string will be identified in XML instances that are conformant with this binding. The W3C Schema Language control document released with this specification enables declaration of xml:lang using the attribute extension mechanism described in 3.3.
<title> <langstring xml:lang="en">An Example Definition</langstring> </title>
Description: Defines the vocabulary structure. A Vocabulary datatype is made of two elements: <source> describes the source of the vocabulary and <value> describes the actual vocabulary term. This binding differs from IMS Meta-Data v1.2 in that there is no <langstring> child element. This has been done to follow the "IEEE 1484-12.1-2002: Standard for Learning Object Metadata" model where a vocabulary term is defined as a pair of character strings.
<statementtoken> <source>http://www.imsglobal.org/fictional/tokens1.xml</source> <value>fictional</value> </statementtoken>
Description: The information model for the RDCEO identifier specifies two data elements: a catalog identifier and an entry in that catalog. Both are required. This binding catenates the two parts of the identifier into a single string to facilitate references to a RDCEOs using a single data element. The catenation format uses a standard separator to allow easy splitting of the catalog and entry information.
The catenated approach is an implementation of the The IMS Persistent, Location-Independent, Resource Identifier Implementation Handbook v1.0 (referred to as IMS PLID Handbook) that entails some restrictions and encoding requirements.
The IMS PLID Handbook contains a recommendation for the use of URN schemes as per RFC 2141 that are of the general form "URN:<NID>:<NSS>" where <NID> represents a namespace identifier and <NSS> a namespace-specific string. This approach maps well onto the catalog+entry model used in this specification and can be expressed in the catenated bindings.
- A URN, which is a particular form of URI conforming to the syntax defined in RFC 2141.
- A URI comforming to the syntax defined RFC 2396.
- A URI reference, as described in RFC 2396, clause 4.
If the identifier is expressed as some other form of URI with no additional information attached, i.e. if the string does not contain the literal character "#", the string is assumed to be the entry value and the catalog value is assumed to be nil.
If the identifier is expressed as a URI reference, i.e. if the string contains the literal character "#" followed by a fragment, the string fragment to the left of the "#" is the catalog value and the fragment to the right of the "#" is the entry value.
The XML schema data type for the identifier is anyURI. Characters not allowed in a URI or a URI reference must be escaped as defined in RFC 2396. If it is necessary to escape characters not defined in RFC 2396, the transformation format defined in RFC 2044 shall be used.
<rdceo> <identifier> http://www.imsglobal.org/fictional/rdceo_cat1.xml#definition1 </identifier> <title> <langstring xml:lang="en">Example Minimal Definition</langstring> </title> </rdceo>
<rdceo> <identifier> http://www.imsglobal.org/fictional/rdceo_cat1.xml#definition%201 </identifier> <title> <langstring xml:lang="en">Example Minimal Definition</langstring> </title> </rdceo>
- Entry="definition 1" (note the space character)
<rdceo> <identifier>URN:PublicID:12345678901234567890</identifier> <title> <langstring xml:base="en">Testing URN</langstring> </title> </rdceo>
<rdceo> <identifier>URN:PublicID:12345678901234567890#abcdefgh</identifier> <title> <langstring xml:lang="en">Testing URN</langstring> </title> </rdceo>
<title> <langstring xml:lang="en">Example</langstring> <langstring xml:lang="es">Ejemplo</langstring> </title>
- <statementid> - an optional local identifying token for the statement. This attribute is confined to be an XML ID, with associated restrictions on content of the string and uniqueness within an XML instance.
- <statementname> - the name of the statement: identifies the role of the statement in a definition model, optional.
Multiplicity: One <statementtext> may be used for each <statement> element. It may be expressed in multiple different human languages. If <statementtext> is used, there may be no <statementtoken> and vice versa.
Description: A component of a definition drawn from a controlled source such as a vocabulary. The <statementtoken> element declares a token and a source for the token. The source identifies the meaning of the token.
Multiplicity: One <statementtoken> may be used for each <statement> element. It may be expressed in multiple different human languages. If < statementtoken> is used, there may be no <statementtext> and vice versa.
- <source> - see 2.1.2, Vocabulary Terms, <source> and <value>.
- <value> - see 2.1.2, Vocabulary Terms, <source> and <value>.
<statement statementname="core"> <statementtoken> <source>http://www.imsglobal.org/fictional/tokens1.xml</source> <value>fictional</value> </statementtoken> </statement>
Root elements for arbitrary meta-data schema appear subject to the element extensibility mechanism described in section 3, Extensibility. It is expected that the root element of a well-known meta-data schema should be used with the relevant namespace declaration as the content of a <metadata> element. If meta-data is to be presented in more than one schema then the child elements of <metadata> comprise an unordered list of meta-data root elements. The use of elements in a given meta-data schema that are semantically equivalent to elements defined in the namespace "http://www.imsglobal.org/xsd/imsrcd_rootv1p0" should be avoided to reduce ambiguity.
Description: The schema that defines and controls this RDCEO. If this element is omitted then a value of "IMS RDCEO" should be assumed (i.e., default interpretation of elements). Different values may be used to signal application profiles but must not be used to replicate the purpose of other elements such as <model>.
<metadata> <rdceoschema>IMS RDCEO</rdceoschema> <rdceoschemaversion>1.0</rdceoschemaversion> </metadata>
Some applications of the IMS Reusable Definition of Competency and Education Objective Specification may find the element set defined in the information model and binding to be too restrictive to meet all of their needs. There are broadly two approaches to addressing such restrictions, with the first to be preferred over the second:
- The <metadata> element may be used with a recognized meta-data specification for its content, such as IMS Meta-Data v1.2 or IEEE 1484-12.1-2002: Standard for Learning Object Metadata.
- One or more elements or attributes may be added to the structure using namespaced elements in certain permitted locations (see 3.2 and 3.3).
- the extension elements must follow the elements defined in this specification.
- the extension elements contain a namespace declaration different from the containing element (i.e., not http://www.imsglobal.org/xsd/imsrdceo_rootv1p0 in the current case).
<metadata> <imsmd:lom> <imsmd general> <imsmd:title> <imsmd:langstring xml:lang="en">Example</imsmd:langstring> </imsmd:title> </imsmd general> </imsmd:lom> </metadata>
<metadata> <lom xmlns="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1"> <general> <title> <langstring xml:lang="en">Example</langstring> </title> </general> </lom> </metadata>
A similar mechanism to 3.2, Namespaced Element Extension Mechanism, may be used to append attributes to any element. This facility is again subject to the requirement that the namespace of the attribute should differ from the parent element.
This mechanism is used to permit xml:lang to appear as an attribute of <langstring>, see 2.1.1, but would permit xml:lang to be applied to any element. This should be avoided to maximize interoperability; processing applications should only expect this attribute to be meaningful when applied to <langstring>.
Attribute extension of elements may be used, for example, to qualify a nuance of interpretation appropriate to a specific application but permit systems that do not understand the nuance to process the same data with its broader sense.
- Declare the namespace "http://www.imsglobal.org/xsd/imsrdceo_rootv1p0".
- Associate the namespace with a control document such that it can be validated.
- Be valid according to the control document.
The IEEE 1484-12.1-2002: Standard for Learning Object Metadata can be found at: http://ltsc.ieee.org/wg12/index.html
IMS Persistent, Location-Independent, Resource Identifier Implementation Handbook version 1.0
ISO (International Organization for Standardization). ISO/IEC 10646-1993 (E). Information technology -- Universal Multiple-Octet Coded Character Set (UCS) -- Part 1: Architecture and Basic Multilingual Plane. [Geneva]: International Organization for Standardization, 1993 (plus amendments AM 1 through AM 7).
RFC 1648, A URN namespace for IETF documents, http://www.ietf.org/rfc/rfc1648.txt
RFC 1766, Tags for the Identification of Languages, http://www.ietf.org/rfc/rfc1766.txt
RFC 2044, UTF-8, a transformation format of Unicode and ISO 10646, http://www.ietf.org/rfc/rfc2044.txt
RFC 2141, URN Syntax, http://www.ietf.org/rfc/rfc2141.txt
RFC 2396, Uniform Resource Identifiers (URI): Generic Syntax, http://www.ietf.org/rfc/rfc2396.txt
RFC 3066, Tags for the Identification of Languages, http://www.ietf.org/rfc/rfc3066.txt
XML Schema Part 0: Primer, W3C Recommendation, 2 May 2001: http://www.w3.org/TR/xmlschema-0/
XML Schema Part 1: Structures, W3C Recommendation, 2 May 2001: http://www.w3.org/TR/xmlschema-1/
XML Schema Part 2: Datatypes, W3C Recommendation, 2 May 2001: http://www.w3.org/TR/xmlschema-2/
XML Version 1.0 Specification of the W3C: http://www.w3.org/TR/1998/REC-xml-19980210
XML Namespace Recommendation of W3C: http://www.w3.org/TR/1999/REC-xml-names-19990114
|Title||IMS Reusable Definition of Competency or Educational Objective - XML Binding|
|Editors||Adam Cooper, Claude Ostyn|
|Team Leads||Dan Rehak, Claude Ostyn, Robby Robson|
|Version Date||25 October 2002|
|Summary||This document describes the XML binding for the IMS Reusable Definition of Competency or Educational Objective XML Binding.|
|Purpose||Defines an xml binding for describing, referencing, and exchanging reusable definitions of competencies and educational objectives.|
|Version No.||Release Date||Comments|
|Final Version 1.0||25 October 2002||The first formal release of the IMS Reusable Definition of Competency or Educational Objective - XML Binding.|
IMS Global Learning Consortium, Inc. ("IMS") is publishing the information contained in this IMS Reusable Definition of Competency or Educational Objective - XML Binding ("Specification") for purposes of scientific, experimental, and scholarly collaboration only.
IMS 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 would appreciate receiving your comments and suggestions.
Please contact IMS through our website at http://www.imsglobal.org
Please refer to Document Name: IMS Reusable Definition of Competency or Educational Objective - XML Binding Revision: 25 October 2002