1EdTech Reusable Definition of Competency or Educational Objective - XML Binding Version 1.0 Final Specification |
Copyright © 2002 1EdTech Consortium, Inc. All Rights Reserved.
The 1EdTech Logo is a trademark of 1EdTech Consortium, Inc.
Document Name: 1EdTech 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.
1EdTech 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 1EdTech's procedures with respect to rights in 1EdTech specifications can be found at the 1EdTech Intellectual Property Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf.
Copyright © 2002 1EdTech 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 1EdTech found on the 1EdTech website: http://www.imsglobal.org/license.html.
The limited permissions granted above are perpetual and will not be revoked by 1EdTech 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.
Table of Contents
1. Introduction
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. Extensibility
3.1 Extensions with DTDs
3.2 Namespaced Element Extension Mechanism
3.3 Namespaced Attribute Extension Mechanism
4. Conformance
4.1 Core Conformance
4.2 Conformance Profiles
Appendix A - Additional Resources
About This Document
List of Contributors
Revision History
1. Introduction
1.1 Namespace and Status of the Binding
This document describes an XML binding of the 1EdTech Reusable Definition of Competency or Educational Objective Information Model version 1.0 using XML version 1.0.
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 1EdTech 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.
1.2 XML Basics
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.
1.2.1 Ordering of Elements
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.
1.2.2 Repeated Elements
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>
identifies two equivalent titles with no precedence.
1.2.3 Valid Character Sets and Encoding
An 1EdTech 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.
1.3 W3C Schema Language Control Document
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.
The W3C Schema Language Control Document released with this binding, named imsrdceo_rootv1p0.xsd, has been created according to the following principles.
- 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.
The W3C Schema Language Control Document is has been tested to valid according to the namespace http://www.w3.org/2001/XMLSchema and to be usable for xml instance validation using:
- 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 reference copy of the control document released with this XML binding is located at http://www.imsglobal.org/xsd/imsrdceo_rootv1p0.xsd
The following excerpt shows a suitable header for an RDCEO XML instance, including cases where 1EdTech 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 1EdTech 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.
2. Narrative Description of XML Binding
2.1 Elements Used Globally
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 1EdTech Meta-Data v1.2 binding has been adopted.
2.1.1 Human Language Strings, <langstring>
Description: Phrase in a human language.
Multiplicity: <langstring> may appear multiple times.
- 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>
2.1.2 Vocabulary Terms, <source> and <value>
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 1EdTech 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.
Multiplicity: See parent element.
<statementtoken> <source>http://www.imsglobal.org/fictional/tokens1.xml</source> <value>fictional</value> </statementtoken>
2.1.2.1 <source> Element
Description: Defines the source of the value, for instance through a URI.
Multiplicity: The <source> element occurs once within its parent element. This differs from 1EdTech Meta-Data v1.2 but follows the IEEE 1484-12.1-2002: Standard for Learning Object Metadata.
2.1.2.2 <value> Element
Description: Defines the vocabulary structure.
Multiplicity: The <value> element occurs once within its parent element. This differs from 1EdTech Meta-Data v1.2 but follows the IEEE 1484-12.1-2002: Standard for Learning Object Metadata.
2.2 RDCEO, <rdceo>
Description: The root element is called rdceo and contains a single reusable definition.
Multiplicity: The root element <rdceo> elements may occur only once per instance or fragment.
2.2.1 Identifier, <identifier>: Catalog and Entry
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 1EdTech Persistent, Location-Independent, Resource Identifier Implementation Handbook v1.0 (referred to as 1EdTech PLID Handbook) that entails some restrictions and encoding requirements.
The 1EdTech 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.
Description: The catenated identifier is bound as a single string that contains both the catalog and the entry values. It may be expressed as either:
- 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 a URN, the NID part of the URN is the catalog value and the NSS part of the URN is the entry value.
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>
The un-escaped and un-bound form of this identifier has components:
Example of Escaped entry of a URI reference:
<rdceo> <identifier> http://www.imsglobal.org/fictional/rdceo_cat1.xml#definition%201 </identifier> <title> <langstring xml:lang="en">Example Minimal Definition</langstring> </title> </rdceo>
The un-escaped and un-bound form of this identifier has components:
- Catalog="http://www.imsglobal.org/fictional/rdceo_cat1.xml"
- Entry="definition 1" (note the space character)
<rdceo> <identifier>URN:PublicID:12345678901234567890</identifier> <title> <langstring xml:base="en">Testing URN</langstring> </title> </rdceo>
Example of URI reference catenating a URN that identifies a specific catalog with a catalog-specific value for the entry:
<rdceo> <identifier>URN:PublicID:12345678901234567890#abcdefgh</identifier> <title> <langstring xml:lang="en">Testing URN</langstring> </title> </rdceo>
2.2.2 Title, <title>
Description: A short text label for a reusable definition.
Multiplicity: There is one title for a reusable definition. It may be expressed in multiple different human languages.
<title> <langstring xml:lang="en">Example</langstring> <langstring xml:lang="es">Ejemplo</langstring> </title>
2.2.3 Description, <description>
Description: A free form textual description for a reusable definition.
Multiplicity: There may be one description of a reusable definition. It may be expressed in multiple different human languages. There may be no description.
2.2.4 Definition, <definition>
Description: A structured definition of the competency or educational objective.
Multiplicity: Zero or more <definition> elements may be presented for a given reusable definition but each should declare use of a different definition model.
2.2.4.1 Model, <model>
Description: The source of the structure used in this definition, optional.
Multiplicity: Zero or 1 occurrence per <definition> element. Must differ between <definition> elements in the same <rdceo> if more than one <definition> element occurs.
2.2.4.2 Statement, <statement>
Description: A single component statement in a structured definition.
Multiplicity: One or more <statement> elements may be used in a <definition>.
- <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.
2.2.4.2.1 Statement using free text, <statementtext>
Description: A free text component of a definition.
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.
2.2.4.2.2 Statement using a token, <statementtoken>
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>
2.2.5 Metadata, <metadata>
Description: A container for arbitrary meta-data for the <rdceo> element.
Multiplicity: The <metadata> element may occur 0 or 1 time within <rdceo>.
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.
Section 3.2 shows an example of including 1EdTech Meta-Data v1.2.
2.2.5.1 RDCEO Schema, <rdceoschema>
Description: The schema that defines and controls this RDCEO. If this element is omitted then a value of "1EdTech 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>.
Multiplicity: May occur zero or one time.
See 2.2.5.1, RDCEO Schema Version, <rdceoschemaversion>.
2.2.5.2 RDCEO Schema Version, <rdceoschemaversion>
Description: The version of the schema that defines and controls this RDCEO. If this element is omitted then a value of "1.0" should be assumed (i.e., default interpretation of elements).
Multiplicity: May occur zero or one time.
<metadata> <rdceoschema>1EdTech RDCEO</rdceoschema> <rdceoschemaversion>1.0</rdceoschemaversion> </metadata>
3. Extensibility
Some applications of the 1EdTech 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 1EdTech 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).
This section is not wholly part of the binding; the namespace extension mechanism described below includes conditions that arise from the use and style of use of W3C Schema Language.
3.1 Extensions with DTDs
No Document Type Description is released with this specification and their use is not recommended; W3C Schema Language should be used with its namespace-driven extension mechanism described below.
3.2 Namespaced Element Extension Mechanism
Extension by inclusion of additional elements may be achieved at the following locations:
- 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).
The namespace of the extension may employ either "block" or "prefix" mechanisms. For example in the equivalent fragments:
<metadata> <imsmd:lom> <imsmd general> <imsmd:title> <imsmd:langstring xml:lang="en">Example</imsmd:langstring> </imsmd:title> </imsmd general> </imsmd:lom> </metadata>
(where the prefix imsmd has previously been declared by xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1")
<metadata> <lom xmlns="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1"> <general> <title> <langstring xml:lang="en">Example</langstring> </title> </general> </lom> </metadata>
3.3 Namespaced Attribute Extension Mechanism
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.
4. Conformance
4.1 Core Conformance
A conforming XML instance or fragment must:
- 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.
4.2 Conformance Profiles
A conforming system or tool must produce XML instances according to section 4.1, Core Conformance, and should declare conformance against the following matrix.
Specific applications are expected to define more detailed application profiles with associated conformance requirements.
Appendix A - Additional Resources
IEEE 1484-12.1-2002: Standard for Learning Object Metadata (LOM)
The IEEE 1484-12.1-2002: Standard for Learning Object Metadata can be found at: http://ltsc.ieee.org/wg12/index.html
The W3C Schema Language Control Document,imsrdceo_rootv1p0.xsd, is located at: http://www.imsglobal.org/xsd/imsrdceo_rootv1p0.xsd
1EdTech Persistent, Location-Independent, Resource Identifier Implementation Handbook version 1.0
http://www.imsglobal.org/implementationhandbook/imsrid_handv1p0.html
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
(this is now made obsolete by RFC 3066)
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
The Unicode Consortium. The Unicode Standard, Version 2.0. Reading, Mass.: Addison-Wesley Developers Press, 1996.
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
About This Document
Title | 1EdTech Reusable Definition of Competency or Educational Objective - XML Binding |
Editors | Adam Cooper, Claude Ostyn |
Team Leads | Dan Rehak, Claude Ostyn, Robby Robson |
Version | 1.0 |
Version Date | 25 October 2002 |
Status | Final Specification |
Summary | This document describes the XML binding for the 1EdTech 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. |
Document Location | http://www.imsglobal.org/competencies/rdceov1p0/imsrdceo_bindv1p0.html |
List of Contributors
The following individuals contributed to the development of this document:
Revision History
Version No. | Release Date | Comments |
---|---|---|
Final Version 1.0 | 25 October 2002 | The first formal release of the 1EdTech Reusable Definition of Competency or Educational Objective - XML Binding. |
1EdTech Consortium, Inc. ("1EdTech") is publishing the information contained in this 1EdTech Reusable Definition of Competency or Educational Objective - XML Binding ("Specification") for purposes of scientific, experimental, and scholarly collaboration only.
1EdTech 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.
1EdTech would appreciate receiving your comments and suggestions.
Please contact 1EdTech through our website at http://www.imsglobal.org
Please refer to Document Name: 1EdTech Reusable Definition of Competency or Educational Objective - XML Binding Revision: 25 October 2002