first commit

This commit is contained in:
CHIEFSOFT\ameye
2024-09-30 18:11:26 -04:00
commit e592ca6823
27270 changed files with 5002257 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
<?xml version = "1.0" encoding = "UTF-8"?>
<xs:schema xmlns ="http://dummy.libxml2.validator"
targetNamespace ="http://dummy.libxml2.validator"
xmlns:xs ="http://www.w3.org/2001/XMLSchema"
xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"
xmlns:imscp ="http://www.imsglobal.org/xsd/imscc/imscp_v1p1"
xmlns:imslom ="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns:lom ="http://ltsc.ieee.org/xsd/LOM"
xmlns:cc ="http://www.imsglobal.org/xsd/imsccauth_v1p0"
version="1.0"
elementFormDefault ="qualified"
attributeFormDefault="unqualified"
>
<xs:import namespace ="http://www.w3.org/XML/1998/namespace" schemaLocation = "xml.xsd" />
<xs:import namespace ="http://www.imsglobal.org/xsd/imscc/imscp_v1p1" schemaLocation = "imscp_v1p2_localised.xsd" />
<xs:import namespace ="http://ltsc.ieee.org/xsd/imscc/LOM" schemaLocation = "domainProfile_1/lomLoose_localised.xsd" />
<xs:import namespace ="http://ltsc.ieee.org/xsd/LOM" schemaLocation = "domainProfile_2/lomLoose_localised.xsd" />
<xs:import namespace ="http://www.imsglobal.org/xsd/imsccauth_v1p0" schemaLocation = "domainProfile_0/imsccauth_v1p0_localised.xsd" />
</xs:schema>
+63
View File
@@ -0,0 +1,63 @@
<?xml version="1.0" encoding="UTF-8"?>
<config>
<mapping>
<namespace>http://www.imsglobal.org/xsd/imscc/imscp_v1p1</namespace>
<path>imscp_v1p2_localised.xsd</path>
</mapping>
<mapping>
<namespace>http://www.imsglobal.org/xsd/imscp_v1p1</namespace>
<path>imscp_v1p2.xsd</path>
</mapping>
<mapping>
<namespace>http://www.imsglobal.org/xsd/imsccauth_v1p0</namespace>
<path>domainProfile_0/imsccauth_v1p0_localised.xsd</path>
</mapping>
<mapping>
<namespace>http://ltsc.ieee.org/xsd/imscc/LOM</namespace>
<path>domainProfile_1/lomLoose_localised.xsd</path>
</mapping>
<mapping>
<namespace>http://ltsc.ieee.org/xsd/imscc/LOM/unique</namespace>
<path>domainProfile_1/loose.xsd</path>
</mapping>
<mapping>
<namespace>http://ltsc.ieee.org/xsd/imscc/LOM/vocab</namespace>
<path>domainProfile_1/vocab/loose.xsd</path>
</mapping>
<mapping>
<namespace>http://ltsc.ieee.org/xsd/imscc/LOM/extend</namespace>
<path>domainProfile_1/extend/custom.xsd</path>
</mapping>
<mapping>
<namespace>http://ltsc.ieee.org/xsd/LOM</namespace>
<path>domainProfile_2/lomLoose_localised.xsd</path>
</mapping>
<mapping>
<namespace>http://ltsc.ieee.org/xsd/LOM/unique</namespace>
<path>domainProfile_2/loose.xsd</path>
</mapping>
<mapping>
<namespace>http://ltsc.ieee.org/xsd/LOM/vocab</namespace>
<path>domainProfile_2/vocab/loose.xsd</path>
</mapping>
<mapping>
<namespace>http://ltsc.ieee.org/xsd/LOM/extend</namespace>
<path>domainProfile_2/extend/custom.xsd</path>
</mapping>
<mapping>
<namespace>http://www.imsglobal.org/xsd/imscp_extensionv1p2</namespace>
<path>domainProfile_3/imscp_extensionv1p2_localised.xsd</path>
</mapping>
<mapping>
<namespace>http://www.imsglobal.org/xsd/ims_qtiasiv1p2</namespace>
<path>domainProfile_4/ims_qtiasiv1p2_localised.xsd</path>
</mapping>
<mapping>
<namespace>http://www.imsglobal.org/xsd/imswl_v1p0</namespace>
<path>domainProfile_5/imswl_v1p0_localised.xsd</path>
</mapping>
<mapping>
<namespace>http://www.imsglobal.org/xsd/imsdt_v1p0</namespace>
<path>domainProfile_6/imsdt_v1p0_localised.xsd</path>
</mapping>
</config>
@@ -0,0 +1,76 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Common Cartridge Version 1.0 found at http://www.imsglobal.org/cc/index.html and the original IMS schema binding or code base http://www.imsglobal.org/cc/.
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 the schema binding contained in this document.
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 IMSs 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 © IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free, non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this document, that is, are distributing a software product that incorporates this document as is from a third-party source other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution of this document as is or with modifications and developers of products and services that are not original incorporators of this document and have changed this document, are required to register with the IMS community on the IMS website as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once registered you are granted permission to transfer unlimited distribution rights of this document for the purposes of third-party or other distribution of your product or service that incorporates this document as long as this IPR, License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy, display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.imsglobal.org/xsd/imsccauth_v1p0" targetNamespace="http://www.imsglobal.org/xsd/imsccauth_v1p0" elementFormDefault="qualified">
<xs:element name="authorizations" type="authorizationsType" />
<xs:complexType name="authorizationsType">
<xs:sequence>
<xs:element name="authorization" type="authorizationType" />
<xs:group ref="grpStrict.any" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="access" type="accessType" use="required" />
<xs:attribute name="import" type="xs:boolean" default="false" />
</xs:complexType>
<xs:complexType name="authorizationType">
<xs:sequence>
<xs:element name="cartridgeId" type="xs:string" />
<xs:element name="webservice" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="accessType">
<xs:restriction base="xs:string">
<xs:enumeration value="cartridge" />
<xs:enumeration value="resource" />
</xs:restriction>
</xs:simpleType>
<xs:group name="grpStrict.any">
<xs:annotation>
<xs:documentation>
This group is defined exactly as in IMS Content Packaging v 1.2.
Any namespaced element from any namespace may be included within an "any" element.
The namespace for the imported element must be defined in the instance, and the schema must be imported.
The extension has a definition of "strict" i.e. they must have their own namespace.
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:group>
<xs:attribute name="protected" type="xs:boolean" default="false" />
</xs:schema>
@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.ascc.net/xml/schematron">
<ns prefix="xs" uri="http://www.w3.org/2001/XMLSchema" />
<ns prefix="xsd" uri="http://www.w3.org/2001/XMLSchema" />
<ns prefix="xsi" uri="http://www.w3.org/2001/XMLSchema-instance" />
<ns prefix="ac" uri="http://iwm.uni-koblenz.de/xsd/tel_addc_v1p1" />
<ns prefix="ims" uri="http://www.imsglobal.org/xsd/imscc/imscp_v1p1" />
<!--***********************************************************************************************-->
<!--** Constraints document - this document holds Schematron rules that have been generated from **-->
<!--** AP condition and assertion elements. IMPORTANT: If this document exists, it MUST be **-->
<!--** used in the validation of instances derived from the resultant schema - failure to do so **-->
<!--** can result in an instance that does not conform to either the base schema or the **-->
<!--** Application Profile. **-->
<!--***********************************************************************************************-->
<pattern name="pattern_1">
<rule context="ims:organizations/ims:organization/ims:item/@identifierref | ims:manifest/ims:organizations/ims:organization/ims:item/@identifierref | @identifierref">
<assert test="(ims:organizations/ims:organization/ims:item/@identifierref | ims:manifest/ims:organizations/ims:organization/ims:item/@identifierref | @identifierref) and not (count(../item)=0)">Assertion failed for pattern_1. An Item object which represents a folder is indicated by the absence of an IdentifierRef characteristic object. Folder Items support unlimited nesting of other folder Items and learning object link Items. Learning Application Resource Item objects may be nested by folder Item object but may not nest other folder or Learning Application resource Item objects.(#S04)</assert>
</rule>
</pattern>
<pattern name="pattern_2">
<rule context="ims:resources/ims:resource/ims:dependency/@identifierref | ims:manifest/ims:resources/ims:resource/ims:dependency/@identifierref">
<assert test="(ims:resources/ims:resource/ims:dependency/@identifierref | ims:manifest/ims:resources/ims:resource/ims:dependency/@identifierref) and (../../@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and not (current() = /manifest/resources/resource[@type='webcontent']/@identifier)">Assertion failed for pattern_2. A Resource object which is a Learning Object Web Content may contain Dependency objects which reference Resource objects with Type 'webcontent'.(#S03)</assert>
</rule>
</pattern>
<pattern name="pattern_3">
<rule context="ims:organizations/ims:organization/ims:item/ims:item | ims:manifest/ims:organizations/ims:organization/ims:item/ims:item">
<assert test="(ims:organizations/ims:organization/ims:item/ims:item | ims:manifest/ims:organizations/ims:organization/ims:item/ims:item) and (@isvisible='false') and not (count(./item)=count(./item[@isvisible='false']))">Assertion failed for pattern_3. If an item is invisible, its descendants must be invisible too.(#S02)</assert>
</rule>
</pattern>
<pattern name="pattern_4">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='imsdt_xmlv1p0') and not (current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier or current()/@identifierref = /manifest/resources/resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier)">Assertion failed for pattern_4. A Resource object which is a Discussion Topic associated resource may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S12)</assert>
</rule>
</pattern>
<pattern name="pattern_5">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and not (current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier)">Assertion failed for pattern_5.
The test was: .
The context was: ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency</assert>
</rule>
</pattern>
<pattern name="pattern_6">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='imsqti_xmlv1p2/imscc_xmlv1p0/assessment') and not ((current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier) or (current()/@identifierref = /manifest/resources/resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier))">Assertion failed for pattern_6. A Resource object which is an assessment may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S14)</assert>
</rule>
</pattern>
<pattern name="pattern_7">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and ((./@type='webcontent' or ./@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and ./@identifier = //item/@identifierref) and not (count(./@href)=1)">Assertion failed for pattern_7. If a cartridge web content or associated content resource is linked from a Learning Application Object link Item object it must have an Href characteristic object which represents the launchable resource.(#S05)</assert>
</rule>
</pattern>
<pattern name="pattern_8">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and (./@type='imsdt_xmlv1p0') and not (count(./file)=1 and count(./@href)=0)">Assertion failed for pattern_8. For Discussion Topic Resources the Resource object must contain a single File object which references the Discussion Topic descriptor XML file which conforms to the http://www.imsglobal.org/xsd/imsdt_v1p0 schema. It must not have any href attribute.(#S06)</assert>
</rule>
</pattern>
<pattern name="pattern_9">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and (./@type='imswl_xmlv1p0') and not (count(./file)=1 and count(./dependency)=0 and count(./@href)=0)">Assertion failed for pattern_9. For Web Link Resources the Resource object must contain a single File object which references the Web Link descriptor XML file which conforms to the http://www.imsglobal.org/xsd/imswl_v1p0 schema. It must contain neither Dependency objects nor an href attribute.(#S07)</assert>
</rule>
</pattern>
<pattern name="pattern_10">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and ((./@type='imsqti_xmlv1p2/imscc_xmlv1p0/assessment') or (./@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank')) and not (count(./file)=1 and count(./@href)=0)">Assertion failed for pattern_10. For Assessment or Question Bank Resources the Resource object must contain a single File object which references the QTI XML file. This file must conform to the IMS CC profile of QTI 1.2.1. The profile is contained in the package of this profile as imscc_q*.xdm. The derived schema of this QTI profile is in the package of this profile with the name ims_qtiasiv1p2_localised.xsd. The resource must not have an href attribute(#S11)</assert>
</rule>
</pattern>
</schema>
@@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Common Cartridge Version 1.0 found at http://www.imsglobal.org/cc/index.html and the original IMS schema binding or code base http://www.imsglobal.org/cc/.
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 the schema binding contained in this document.
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 IMSs 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 IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free, non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this document, that is, are distributing a software product that incorporates this document as is from a third-party source other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution of this document as is or with modifications and developers of products and services that are not original incorporators of this document and have changed this document, are required to register with the IMS community on the IMS website as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once registered you are granted permission to transfer unlimited distribution rights of this document for the purposes of third-party or other distribution of your product or service that incorporates this document as long as this IPR, License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy, display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** imsccauth_v1p0.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.imsglobal.org/xsd/imsccauth_v1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://www.imsglobal.org/xsd/imsccauth_v1p0" elementFormDefault="qualified">
<xs:annotation>
<xs:documentation xml:lang="en">general: This specification defines the authorizations for Common Cartridges and the roles to be used for selective display of resources to Learner or Instructor.</xs:documentation>
</xs:annotation><xs:element name="authorizations" type="authorizationsType" />
<xs:complexType name="authorizationsType">
<xs:sequence>
<xs:element name="authorization" type="authorizationType" />
<xs:group ref="grpStrict.any" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="access" type="accessType" use="required" />
<xs:attribute name="import" type="xs:boolean" default="false" />
</xs:complexType>
<xs:complexType name="authorizationType">
<xs:sequence>
<xs:element name="cartridgeId" type="xs:string" />
<xs:element name="webservice" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="accessType">
<xs:restriction base="xs:string">
<xs:enumeration value="cartridge" />
<xs:enumeration value="resource" />
</xs:restriction>
</xs:simpleType>
<xs:group name="grpStrict.any">
<xs:annotation>
<xs:documentation>
This group is defined exactly as in IMS Content Packaging v 1.2.
Any namespaced element from any namespace may be included within an "any" element.
The namespace for the imported element must be defined in the instance, and the schema must be imported.
The extension has a definition of "strict" i.e. they must have their own namespace.
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:group>
<xs:attribute name="protected" type="xs:boolean" default="false" />
</xs:schema>
@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides the element group declaration and the
attribute group declaration used for extension XML elements and attributes.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:group name="customElements">
<xs:choice>
<xs:any namespace="##other" processContents="lax" />
</xs:choice>
</xs:group>
</xs:schema>
@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** anyElement.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_m_definition.xsd" />
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides the element group declaration and the
attribute group declaration used for extension XML elements and attributes.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:group name="customElements">
<xs:choice>
<xs:any namespace="##other" processContents="lax" />
</xs:choice>
</xs:group>
</xs:schema>
@@ -0,0 +1,39 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides the element group declaration and the
attribute group declaration used for extension XML elements and attributes.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:group name="customElements">
<xs:choice>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:group>
</xs:schema>
@@ -0,0 +1,118 @@
<xs:schema xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" xmlns:ag="http://ltsc.ieee.org/xsd/imscc/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/imscc/LOM/extend" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global schema data type declarations
for data types defined in the LOMv1.0 base schema.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique" schemaLocation="../unique/loose.xsd"/>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend" schemaLocation="../extend/custom.xsd"/>
<xs:include schemaLocation="elementTypes.xsd"/>
<!-- Data type declarations -->
<!-- CharacterString -->
<xs:simpleType name="CharacterString">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- LanguageId -->
<xs:complexType name="LanguageId">
<xs:simpleContent>
<xs:extension base="xs:token">
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- VCard -->
<xs:complexType name="VCard">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- MimeType -->
<xs:simpleType name="MimeType">
<xs:restriction base="CharacterString"/>
</xs:simpleType>
<!-- Size -->
<xs:simpleType name="Size">
<xs:restriction base="xs:nonNegativeInteger"/>
</xs:simpleType>
<!-- LanguageString -->
<xs:complexType name="LanguageString">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="string" type="LangString"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="LangString">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attribute name="language" type="xs:token"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- DateTime -->
<xs:complexType name="DateTime">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="dateTime" type="DateTimeValue"/>
<xs:element name="description" type="description"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="DateTimeValue">
<xs:simpleContent>
<xs:extension base="DateTimeString">
<xs:attributeGroup ref="ag:DateTimeValue"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Regular expresion from Christian Klaue -->
<xs:simpleType name="DateTimeString">
<xs:restriction base="CharacterString">
<xs:pattern value="([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3})(\-(0[1-9]|1[0-2])(\-(0[1-9]|[1-2][0-9]|3[0-1])(T([0-1][0-9]|2[0-3])(:[0-5][0-9](:[0-5][0-9](\.[0-9]{1,}(Z|((\+|\-)([0-1][0-9]|2[0-3]):[0-5][0-9]))?)?)?)?)?)?)?"/>
</xs:restriction>
</xs:simpleType>
<!-- Duration -->
<xs:complexType name="Duration">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="duration" type="DurationValue"/>
<xs:element name="description" type="description"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="DurationValue">
<xs:simpleContent>
<xs:extension base="DurationString">
<xs:attributeGroup ref="ag:DurationValue"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Regular expresion from Christian Klaue -->
<xs:simpleType name="DurationString">
<xs:restriction base="CharacterString">
<xs:pattern value="P([0-9]{1,}Y){0,1}([0-9]{1,}M){0,1}([0-9]{1,}D){0,1}(T([0-9]{1,}H){0,1}([0-9]{1,}M){0,1}([0-9]{1,}(\.[0-9]{1,}){0,1}S){0,1}){0,1}"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,783 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global element declarations for
each of the data elements defined in the LOMv1.0 base schema. This component
schema definition is used to check for the uniqueness of elements declared
to be unique within their parent elements by the presence of the
"uniqueElementName" attribute. The XML Schema constraint "unique" is used
to enforce uniqueness constraints.
Duplicate declarations are included as comments for completeness. These
declarations should remain commented out or they can be removed completely.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Element declarations -->
<!-- Duplicate declarations are included as comments. -->
<!-- 1 General -->
<xs:group name="general">
<xs:sequence>
<xs:element name="general" type="general">
<xs:unique name="generalUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.1 Identifier -->
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.1.1 Catalog -->
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog"/>
</xs:sequence>
</xs:group>
<!-- 1.1.2 Entry -->
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry"/>
</xs:sequence>
</xs:group>
<!-- 1.2 Title -->
<xs:group name="title">
<xs:sequence>
<xs:element name="title" type="title"/>
</xs:sequence>
</xs:group>
<!-- 1.3 Language-->
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId"/>
</xs:sequence>
</xs:group>
<!-- 1.4 Description -->
<xs:group name="descriptionUnbounded">
<xs:sequence>
<xs:element name="description" type="LanguageString"/>
</xs:sequence>
</xs:group>
<!-- 1.5 Keyword -->
<xs:group name="keyword">
<xs:sequence>
<xs:element name="keyword" type="keyword"/>
</xs:sequence>
</xs:group>
<!-- 1.6 Coverage -->
<xs:group name="coverage">
<xs:sequence>
<xs:element name="coverage" type="coverage"/>
</xs:sequence>
</xs:group>
<!-- 1.7 Structure -->
<xs:group name="structure">
<xs:sequence>
<xs:element name="structure" type="structure">
<xs:unique name="structureUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.8 Aggregation Level -->
<xs:group name="aggregationLevel">
<xs:sequence>
<xs:element name="aggregationLevel" type="aggregationLevel">
<xs:unique name="aggregationLevelUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2 Life Cycle -->
<xs:group name="lifeCycle">
<xs:sequence>
<xs:element name="lifeCycle" type="lifeCycle">
<xs:unique name="lifeCycleUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.1 Version -->
<xs:group name="version">
<xs:sequence>
<xs:element name="version" type="version"/>
</xs:sequence>
</xs:group>
<!-- 2.2 Status -->
<xs:group name="status">
<xs:sequence>
<xs:element name="status" type="status">
<xs:unique name="statusUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3 Contribute -->
<xs:group name="contribute">
<xs:sequence>
<xs:element name="contribute" type="contribute">
<xs:unique name="contributeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3.1 Role -->
<xs:group name="role">
<xs:sequence>
<xs:element name="role" type="role">
<xs:unique name="roleUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3.2 Entity -->
<xs:group name="entityUnbounded">
<xs:sequence>
<xs:element name="entity" type="VCard"/>
</xs:sequence>
</xs:group>
<!-- 2.3.3 Date -->
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3 Meta-Metadata -->
<xs:group name="metaMetadata">
<xs:sequence>
<xs:element name="metaMetadata" type="metaMetadata">
<xs:unique name="metaMetadataUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.1 Identifier
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 3.1.1 Catalog
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog"/>
</xs:sequence>
</xs:group> -->
<!-- 3.1.2 Entry
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry"/>
</xs:sequence>
</xs:group> -->
<!-- 3.2 Contribute -->
<xs:group name="contributeMeta">
<xs:sequence>
<xs:element name="contribute" type="contributeMeta">
<xs:unique name="contributeMetaUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.2.1 Role -->
<xs:group name="roleMeta">
<xs:sequence>
<xs:element name="role" type="roleMeta">
<xs:unique name="roleMetaUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.2.2 Entity
<xs:group name="entityUnbounded">
<xs:sequence>
<xs:element name="entity" type="VCard"/>
</xs:sequence>
</xs:group> -->
<!-- 3.2.3 Date
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 3.3 Metadata Schema -->
<xs:group name="metadataSchema">
<xs:sequence>
<xs:element name="metadataSchema" type="metadataSchema"/>
</xs:sequence>
</xs:group>
<!-- 3.4 Language
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId"/>
</xs:sequence>
</xs:group> -->
<!-- 4 Technical -->
<xs:group name="technical">
<xs:sequence>
<xs:element name="technical" type="technical">
<xs:unique name="technicalUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.1 Format -->
<xs:group name="format">
<xs:sequence>
<xs:element name="format" type="format"/>
</xs:sequence>
</xs:group>
<!-- 4.2 Size -->
<xs:group name="size">
<xs:sequence>
<xs:element name="size" type="size"/>
</xs:sequence>
</xs:group>
<!-- 4.3 Location -->
<xs:group name="location">
<xs:sequence>
<xs:element name="location" type="location"/>
</xs:sequence>
</xs:group>
<!-- 4.4 Requirement -->
<xs:group name="requirement">
<xs:sequence>
<xs:element name="requirement" type="requirement"/>
</xs:sequence>
</xs:group>
<!-- 4.4.1 OrComposite -->
<xs:group name="orComposite">
<xs:sequence>
<xs:element name="orComposite" type="orComposite">
<xs:unique name="orCompositeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.1 Type -->
<xs:group name="type">
<xs:sequence>
<xs:element name="type" type="type">
<xs:unique name="typeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.2 Name -->
<xs:group name="name">
<xs:sequence>
<xs:element name="name" type="name">
<xs:unique name="nameUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.3 Minimum Version -->
<xs:group name="minimumVersion">
<xs:sequence>
<xs:element name="minimumVersion" type="minimumVersion"/>
</xs:sequence>
</xs:group>
<!-- 4.4.1.4 Maximum Version -->
<xs:group name="maximumVersion">
<xs:sequence>
<xs:element name="maximumVersion" type="maximumVersion"/>
</xs:sequence>
</xs:group>
<!-- 4.5 Installation Remarks -->
<xs:group name="installationRemarks">
<xs:sequence>
<xs:element name="installationRemarks" type="installationRemarks"/>
</xs:sequence>
</xs:group>
<!-- 4.6 Other Platform Requirements -->
<xs:group name="otherPlatformRequirements">
<xs:sequence>
<xs:element name="otherPlatformRequirements" type="otherPlatformRequirements"/>
</xs:sequence>
</xs:group>
<!-- 4.7 Duration -->
<xs:group name="duration">
<xs:sequence>
<xs:element name="duration" type="duration">
<xs:unique name="durationUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5 Educational -->
<xs:group name="educational">
<xs:sequence>
<xs:element name="educational" type="educational">
<xs:unique name="educationalUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.1 Interactivity Type -->
<xs:group name="interactivityType">
<xs:sequence>
<xs:element name="interactivityType" type="interactivityType">
<xs:unique name="interactivityTypeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.2 Learning Resource Type -->
<xs:group name="learningResourceType">
<xs:sequence>
<xs:element name="learningResourceType" type="learningResourceType">
<xs:unique name="learningResourceTypeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.3 Interactivity Level -->
<xs:group name="interactivityLevel">
<xs:sequence>
<xs:element name="interactivityLevel" type="interactivityLevel">
<xs:unique name="interactivityLevelUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.4 Semantic Density -->
<xs:group name="semanticDensity">
<xs:sequence>
<xs:element name="semanticDensity" type="semanticDensity">
<xs:unique name="semanticDensityUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.5 Intended End User Role -->
<xs:group name="intendedEndUserRole">
<xs:sequence>
<xs:element name="intendedEndUserRole" type="intendedEndUserRole">
<xs:unique name="intendedEndUserRoleUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.6 Context -->
<xs:group name="context">
<xs:sequence>
<xs:element name="context" type="context">
<xs:unique name="contextUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.7 Typical Age Range -->
<xs:group name="typicalAgeRange">
<xs:sequence>
<xs:element name="typicalAgeRange" type="typicalAgeRange"/>
</xs:sequence>
</xs:group>
<!-- 5.8 Difficulty -->
<xs:group name="difficulty">
<xs:sequence>
<xs:element name="difficulty" type="difficulty">
<xs:unique name="difficultyUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.9 Typical Learning Time -->
<xs:group name="typicalLearningTime">
<xs:sequence>
<xs:element name="typicalLearningTime" type="typicalLearningTime">
<xs:unique name="typicalLearningTimeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.10 Description
<xs:group name="descriptionUnbounded">
<xs:sequence>
<xs:element name="description" type="LanguageString"/>
</xs:sequence>
</xs:group> -->
<!-- 5.11 Language
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId"/>
</xs:sequence>
</xs:group>-->
<!-- 6 Rights -->
<xs:group name="rights">
<xs:sequence>
<xs:element name="rights" type="rights">
<xs:unique name="rightsUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.1 Cost -->
<xs:group name="cost">
<xs:sequence>
<xs:element name="cost" type="cost">
<xs:unique name="costUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:group name="copyrightAndOtherRestrictions">
<xs:sequence>
<xs:element name="copyrightAndOtherRestrictions" type="copyrightAndOtherRestrictions">
<xs:unique name="copyrightAndOtherRestrictionsUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.3 Description -->
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group>
<!-- 7 Relation -->
<xs:group name="relation">
<xs:sequence>
<xs:element name="relation" type="relation">
<xs:unique name="relationUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 7.1 Kind -->
<xs:group name="kind">
<xs:sequence>
<xs:element name="kind" type="kind">
<xs:unique name="kindUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 7.2 Resource -->
<xs:group name="resource">
<xs:sequence>
<xs:element name="resource" type="resource"/>
</xs:sequence>
</xs:group>
<!-- 7.2.1 Identifier
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 7.2.1.1 Catalog
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog"/>
</xs:sequence>
</xs:group> -->
<!-- 7.2.1.2 Entry
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry"/>
</xs:sequence>
</xs:group> -->
<!-- 7.2.2 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 8 Annotation -->
<xs:group name="annotation">
<xs:sequence>
<xs:element name="annotation" type="annotation">
<xs:unique name="annotationUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 8.1 Entity -->
<xs:group name="entity">
<xs:sequence>
<xs:element name="entity" type="entity"/>
</xs:sequence>
</xs:group>
<!-- 8.2 Date
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 8.3 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 9 Classification -->
<xs:group name="classification">
<xs:sequence>
<xs:element name="classification" type="classification">
<xs:unique name="classificationUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.1 Purpose -->
<xs:group name="purpose">
<xs:sequence>
<xs:element name="purpose" type="purpose">
<xs:unique name="purposeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2 Taxon Path -->
<xs:group name="taxonPath">
<xs:sequence>
<xs:element name="taxonPath" type="taxonPath">
<xs:unique name="taxonPathUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2.1 Source -->
<xs:group name="source">
<xs:sequence>
<xs:element name="source" type="source"/>
</xs:sequence>
</xs:group>
<!-- 9.2.2 Taxon -->
<xs:group name="taxon">
<xs:sequence>
<xs:element name="taxon" type="taxon">
<xs:unique name="taxonUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2.2.1 Id -->
<xs:group name="id">
<xs:sequence>
<xs:element name="id" type="id"/>
</xs:sequence>
</xs:group>
<!-- 9.2.2.2 Entry -->
<xs:group name="entryTaxon">
<xs:sequence>
<xs:element name="entry" type="entryTaxon"/>
</xs:sequence>
</xs:group>
<!-- 9.3 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 9.4 Keyword
<xs:group name="keyword">
<xs:sequence>
<xs:element name="keyword" type="keyword"/>
</xs:sequence>
</xs:group> -->
</xs:schema>
@@ -0,0 +1,779 @@
<xs:schema xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" xmlns:ag="http://ltsc.ieee.org/xsd/imscc/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/imscc/LOM/extend" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global schema data type declarations
for data elements defined in the LOMv1.0 base schema. This component XSD
defines the aggregation relationship among the LOM data elements. These aggregation
relationships enforce the LOMv1.0 base schema requirement that elements can only
be present in a LOM XML instance as elements of the aggregate element to which they
belong.
Duplicate declarations are included as comments for completeness. These declarations
should remain commented out or they can be removed completely.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique" schemaLocation="../unique/loose.xsd"/>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend" schemaLocation="../extend/custom.xsd"/>
<!-- Element type declarations -->
<!-- Learning Object Metadata -->
<xs:complexType name="lom">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="general"/>
<xs:group ref="lifeCycle"/>
<xs:group ref="metaMetadata"/>
<xs:group ref="technical"/>
<xs:group ref="educational"/>
<xs:group ref="rights"/>
<xs:group ref="relation"/>
<xs:group ref="annotation"/>
<xs:group ref="classification"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:lom"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 1 General -->
<xs:complexType name="general">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier"/>
<xs:group ref="title"/>
<xs:group ref="language"/>
<xs:group ref="descriptionUnbounded"/>
<xs:group ref="keyword"/>
<xs:group ref="coverage"/>
<xs:group ref="structure"/>
<xs:group ref="aggregationLevel"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:general"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 1.1 Identifier -->
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog"/>
<xs:group ref="entry"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:identifier"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 1.1.1 Catalog -->
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.1.2 Entry -->
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.2 Title -->
<xs:complexType name="title">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:title"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.3 Language -->
<xs:complexType name="language">
<xs:complexContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.4 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 1.5 Keyword -->
<xs:complexType name="keyword">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:keyword"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.6 Coverage -->
<xs:complexType name="coverage">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:coverage"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.7 Structure -->
<xs:complexType name="structure">
<xs:complexContent>
<xs:extension base="structureVocab">
<xs:attributeGroup ref="ag:structure"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.8 Aggregation Level -->
<xs:complexType name="aggregationLevel">
<xs:complexContent>
<xs:extension base="aggregationLevelVocab">
<xs:attributeGroup ref="ag:aggregationLevel"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2 Life Cycle -->
<xs:complexType name="lifeCycle">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="version"/>
<xs:group ref="status"/>
<xs:group ref="contribute"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:lifeCycle"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 2.1 Version -->
<xs:complexType name="version">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:version"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.2 Status -->
<xs:complexType name="status">
<xs:complexContent>
<xs:extension base="statusVocab">
<xs:attributeGroup ref="ag:status"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.3 Contribute -->
<xs:complexType name="contribute">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="role"/>
<xs:group ref="entityUnbounded"/>
<xs:group ref="date"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:contribute"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 2.3.1 Role -->
<xs:complexType name="role">
<xs:complexContent>
<xs:extension base="roleVocab">
<xs:attributeGroup ref="ag:role"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.3.2 Entity
<xs:complexType name="entity">
<xs:simpleContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 2.3.3 Date -->
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 3 Meta-Metadata -->
<xs:complexType name="metaMetadata">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier"/>
<xs:group ref="contributeMeta"/>
<xs:group ref="metadataSchema"/>
<xs:group ref="language"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:metaMetadata"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 3.1 Identifier
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog"/>
<xs:group ref="entry"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:identifier"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType> -->
<!-- 3.1.1 Catalog
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.1.2 Entry
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.2 Contribute -->
<xs:complexType name="contributeMeta">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="roleMeta"/>
<xs:group ref="entityUnbounded"/>
<xs:group ref="date"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:contribute"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 3.2.1 Role -->
<xs:complexType name="roleMeta">
<xs:complexContent>
<xs:extension base="roleMetaVocab">
<xs:attributeGroup ref="ag:role"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 3.2.2 Entity
<xs:complexType name="entity">
<xs:simpleContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.2.3 Date
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 3.3 Metadata Schema -->
<xs:complexType name="metadataSchema">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:metadataSchema"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 3.4 Language
<xs:complexType name="language">
<xs:simpleContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>-->
<!-- 4 Technical -->
<xs:complexType name="technical">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="format"/>
<xs:group ref="size"/>
<xs:group ref="location"/>
<xs:group ref="requirement"/>
<xs:group ref="installationRemarks"/>
<xs:group ref="otherPlatformRequirements"/>
<xs:group ref="duration"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:technical"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 4.1 Format -->
<xs:complexType name="format">
<xs:simpleContent>
<xs:extension base="MimeType">
<xs:attributeGroup ref="ag:format"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.2 Size -->
<xs:complexType name="size">
<xs:simpleContent>
<xs:extension base="Size">
<xs:attributeGroup ref="ag:size"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.3 Location -->
<xs:complexType name="location">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:location"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4 Requirement -->
<xs:complexType name="requirement">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="orComposite"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:requirement"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 4.4.1 OrComposite -->
<xs:complexType name="orComposite">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="type"/>
<xs:group ref="name"/>
<xs:group ref="minimumVersion"/>
<xs:group ref="maximumVersion"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:orComposite"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 4.4.1.1 Type -->
<xs:complexType name="type">
<xs:complexContent>
<xs:extension base="typeVocab">
<xs:attributeGroup ref="ag:type"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.4.1.2 Name -->
<xs:complexType name="name">
<xs:complexContent>
<xs:extension base="nameVocab">
<xs:attributeGroup ref="ag:name"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.4.1.3 Minimum Version -->
<xs:complexType name="minimumVersion">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:minimumVersion"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.4 Maximum Version -->
<xs:complexType name="maximumVersion">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:maximumVersion"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.5 Installation Remarks -->
<xs:complexType name="installationRemarks">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:installationRemarks"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.6 Other Platform Requirements -->
<xs:complexType name="otherPlatformRequirements">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:otherPlatformRequirements"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.7 Duration -->
<xs:complexType name="duration">
<xs:complexContent>
<xs:extension base="Duration">
<xs:attributeGroup ref="ag:duration"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5 Educational -->
<xs:complexType name="educational">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="interactivityType"/>
<xs:group ref="learningResourceType"/>
<xs:group ref="interactivityLevel"/>
<xs:group ref="semanticDensity"/>
<xs:group ref="intendedEndUserRole"/>
<xs:group ref="context"/>
<xs:group ref="typicalAgeRange"/>
<xs:group ref="difficulty"/>
<xs:group ref="typicalLearningTime"/>
<xs:group ref="descriptionUnbounded"/>
<xs:group ref="language"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:educational"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 5.1 Interactivity Type -->
<xs:complexType name="interactivityType">
<xs:complexContent>
<xs:extension base="interactivityTypeVocab">
<xs:attributeGroup ref="ag:interactivityType"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.2 Learning Resource Type -->
<xs:complexType name="learningResourceType">
<xs:complexContent>
<xs:extension base="learningResourceTypeVocab">
<xs:attributeGroup ref="ag:learningResourceType"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.3 Interactivity Level -->
<xs:complexType name="interactivityLevel">
<xs:complexContent>
<xs:extension base="interactivityLevelVocab">
<xs:attributeGroup ref="ag:interactivityLevel"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.4 Semantic Density -->
<xs:complexType name="semanticDensity">
<xs:complexContent>
<xs:extension base="semanticDensityVocab">
<xs:attributeGroup ref="ag:semanticDensity"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.5 Intended End User Role -->
<xs:complexType name="intendedEndUserRole">
<xs:complexContent>
<xs:extension base="intendedEndUserRoleVocab">
<xs:attributeGroup ref="ag:intendedEndUserRole"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.6 Context -->
<xs:complexType name="context">
<xs:complexContent>
<xs:extension base="contextVocab">
<xs:attributeGroup ref="ag:context"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.7 Typical Age Range -->
<xs:complexType name="typicalAgeRange">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:typicalAgeRange"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.8 Difficulty -->
<xs:complexType name="difficulty">
<xs:complexContent>
<xs:extension base="difficultyVocab">
<xs:attributeGroup ref="ag:difficulty"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.9 Typical Learning Time -->
<xs:complexType name="typicalLearningTime">
<xs:complexContent>
<xs:extension base="Duration">
<xs:attributeGroup ref="ag:typicalLearningTime"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.10 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 5.11 Language
<xs:complexType name="language">
<xs:simpleContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 6 Rights -->
<xs:complexType name="rights">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="cost"/>
<xs:group ref="copyrightAndOtherRestrictions"/>
<xs:group ref="description"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:rights"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 6.1 Cost -->
<xs:complexType name="cost">
<xs:complexContent>
<xs:extension base="costVocab">
<xs:attributeGroup ref="ag:cost"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:complexType name="copyrightAndOtherRestrictions">
<xs:complexContent>
<xs:extension base="copyrightAndOtherRestrictionsVocab">
<xs:attributeGroup ref="ag:copyrightAndOtherRestrictions"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 6.3 Description -->
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 7 Relation -->
<xs:complexType name="relation">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="kind"/>
<xs:group ref="resource"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:relation"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 7.1 Kind -->
<xs:complexType name="kind">
<xs:complexContent>
<xs:extension base="kindVocab">
<xs:attributeGroup ref="ag:kind"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 7.2 Resource -->
<xs:complexType name="resource">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier"/>
<xs:group ref="description"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:resource"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 7.2.1 Identifier
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog"/>
<xs:group ref="entry"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:identifier"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType> -->
<!-- 7.2.1.1 Catalog
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 7.2.1.2 Entry
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 7.2.2 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 8 Annotation -->
<xs:complexType name="annotation">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="entity"/>
<xs:group ref="date"/>
<xs:group ref="description"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:annotation"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 8.1 Entity -->
<xs:complexType name="entity">
<xs:complexContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 8.2 Date
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 8.3 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 9 Classification -->
<xs:complexType name="classification">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="purpose"/>
<xs:group ref="taxonPath"/>
<xs:group ref="description"/>
<xs:group ref="keyword"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:classification"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 9.1 Purpose -->
<xs:complexType name="purpose">
<xs:complexContent>
<xs:extension base="purposeVocab">
<xs:attributeGroup ref="ag:purpose"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.2 Taxon Path -->
<xs:complexType name="taxonPath">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="source"/>
<xs:group ref="taxon"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:taxonPath"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 9.2.1 Source -->
<xs:complexType name="source">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:source"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.2.2 Taxon -->
<xs:complexType name="taxon">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="id"/>
<xs:group ref="entryTaxon"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:taxon"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 9.2.2.1 Id -->
<xs:complexType name="id">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:id"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 9.2.2.2 Entry -->
<xs:complexType name="entryTaxon">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.3 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 9.4 Keyword
<xs:complexType name="keyword">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:keyword"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
</xs:schema>
@@ -0,0 +1,43 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion provides the element name declaration for the
root element for all LOM XML instances.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Element declarations -->
<!-- Learning Object Metadata -->
<xs:element name="lom" type="lom">
<xs:unique name="lomUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:schema>
@@ -0,0 +1,355 @@
<xs:schema xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" xmlns:ag="http://ltsc.ieee.org/xsd/imscc/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/imscc/LOM/extend" xmlns:voc="http://ltsc.ieee.org/xsd/imscc/LOM/vocab" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion provides global type declarations for those
LOM data elements whose values are taken from a Vocabulary data type.
</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>This component XSD requires schema components from other
schemas that are defined in other namespaces. These statements import the
appropriate components. The xsi:schemaLocation attribute is used to specify
the location of the file that contains the schema that defines the namespace.
The xsi:schemaLocation attribute is optional and is ommitted. By definition of
the composite schemas the appropriate namespaces and related files where those
namespaces are defined are brought into scope. Some XML parsers may require
these import statements to contain the optional xsi:schemaLocation attribute.</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique" schemaLocation="../unique/loose.xsd"/>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend" schemaLocation="../extend/custom.xsd"/>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/vocab" schemaLocation="../vocab/loose.xsd"/>
<!-- Vocabulary type declarations -->
<!-- Source -->
<xs:complexType name="sourceValue">
<xs:simpleContent>
<xs:extension base="voc:source">
<xs:attributeGroup ref="ag:source"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.7 Structure -->
<xs:complexType name="structureVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="structureValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="structureValue">
<xs:simpleContent>
<xs:extension base="voc:structure">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.8 Aggregation Level -->
<xs:complexType name="aggregationLevelVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="aggregationLevelValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="aggregationLevelValue">
<xs:simpleContent>
<xs:extension base="voc:aggregationLevel">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 2.2 Status -->
<xs:complexType name="statusVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="statusValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="statusValue">
<xs:simpleContent>
<xs:extension base="voc:status">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 2.3.1 Role -->
<xs:complexType name="roleVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="roleValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="roleValue">
<xs:simpleContent>
<xs:extension base="voc:role">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 3.2.1 Role -->
<xs:complexType name="roleMetaVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="roleMetaValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="roleMetaValue">
<xs:simpleContent>
<xs:extension base="voc:roleMeta">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.1 Type -->
<xs:complexType name="typeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="typeValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="typeValue">
<xs:simpleContent>
<xs:extension base="voc:type">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.2 Name -->
<xs:complexType name="nameVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="nameValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="nameValue">
<xs:simpleContent>
<xs:extension base="voc:name">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.1 Interactivity Type -->
<xs:complexType name="interactivityTypeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="interactivityTypeValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="interactivityTypeValue">
<xs:simpleContent>
<xs:extension base="voc:interactivityType">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.2 Learning Resource Type -->
<xs:complexType name="learningResourceTypeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="learningResourceTypeValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="learningResourceTypeValue">
<xs:simpleContent>
<xs:extension base="voc:learningResourceType">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.3 Interactivity Level -->
<xs:complexType name="interactivityLevelVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="interactivityLevelValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="interactivityLevelValue">
<xs:simpleContent>
<xs:extension base="voc:interactivityLevel">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.4 Semantic Density -->
<xs:complexType name="semanticDensityVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="semanticDensityValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="semanticDensityValue">
<xs:simpleContent>
<xs:extension base="voc:semanticDensity">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.5 Intended End User Role -->
<xs:complexType name="intendedEndUserRoleVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="intendedEndUserRoleValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="intendedEndUserRoleValue">
<xs:simpleContent>
<xs:extension base="voc:intendedEndUserRole">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.6 Context -->
<xs:complexType name="contextVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="contextValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="contextValue">
<xs:simpleContent>
<xs:extension base="voc:context">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.8 Difficulty -->
<xs:complexType name="difficultyVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="difficultyValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="difficultyValue">
<xs:simpleContent>
<xs:extension base="voc:difficulty">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 6.1 Cost -->
<xs:complexType name="costVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="costValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="costValue">
<xs:simpleContent>
<xs:extension base="voc:cost">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:complexType name="copyrightAndOtherRestrictionsVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="copyrightAndOtherRestrictionsValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="copyrightAndOtherRestrictionsValue">
<xs:simpleContent>
<xs:extension base="voc:copyrightAndOtherRestrictions">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 7.1 Kind -->
<xs:complexType name="kindVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="kindValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="kindValue">
<xs:simpleContent>
<xs:extension base="voc:kind">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 9.1 Purpose -->
<xs:complexType name="purposeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="purposeValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="purposeValue">
<xs:simpleContent>
<xs:extension base="voc:purpose">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:schema>
@@ -0,0 +1,266 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides global type declarations for the standard
LOMv1.0 vocabulary tokens for those LOM data elements whose values are taken from
a Vocabulary data type.
This component schema defintion defines the stanard vocabulary value
declarations as defined in the LOMv1.0 base schema. These vocabulary
value declarations are used in conjunction with both vocab/custom.xsd and
vocab/loose.xsd.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- LOMv1.0 base schema vocabulary source and value declarations -->
<!-- Source -->
<xs:simpleType name="sourceValues">
<xs:restriction base="xs:token">
<xs:enumeration value="LOMv1.0"/>
</xs:restriction>
</xs:simpleType>
<!-- 1.7 Structure -->
<xs:simpleType name="structureValues">
<xs:restriction base="xs:token">
<xs:enumeration value="atomic"/>
<xs:enumeration value="collection"/>
<xs:enumeration value="networked"/>
<xs:enumeration value="hierarchical"/>
<xs:enumeration value="linear"/>
</xs:restriction>
</xs:simpleType>
<!-- 1.8 Aggregation Level -->
<xs:simpleType name="aggregationLevelValues">
<xs:restriction base="xs:token">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
</xs:restriction>
</xs:simpleType>
<!-- 2.2 Status -->
<xs:simpleType name="statusValues">
<xs:restriction base="xs:token">
<xs:enumeration value="draft"/>
<xs:enumeration value="final"/>
<xs:enumeration value="revised"/>
<xs:enumeration value="unavailable"/>
</xs:restriction>
</xs:simpleType>
<!-- 2.3.1 Role -->
<xs:simpleType name="roleValues">
<xs:restriction base="xs:token">
<xs:enumeration value="author"/>
<xs:enumeration value="publisher"/>
<xs:enumeration value="unknown"/>
<xs:enumeration value="initiator"/>
<xs:enumeration value="terminator"/>
<xs:enumeration value="validator"/>
<xs:enumeration value="editor"/>
<xs:enumeration value="graphical designer"/>
<xs:enumeration value="technical implementer"/>
<xs:enumeration value="content provider"/>
<xs:enumeration value="technical validator"/>
<xs:enumeration value="educational validator"/>
<xs:enumeration value="script writer"/>
<xs:enumeration value="instructional designer"/>
<xs:enumeration value="subject matter expert"/>
</xs:restriction>
</xs:simpleType>
<!-- 3.2.1 Role -->
<xs:simpleType name="roleMetaValues">
<xs:restriction base="xs:token">
<xs:enumeration value="creator"/>
<xs:enumeration value="validator"/>
</xs:restriction>
</xs:simpleType>
<!-- 4.4.1.1 Type -->
<xs:simpleType name="typeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="operating system"/>
<xs:enumeration value="browser"/>
</xs:restriction>
</xs:simpleType>
<!-- 4.4.1.2 Name -->
<xs:simpleType name="nameValues">
<xs:restriction base="xs:token">
<xs:enumeration value="pc-dos"/>
<xs:enumeration value="ms-windows"/>
<xs:enumeration value="macos"/>
<xs:enumeration value="unix"/>
<xs:enumeration value="multi-os"/>
<xs:enumeration value="none"/>
<xs:enumeration value="any"/>
<xs:enumeration value="netscape communicator"/>
<xs:enumeration value="ms-internet explorer"/>
<xs:enumeration value="opera"/>
<xs:enumeration value="amaya"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.1 Interactivity Type -->
<xs:simpleType name="interactivityTypeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="active"/>
<xs:enumeration value="expositive"/>
<xs:enumeration value="mixed"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.2 Learning Resource Type -->
<xs:simpleType name="learningResourceTypeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="exercise"/>
<xs:enumeration value="simulation"/>
<xs:enumeration value="questionnaire"/>
<xs:enumeration value="diagram"/>
<xs:enumeration value="figure"/>
<xs:enumeration value="graph"/>
<xs:enumeration value="index"/>
<xs:enumeration value="slide"/>
<xs:enumeration value="table"/>
<xs:enumeration value="narrative text"/>
<xs:enumeration value="exam"/>
<xs:enumeration value="experiment"/>
<xs:enumeration value="problem statement"/>
<xs:enumeration value="self assessment"/>
<xs:enumeration value="lecture"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.3 Interactivity Level -->
<xs:simpleType name="interactivityLevelValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very low"/>
<xs:enumeration value="low"/>
<xs:enumeration value="medium"/>
<xs:enumeration value="high"/>
<xs:enumeration value="very high"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.4 Semantic Density -->
<xs:simpleType name="semanticDensityValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very low"/>
<xs:enumeration value="low"/>
<xs:enumeration value="medium"/>
<xs:enumeration value="high"/>
<xs:enumeration value="very high"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.5 Intended End User Role -->
<xs:simpleType name="intendedEndUserRoleValues">
<xs:restriction base="xs:token">
<xs:enumeration value="teacher"/>
<xs:enumeration value="author"/>
<xs:enumeration value="learner"/>
<xs:enumeration value="manager"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.6 Context -->
<xs:simpleType name="contextValues">
<xs:restriction base="xs:token">
<xs:enumeration value="school"/>
<xs:enumeration value="higher education"/>
<xs:enumeration value="training"/>
<xs:enumeration value="other"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.8 Difficulty -->
<xs:simpleType name="difficultyValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very easy"/>
<xs:enumeration value="easy"/>
<xs:enumeration value="medium"/>
<xs:enumeration value="difficult"/>
<xs:enumeration value="very difficult"/>
</xs:restriction>
</xs:simpleType>
<!-- 6.1 Cost -->
<xs:simpleType name="costValues">
<xs:restriction base="xs:token">
<xs:enumeration value="yes"/>
<xs:enumeration value="no"/>
</xs:restriction>
</xs:simpleType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:simpleType name="copyrightAndOtherRestrictionsValues">
<xs:restriction base="xs:token">
<xs:enumeration value="yes"/>
<xs:enumeration value="no"/>
</xs:restriction>
</xs:simpleType>
<!-- 7.1 Kind -->
<xs:simpleType name="kindValues">
<xs:restriction base="xs:token">
<xs:enumeration value="ispartof"/>
<xs:enumeration value="haspart"/>
<xs:enumeration value="isversionof"/>
<xs:enumeration value="hasversion"/>
<xs:enumeration value="isformatof"/>
<xs:enumeration value="hasformat"/>
<xs:enumeration value="references"/>
<xs:enumeration value="isreferencedby"/>
<xs:enumeration value="isbasedon"/>
<xs:enumeration value="isbasisfor"/>
<xs:enumeration value="requires"/>
<xs:enumeration value="isrequiredby"/>
</xs:restriction>
</xs:simpleType>
<!-- 9.1 Purpose -->
<xs:simpleType name="purposeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="discipline"/>
<xs:enumeration value="idea"/>
<xs:enumeration value="prerequisite"/>
<xs:enumeration value="educational objective"/>
<xs:enumeration value="accessibility restrictions"/>
<xs:enumeration value="educational level"/>
<xs:enumeration value="skill level"/>
<xs:enumeration value="security level"/>
<xs:enumeration value="competency"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,130 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** dataTypes.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ag="http://ltsc.ieee.org/xsd/imscc/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/imscc/LOM/extend" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_m_definition.xsd" />
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global schema data type declarations
for data types defined in the LOMv1.0 base schema.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique" schemaLocation="./unique/loose.xsd" />
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend" schemaLocation="./extend/custom.xsd" />
<xs:include schemaLocation="elementTypes_localised.xsd" />
<!-- Data type declarations -->
<!-- CharacterString -->
<xs:simpleType name="CharacterString">
<xs:restriction base="xs:string" />
</xs:simpleType>
<!-- LanguageId -->
<xs:complexType name="LanguageId">
<xs:simpleContent>
<xs:extension base="xs:token">
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- VCard -->
<xs:complexType name="VCard">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- MimeType -->
<xs:simpleType name="MimeType">
<xs:restriction base="CharacterString" />
</xs:simpleType>
<!-- Size -->
<xs:simpleType name="Size">
<xs:restriction base="xs:nonNegativeInteger" />
</xs:simpleType>
<!-- LanguageString -->
<xs:complexType name="LanguageString">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="string" type="LangString" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="LangString">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attribute name="language" type="xs:token" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- DateTime -->
<xs:complexType name="DateTime">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="dateTime" type="DateTimeValue" />
<xs:element name="description" type="description" />
<xs:group ref="ex:customElements" />
</xs:choice>
</xs:complexType>
<xs:complexType name="DateTimeValue">
<xs:simpleContent>
<xs:extension base="DateTimeString">
<xs:attributeGroup ref="ag:DateTimeValue" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Regular expresion from Christian Klaue -->
<xs:simpleType name="DateTimeString">
<xs:restriction base="CharacterString">
<xs:pattern value="([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3})(\-(0[1-9]|1[0-2])(\-(0[1-9]|[1-2][0-9]|3[0-1])(T([0-1][0-9]|2[0-3])(:[0-5][0-9](:[0-5][0-9](\.[0-9]{1,}(Z|((\+|\-)([0-1][0-9]|2[0-3]):[0-5][0-9]))?)?)?)?)?)?)?" />
</xs:restriction>
</xs:simpleType>
<!-- Duration -->
<xs:complexType name="Duration">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="duration" type="DurationValue" />
<xs:element name="description" type="description" />
<xs:group ref="ex:customElements" />
</xs:choice>
</xs:complexType>
<xs:complexType name="DurationValue">
<xs:simpleContent>
<xs:extension base="DurationString">
<xs:attributeGroup ref="ag:DurationValue" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Regular expresion from Christian Klaue -->
<xs:simpleType name="DurationString">
<xs:restriction base="CharacterString">
<xs:pattern value="P([0-9]{1,}Y){0,1}([0-9]{1,}M){0,1}([0-9]{1,}D){0,1}(T([0-9]{1,}H){0,1}([0-9]{1,}M){0,1}([0-9]{1,}(\.[0-9]{1,}){0,1}S){0,1}){0,1}" />
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,787 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** elementNames.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global element declarations for
each of the data elements defined in the LOMv1.0 base schema. This component
schema definition is used to check for the uniqueness of elements declared
to be unique within their parent elements by the presence of the
"uniqueElementName" attribute. The XML Schema constraint "unique" is used
to enforce uniqueness constraints.
Duplicate declarations are included as comments for completeness. These
declarations should remain commented out or they can be removed completely.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Element declarations -->
<!-- Duplicate declarations are included as comments. -->
<!-- 1 General -->
<xs:group name="general">
<xs:sequence>
<xs:element name="general" type="general">
<xs:unique name="generalUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.1 Identifier -->
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.1.1 Catalog -->
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog" />
</xs:sequence>
</xs:group>
<!-- 1.1.2 Entry -->
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry" />
</xs:sequence>
</xs:group>
<!-- 1.2 Title -->
<xs:group name="title">
<xs:sequence>
<xs:element name="title" type="title" />
</xs:sequence>
</xs:group>
<!-- 1.3 Language-->
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId" />
</xs:sequence>
</xs:group>
<!-- 1.4 Description -->
<xs:group name="descriptionUnbounded">
<xs:sequence>
<xs:element name="description" type="LanguageString" />
</xs:sequence>
</xs:group>
<!-- 1.5 Keyword -->
<xs:group name="keyword">
<xs:sequence>
<xs:element name="keyword" type="keyword" />
</xs:sequence>
</xs:group>
<!-- 1.6 Coverage -->
<xs:group name="coverage">
<xs:sequence>
<xs:element name="coverage" type="coverage" />
</xs:sequence>
</xs:group>
<!-- 1.7 Structure -->
<xs:group name="structure">
<xs:sequence>
<xs:element name="structure" type="structure">
<xs:unique name="structureUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.8 Aggregation Level -->
<xs:group name="aggregationLevel">
<xs:sequence>
<xs:element name="aggregationLevel" type="aggregationLevel">
<xs:unique name="aggregationLevelUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2 Life Cycle -->
<xs:group name="lifeCycle">
<xs:sequence>
<xs:element name="lifeCycle" type="lifeCycle">
<xs:unique name="lifeCycleUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.1 Version -->
<xs:group name="version">
<xs:sequence>
<xs:element name="version" type="version" />
</xs:sequence>
</xs:group>
<!-- 2.2 Status -->
<xs:group name="status">
<xs:sequence>
<xs:element name="status" type="status">
<xs:unique name="statusUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3 Contribute -->
<xs:group name="contribute">
<xs:sequence>
<xs:element name="contribute" type="contribute">
<xs:unique name="contributeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3.1 Role -->
<xs:group name="role">
<xs:sequence>
<xs:element name="role" type="role">
<xs:unique name="roleUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3.2 Entity -->
<xs:group name="entityUnbounded">
<xs:sequence>
<xs:element name="entity" type="VCard" />
</xs:sequence>
</xs:group>
<!-- 2.3.3 Date -->
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3 Meta-Metadata -->
<xs:group name="metaMetadata">
<xs:sequence>
<xs:element name="metaMetadata" type="metaMetadata">
<xs:unique name="metaMetadataUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.1 Identifier
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 3.1.1 Catalog
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog"/>
</xs:sequence>
</xs:group> -->
<!-- 3.1.2 Entry
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry"/>
</xs:sequence>
</xs:group> -->
<!-- 3.2 Contribute -->
<xs:group name="contributeMeta">
<xs:sequence>
<xs:element name="contribute" type="contributeMeta">
<xs:unique name="contributeMetaUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.2.1 Role -->
<xs:group name="roleMeta">
<xs:sequence>
<xs:element name="role" type="roleMeta">
<xs:unique name="roleMetaUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.2.2 Entity
<xs:group name="entityUnbounded">
<xs:sequence>
<xs:element name="entity" type="VCard"/>
</xs:sequence>
</xs:group> -->
<!-- 3.2.3 Date
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 3.3 Metadata Schema -->
<xs:group name="metadataSchema">
<xs:sequence>
<xs:element name="metadataSchema" type="metadataSchema" />
</xs:sequence>
</xs:group>
<!-- 3.4 Language
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId"/>
</xs:sequence>
</xs:group> -->
<!-- 4 Technical -->
<xs:group name="technical">
<xs:sequence>
<xs:element name="technical" type="technical">
<xs:unique name="technicalUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.1 Format -->
<xs:group name="format">
<xs:sequence>
<xs:element name="format" type="format" />
</xs:sequence>
</xs:group>
<!-- 4.2 Size -->
<xs:group name="size">
<xs:sequence>
<xs:element name="size" type="size" />
</xs:sequence>
</xs:group>
<!-- 4.3 Location -->
<xs:group name="location">
<xs:sequence>
<xs:element name="location" type="location" />
</xs:sequence>
</xs:group>
<!-- 4.4 Requirement -->
<xs:group name="requirement">
<xs:sequence>
<xs:element name="requirement" type="requirement" />
</xs:sequence>
</xs:group>
<!-- 4.4.1 OrComposite -->
<xs:group name="orComposite">
<xs:sequence>
<xs:element name="orComposite" type="orComposite">
<xs:unique name="orCompositeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.1 Type -->
<xs:group name="type">
<xs:sequence>
<xs:element name="type" type="type">
<xs:unique name="typeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.2 Name -->
<xs:group name="name">
<xs:sequence>
<xs:element name="name" type="name">
<xs:unique name="nameUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.3 Minimum Version -->
<xs:group name="minimumVersion">
<xs:sequence>
<xs:element name="minimumVersion" type="minimumVersion" />
</xs:sequence>
</xs:group>
<!-- 4.4.1.4 Maximum Version -->
<xs:group name="maximumVersion">
<xs:sequence>
<xs:element name="maximumVersion" type="maximumVersion" />
</xs:sequence>
</xs:group>
<!-- 4.5 Installation Remarks -->
<xs:group name="installationRemarks">
<xs:sequence>
<xs:element name="installationRemarks" type="installationRemarks" />
</xs:sequence>
</xs:group>
<!-- 4.6 Other Platform Requirements -->
<xs:group name="otherPlatformRequirements">
<xs:sequence>
<xs:element name="otherPlatformRequirements" type="otherPlatformRequirements" />
</xs:sequence>
</xs:group>
<!-- 4.7 Duration -->
<xs:group name="duration">
<xs:sequence>
<xs:element name="duration" type="duration">
<xs:unique name="durationUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5 Educational -->
<xs:group name="educational">
<xs:sequence>
<xs:element name="educational" type="educational">
<xs:unique name="educationalUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.1 Interactivity Type -->
<xs:group name="interactivityType">
<xs:sequence>
<xs:element name="interactivityType" type="interactivityType">
<xs:unique name="interactivityTypeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.2 Learning Resource Type -->
<xs:group name="learningResourceType">
<xs:sequence>
<xs:element name="learningResourceType" type="learningResourceType">
<xs:unique name="learningResourceTypeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.3 Interactivity Level -->
<xs:group name="interactivityLevel">
<xs:sequence>
<xs:element name="interactivityLevel" type="interactivityLevel">
<xs:unique name="interactivityLevelUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.4 Semantic Density -->
<xs:group name="semanticDensity">
<xs:sequence>
<xs:element name="semanticDensity" type="semanticDensity">
<xs:unique name="semanticDensityUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.5 Intended End User Role -->
<xs:group name="intendedEndUserRole">
<xs:sequence>
<xs:element name="intendedEndUserRole" type="intendedEndUserRole">
<xs:unique name="intendedEndUserRoleUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.6 Context -->
<xs:group name="context">
<xs:sequence>
<xs:element name="context" type="context">
<xs:unique name="contextUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.7 Typical Age Range -->
<xs:group name="typicalAgeRange">
<xs:sequence>
<xs:element name="typicalAgeRange" type="typicalAgeRange" />
</xs:sequence>
</xs:group>
<!-- 5.8 Difficulty -->
<xs:group name="difficulty">
<xs:sequence>
<xs:element name="difficulty" type="difficulty">
<xs:unique name="difficultyUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.9 Typical Learning Time -->
<xs:group name="typicalLearningTime">
<xs:sequence>
<xs:element name="typicalLearningTime" type="typicalLearningTime">
<xs:unique name="typicalLearningTimeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.10 Description
<xs:group name="descriptionUnbounded">
<xs:sequence>
<xs:element name="description" type="LanguageString"/>
</xs:sequence>
</xs:group> -->
<!-- 5.11 Language
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId"/>
</xs:sequence>
</xs:group>-->
<!-- 6 Rights -->
<xs:group name="rights">
<xs:sequence>
<xs:element name="rights" type="rights">
<xs:unique name="rightsUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.1 Cost -->
<xs:group name="cost">
<xs:sequence>
<xs:element name="cost" type="cost">
<xs:unique name="costUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:group name="copyrightAndOtherRestrictions">
<xs:sequence>
<xs:element name="copyrightAndOtherRestrictions" type="copyrightAndOtherRestrictions">
<xs:unique name="copyrightAndOtherRestrictionsUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.3 Description -->
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description" />
</xs:sequence>
</xs:group>
<!-- 7 Relation -->
<xs:group name="relation">
<xs:sequence>
<xs:element name="relation" type="relation">
<xs:unique name="relationUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 7.1 Kind -->
<xs:group name="kind">
<xs:sequence>
<xs:element name="kind" type="kind">
<xs:unique name="kindUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 7.2 Resource -->
<xs:group name="resource">
<xs:sequence>
<xs:element name="resource" type="resource" />
</xs:sequence>
</xs:group>
<!-- 7.2.1 Identifier
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 7.2.1.1 Catalog
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog"/>
</xs:sequence>
</xs:group> -->
<!-- 7.2.1.2 Entry
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry"/>
</xs:sequence>
</xs:group> -->
<!-- 7.2.2 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 8 Annotation -->
<xs:group name="annotation">
<xs:sequence>
<xs:element name="annotation" type="annotation">
<xs:unique name="annotationUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 8.1 Entity -->
<xs:group name="entity">
<xs:sequence>
<xs:element name="entity" type="entity" />
</xs:sequence>
</xs:group>
<!-- 8.2 Date
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 8.3 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 9 Classification -->
<xs:group name="classification">
<xs:sequence>
<xs:element name="classification" type="classification">
<xs:unique name="classificationUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.1 Purpose -->
<xs:group name="purpose">
<xs:sequence>
<xs:element name="purpose" type="purpose">
<xs:unique name="purposeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2 Taxon Path -->
<xs:group name="taxonPath">
<xs:sequence>
<xs:element name="taxonPath" type="taxonPath">
<xs:unique name="taxonPathUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2.1 Source -->
<xs:group name="source">
<xs:sequence>
<xs:element name="source" type="source" />
</xs:sequence>
</xs:group>
<!-- 9.2.2 Taxon -->
<xs:group name="taxon">
<xs:sequence>
<xs:element name="taxon" type="taxon">
<xs:unique name="taxonUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2.2.1 Id -->
<xs:group name="id">
<xs:sequence>
<xs:element name="id" type="id" />
</xs:sequence>
</xs:group>
<!-- 9.2.2.2 Entry -->
<xs:group name="entryTaxon">
<xs:sequence>
<xs:element name="entry" type="entryTaxon" />
</xs:sequence>
</xs:group>
<!-- 9.3 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 9.4 Keyword
<xs:group name="keyword">
<xs:sequence>
<xs:element name="keyword" type="keyword"/>
</xs:sequence>
</xs:group> -->
</xs:schema>
@@ -0,0 +1,905 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** elementTypes.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ag="http://ltsc.ieee.org/xsd/imscc/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/imscc/LOM/extend" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_m_definition.xsd" />
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global schema data type declarations
for data elements defined in the LOMv1.0 base schema. This component XSD
defines the aggregation relationship among the LOM data elements. These aggregation
relationships enforce the LOMv1.0 base schema requirement that elements can only
be present in a LOM XML instance as elements of the aggregate element to which they
belong.
Duplicate declarations are included as comments for completeness. These declarations
should remain commented out or they can be removed completely.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique" schemaLocation="./unique/loose.xsd" />
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend" schemaLocation="./extend/custom.xsd" />
<!-- Element type declarations -->
<!-- Learning Object Metadata -->
<xs:complexType name="lom">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="general" />
<xs:group ref="lifeCycle" />
<xs:group ref="metaMetadata" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: metaMetadata is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="technical" />
<xs:group ref="educational" />
<xs:group ref="rights" />
<xs:group ref="relation" />
<xs:group ref="annotation" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: lom.annotation is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="classification" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:lom" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 1 General -->
<xs:complexType name="general">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier" />
<xs:group ref="title" />
<xs:group ref="language" />
<xs:group ref="descriptionUnbounded" />
<xs:group ref="keyword" />
<xs:group ref="coverage" />
<xs:group ref="structure" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: General.structure is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="aggregationLevel" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: General.aggregationLevel is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:general" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 1.1 Identifier -->
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog" />
<xs:group ref="entry" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:identifier" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 1.1.1 Catalog -->
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.1.2 Entry -->
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.2 Title -->
<xs:complexType name="title">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:title" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.3 Language -->
<xs:complexType name="language">
<xs:complexContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.4 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 1.5 Keyword -->
<xs:complexType name="keyword">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:keyword" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.6 Coverage -->
<xs:complexType name="coverage">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:coverage" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.7 Structure -->
<xs:complexType name="structure">
<xs:complexContent>
<xs:extension base="structureVocab">
<xs:attributeGroup ref="ag:structure" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.8 Aggregation Level -->
<xs:complexType name="aggregationLevel">
<xs:complexContent>
<xs:extension base="aggregationLevelVocab">
<xs:attributeGroup ref="ag:aggregationLevel" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2 Life Cycle -->
<xs:complexType name="lifeCycle">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="version" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: liveCycle.version is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="status" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: lifeCycle.status is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="contribute" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:lifeCycle" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 2.1 Version -->
<xs:complexType name="version">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:version" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.2 Status -->
<xs:complexType name="status">
<xs:complexContent>
<xs:extension base="statusVocab">
<xs:attributeGroup ref="ag:status" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.3 Contribute -->
<xs:complexType name="contribute">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="role" />
<xs:group ref="entityUnbounded" />
<xs:group ref="date" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:contribute" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 2.3.1 Role -->
<xs:complexType name="role">
<xs:complexContent>
<xs:extension base="roleVocab">
<xs:attributeGroup ref="ag:role" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.3.2 Entity
<xs:complexType name="entity">
<xs:simpleContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 2.3.3 Date -->
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 3 Meta-Metadata -->
<xs:complexType name="metaMetadata">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier" />
<xs:group ref="contributeMeta" />
<xs:group ref="metadataSchema" />
<xs:group ref="language" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:metaMetadata" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 3.1 Identifier
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog"/>
<xs:group ref="entry"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:identifier"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType> -->
<!-- 3.1.1 Catalog
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.1.2 Entry
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.2 Contribute -->
<xs:complexType name="contributeMeta">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="roleMeta" />
<xs:group ref="entityUnbounded" />
<xs:group ref="date" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:contribute" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 3.2.1 Role -->
<xs:complexType name="roleMeta">
<xs:complexContent>
<xs:extension base="roleMetaVocab">
<xs:attributeGroup ref="ag:role" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 3.2.2 Entity
<xs:complexType name="entity">
<xs:simpleContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.2.3 Date
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 3.3 Metadata Schema -->
<xs:complexType name="metadataSchema">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:metadataSchema" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 3.4 Language
<xs:complexType name="language">
<xs:simpleContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>-->
<!-- 4 Technical -->
<xs:complexType name="technical">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="format" />
<xs:group ref="size" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: technical.size is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="location" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: technical.location is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="requirement" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: technical.requirement is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="installationRemarks" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: technical.installationRemarks is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="otherPlatformRequirements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: technical.otherPlatformRequirements is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="duration" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: technical.duration is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:technical" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 4.1 Format -->
<xs:complexType name="format">
<xs:simpleContent>
<xs:extension base="MimeType">
<xs:attributeGroup ref="ag:format" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.2 Size -->
<xs:complexType name="size">
<xs:simpleContent>
<xs:extension base="Size">
<xs:attributeGroup ref="ag:size" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.3 Location -->
<xs:complexType name="location">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:location" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4 Requirement -->
<xs:complexType name="requirement">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="orComposite" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:requirement" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 4.4.1 OrComposite -->
<xs:complexType name="orComposite">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="type" />
<xs:group ref="name" />
<xs:group ref="minimumVersion" />
<xs:group ref="maximumVersion" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:orComposite" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 4.4.1.1 Type -->
<xs:complexType name="type">
<xs:complexContent>
<xs:extension base="typeVocab">
<xs:attributeGroup ref="ag:type" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.4.1.2 Name -->
<xs:complexType name="name">
<xs:complexContent>
<xs:extension base="nameVocab">
<xs:attributeGroup ref="ag:name" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.4.1.3 Minimum Version -->
<xs:complexType name="minimumVersion">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:minimumVersion" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.4 Maximum Version -->
<xs:complexType name="maximumVersion">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:maximumVersion" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.5 Installation Remarks -->
<xs:complexType name="installationRemarks">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:installationRemarks" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.6 Other Platform Requirements -->
<xs:complexType name="otherPlatformRequirements">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:otherPlatformRequirements" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.7 Duration -->
<xs:complexType name="duration">
<xs:complexContent>
<xs:extension base="Duration">
<xs:attributeGroup ref="ag:duration" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5 Educational -->
<xs:complexType name="educational">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="interactivityType" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: interactivityType is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="learningResourceType" />
<xs:group ref="interactivityLevel" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: interactivityLevel is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="semanticDensity" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: semanticDensity is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="intendedEndUserRole" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: intendedEndUserRole is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="context" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: Context is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="typicalAgeRange" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: typicalAgeRange is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="difficulty" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: difficulty is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="typicalLearningTime" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: typicalLearningTime is unused.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="descriptionUnbounded" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: description is unused in educational context.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="language" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: language unused in technical context, only in general context.</xs:documentation>
</xs:annotation>
</xs:group>
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:educational" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 5.1 Interactivity Type -->
<xs:complexType name="interactivityType">
<xs:complexContent>
<xs:extension base="interactivityTypeVocab">
<xs:attributeGroup ref="ag:interactivityType" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.2 Learning Resource Type -->
<xs:complexType name="learningResourceTypeVocab_copy">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="learningResourceTypeValue" fixed="IMS Common Cartridge" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="learningResourceType">
<xs:complexContent>
<xs:extension base="learningResourceTypeVocab_copy">
<xs:attributeGroup ref="ag:learningResourceType" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.3 Interactivity Level -->
<xs:complexType name="interactivityLevel">
<xs:complexContent>
<xs:extension base="interactivityLevelVocab">
<xs:attributeGroup ref="ag:interactivityLevel" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.4 Semantic Density -->
<xs:complexType name="semanticDensity">
<xs:complexContent>
<xs:extension base="semanticDensityVocab">
<xs:attributeGroup ref="ag:semanticDensity" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.5 Intended End User Role -->
<xs:complexType name="intendedEndUserRole">
<xs:complexContent>
<xs:extension base="intendedEndUserRoleVocab">
<xs:attributeGroup ref="ag:intendedEndUserRole" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.6 Context -->
<xs:complexType name="context">
<xs:complexContent>
<xs:extension base="contextVocab">
<xs:attributeGroup ref="ag:context" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.7 Typical Age Range -->
<xs:complexType name="typicalAgeRange">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:typicalAgeRange" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.8 Difficulty -->
<xs:complexType name="difficulty">
<xs:complexContent>
<xs:extension base="difficultyVocab">
<xs:attributeGroup ref="ag:difficulty" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.9 Typical Learning Time -->
<xs:complexType name="typicalLearningTime">
<xs:complexContent>
<xs:extension base="Duration">
<xs:attributeGroup ref="ag:typicalLearningTime" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.10 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 5.11 Language
<xs:complexType name="language">
<xs:simpleContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 6 Rights -->
<xs:complexType name="rights">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="cost" />
<xs:group ref="copyrightAndOtherRestrictions" />
<xs:group ref="description" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:rights" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 6.1 Cost -->
<xs:complexType name="cost">
<xs:complexContent>
<xs:extension base="costVocab">
<xs:attributeGroup ref="ag:cost" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:complexType name="copyrightAndOtherRestrictions">
<xs:complexContent>
<xs:extension base="copyrightAndOtherRestrictionsVocab">
<xs:attributeGroup ref="ag:copyrightAndOtherRestrictions" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 6.3 Description -->
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 7 Relation -->
<xs:complexType name="relation">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="kind" />
<xs:group ref="resource" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:relation" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 7.1 Kind -->
<xs:complexType name="kind">
<xs:complexContent>
<xs:extension base="kindVocab">
<xs:attributeGroup ref="ag:kind" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 7.2 Resource -->
<xs:complexType name="resource">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier" />
<xs:group ref="description" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:resource" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 7.2.1 Identifier
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog"/>
<xs:group ref="entry"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:identifier"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType> -->
<!-- 7.2.1.1 Catalog
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 7.2.1.2 Entry
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 7.2.2 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 8 Annotation -->
<xs:complexType name="annotation">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="entity" />
<xs:group ref="date" />
<xs:group ref="description" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:annotation" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 8.1 Entity -->
<xs:complexType name="entity">
<xs:complexContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 8.2 Date
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 8.3 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 9 Classification -->
<xs:complexType name="classification">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="purpose" />
<xs:group ref="taxonPath" />
<xs:group ref="description" />
<xs:group ref="keyword" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:classification" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 9.1 Purpose -->
<xs:complexType name="purpose">
<xs:complexContent>
<xs:extension base="purposeVocab">
<xs:attributeGroup ref="ag:purpose" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.2 Taxon Path -->
<xs:complexType name="taxonPath">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="source" />
<xs:group ref="taxon" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:taxonPath" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 9.2.1 Source -->
<xs:complexType name="source">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:source" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.2.2 Taxon -->
<xs:complexType name="taxon">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="id" />
<xs:group ref="entryTaxon" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ag:taxon" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 9.2.2.1 Id -->
<xs:complexType name="id">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:id" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 9.2.2.2 Entry -->
<xs:complexType name="entryTaxon">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:entry" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.3 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 9.4 Keyword
<xs:complexType name="keyword">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:keyword"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
</xs:schema>
@@ -0,0 +1,52 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend"
xmlns="http://ltsc.ieee.org/xsd/imscc/LOM/extend"
xmlns:lom="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defines the XML Schema content model groups customElements
and customAttributes to support validation of extension XML elements and attributes.
This component XSD should be used if extensions are to be supported in LOM
XML instances.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM" schemaLocation="../lomLoose_localised.xsd"/>
<!-- Model group declarations -->
<xs:group name="customElements">
<xs:choice>
<xs:group ref="lom:customElements"/>
</xs:choice>
</xs:group>
<xs:attributeGroup name="customAttributes">
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:attributeGroup>
</xs:schema>
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM">
<!--****************************************************************************************-->
<!--** Definition document - this document holds AP defined simpleType elements that have **-->
<!--** been referenced through a type attribute in one of the modified, resultant schema. **-->
<!--****************************************************************************************-->
<xs:simpleType name="ImsCCType">
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve" />
<xs:enumeration value="IMS Common Cartridge" />
</xs:restriction>
</xs:simpleType>
</xsd:schema>
@@ -0,0 +1,71 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" xmlns:ag="http://ltsc.ieee.org/xsd/imscc/LOM/unique" xmlns:voc="http://ltsc.ieee.org/xsd/imscc/LOM/vocab" xmlns:ex="http://ltsc.ieee.org/xsd/imscc/LOM/extend" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This file represents a composite schema for validating
LOM XML Instances. This file is built by default to represent a
composite schema for validation of the following:
1) The use of LOMv1.0 base schema (i.e., 1484.12.1-2002) vocabulary
source/value pairs only
2) Uniqueness constraints defined by LOMv1.0 base schema
3) No existenace of any defined extensions:
LOMv1.0 base schema XML element extension,
LOMv1.0 base schema XML attribute extension and
LOMv1.0 base schema vocabulary data type extension
Alternative composite schemas can be assembled by selecting
from the various alternative component schema listed below.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Learning Object Metadata -->
<xs:include schemaLocation="common/anyElement.xsd" />
<!-- LOM data element uniqueness constraints: use one of the following -->
<!-- Use unique/loose.xsd to relax element uniqueness constraints -->
<!-- Use unique/strict.xsd to enforce element uniqueness constraints -->
<!-- <xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique"
schemaLocation="unique/loose.xsd"/> -->
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique" schemaLocation="unique/loose.xsd" />
<!-- Vocabulary value validation: use one of the following -->
<!-- Use vocab/loose.xsd to relax vocabulary value constraints -->
<!-- Use vocab/strict.xsd to enforce the LOMv1.0 base schema vocabulary values -->
<!-- Use vocab/custom.xsd to enforce custom vocabulary values -->
<!--<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/vocab"
schemaLocation="vocab/loose.xsd"/> -->
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/vocab" schemaLocation="vocab/loose.xsd" />
<!-- <xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/vocab"
schemaLocation="vocab/custom.xsd"/> -->
<!-- Extension elements/attributes support: use one of the following -->
<!-- Use extend/strict.xsd to enforce no element/attribute extension -->
<!-- Use extend/custom.xsd to allow element/attribute extension -->
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend" schemaLocation="extend/custom.xsd" />
<!--<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend"
schemaLocation="extend/custom.xsd"/> -->
<xs:include schemaLocation="common/dataTypes.xsd" />
<xs:include schemaLocation="common/elementNames.xsd" />
<xs:include schemaLocation="common/elementTypes.xsd" />
<xs:include schemaLocation="common/rootElement.xsd" />
<xs:include schemaLocation="common/vocabValues.xsd" />
<xs:include schemaLocation="common/vocabTypes.xsd" />
</xs:schema>
@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.ascc.net/xml/schematron">
<ns prefix="xs" uri="http://www.w3.org/2001/XMLSchema" />
<ns prefix="xsd" uri="http://www.w3.org/2001/XMLSchema" />
<ns prefix="xsi" uri="http://www.w3.org/2001/XMLSchema-instance" />
<ns prefix="ac" uri="http://iwm.uni-koblenz.de/xsd/tel_addc_v1p1" />
<ns prefix="ims" uri="http://www.imsglobal.org/xsd/imscc/imscp_v1p1" />
<!--***********************************************************************************************-->
<!--** Constraints document - this document holds Schematron rules that have been generated from **-->
<!--** AP condition and assertion elements. IMPORTANT: If this document exists, it MUST be **-->
<!--** used in the validation of instances derived from the resultant schema - failure to do so **-->
<!--** can result in an instance that does not conform to either the base schema or the **-->
<!--** Application Profile. **-->
<!--***********************************************************************************************-->
<pattern name="pattern_1">
<rule context="ims:organizations/ims:organization/ims:item/@identifierref | ims:manifest/ims:organizations/ims:organization/ims:item/@identifierref | @identifierref">
<assert test="(ims:organizations/ims:organization/ims:item/@identifierref | ims:manifest/ims:organizations/ims:organization/ims:item/@identifierref | @identifierref) and not (count(../item)=0)">Assertion failed for pattern_1. An Item object which represents a folder is indicated by the absence of an IdentifierRef characteristic object. Folder Items support unlimited nesting of other folder Items and learning object link Items. Learning Application Resource Item objects may be nested by folder Item object but may not nest other folder or Learning Application resource Item objects.(#S04)</assert>
</rule>
</pattern>
<pattern name="pattern_2">
<rule context="ims:resources/ims:resource/ims:dependency/@identifierref | ims:manifest/ims:resources/ims:resource/ims:dependency/@identifierref">
<assert test="(ims:resources/ims:resource/ims:dependency/@identifierref | ims:manifest/ims:resources/ims:resource/ims:dependency/@identifierref) and (../../@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and not (current() = /manifest/resources/resource[@type='webcontent']/@identifier)">Assertion failed for pattern_2. A Resource object which is a Learning Object Web Content may contain Dependency objects which reference Resource objects with Type 'webcontent'.(#S03)</assert>
</rule>
</pattern>
<pattern name="pattern_3">
<rule context="ims:organizations/ims:organization/ims:item/ims:item | ims:manifest/ims:organizations/ims:organization/ims:item/ims:item">
<assert test="(ims:organizations/ims:organization/ims:item/ims:item | ims:manifest/ims:organizations/ims:organization/ims:item/ims:item) and (@isvisible='false') and not (count(./item)=count(./item[@isvisible='false']))">Assertion failed for pattern_3. If an item is invisible, its descendants must be invisible too.(#S02)</assert>
</rule>
</pattern>
<pattern name="pattern_4">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='imsdt_xmlv1p0') and not (current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier or current()/@identifierref = /manifest/resources/resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier)">Assertion failed for pattern_4. A Resource object which is a Discussion Topic associated resource may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S12)</assert>
</rule>
</pattern>
<pattern name="pattern_5">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and not (current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier)">Assertion failed for pattern_5.
The test was: .
The context was: ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency</assert>
</rule>
</pattern>
<pattern name="pattern_6">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='imsqti_xmlv1p2/imscc_xmlv1p0/assessment') and not ((current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier) or (current()/@identifierref = /manifest/resources/resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier))">Assertion failed for pattern_6. A Resource object which is an assessment may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S14)</assert>
</rule>
</pattern>
<pattern name="pattern_7">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and ((./@type='webcontent' or ./@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and ./@identifier = //item/@identifierref) and not (count(./@href)=1)">Assertion failed for pattern_7. If a cartridge web content or associated content resource is linked from a Learning Application Object link Item object it must have an Href characteristic object which represents the launchable resource.(#S05)</assert>
</rule>
</pattern>
<pattern name="pattern_8">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and (./@type='imsdt_xmlv1p0') and not (count(./file)=1 and count(./@href)=0)">Assertion failed for pattern_8. For Discussion Topic Resources the Resource object must contain a single File object which references the Discussion Topic descriptor XML file which conforms to the http://www.imsglobal.org/xsd/imsdt_v1p0 schema. It must not have any href attribute.(#S06)</assert>
</rule>
</pattern>
<pattern name="pattern_9">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and (./@type='imswl_xmlv1p0') and not (count(./file)=1 and count(./dependency)=0 and count(./@href)=0)">Assertion failed for pattern_9. For Web Link Resources the Resource object must contain a single File object which references the Web Link descriptor XML file which conforms to the http://www.imsglobal.org/xsd/imswl_v1p0 schema. It must contain neither Dependency objects nor an href attribute.(#S07)</assert>
</rule>
</pattern>
<pattern name="pattern_10">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and ((./@type='imsqti_xmlv1p2/imscc_xmlv1p0/assessment') or (./@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank')) and not (count(./file)=1 and count(./@href)=0)">Assertion failed for pattern_10. For Assessment or Question Bank Resources the Resource object must contain a single File object which references the QTI XML file. This file must conform to the IMS CC profile of QTI 1.2.1. The profile is contained in the package of this profile as imscc_q*.xdm. The derived schema of this QTI profile is in the package of this profile with the name ims_qtiasiv1p2_localised.xsd. The resource must not have an href attribute(#S11)</assert>
</rule>
</pattern>
</schema>
@@ -0,0 +1,96 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** lomLoose_localised.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ag="http://ltsc.ieee.org/xsd/imscc/LOM/unique" xmlns:voc="http://ltsc.ieee.org/xsd/imscc/LOM/vocab" xmlns:ex="http://ltsc.ieee.org/xsd/imscc/LOM/extend" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_m_definition.xsd" />
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This file represents a composite schema for validating
LOM XML Instances. This file is built by default to represent a
composite schema for validation of the following:
1) The use of LOMv1.0 base schema (i.e., 1484.12.1-2002) vocabulary
source/value pairs only
2) Uniqueness constraints defined by LOMv1.0 base schema
3) No existenace of any defined extensions:
LOMv1.0 base schema XML element extension,
LOMv1.0 base schema XML attribute extension and
LOMv1.0 base schema vocabulary data type extension
Alternative composite schemas can be assembled by selecting
from the various alternative component schema listed below.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
<xs:documentation xml:lang="en">conformance: This profile restricts 'IEEE LOM 1.0 loose' to the elements needed to cover unqualified Dublin Core.
dc:contributor, dc:creator, dc:publisher map to lifeCycle.contribute.entity with appropriate value of lifeCycle.contribute.role,
dc:coverage maps to general.coverage,
dc:date maps to lifeCycle.contribute.date,
dc:description maps to general.description,
dc:format maps to technical.format,
dc:identifier maps to general.identifier,
dc:language maps to general.language,
dc:relation maps to Relation,
dc:rights maps to Rights,
dc:source is not mapped,
dc:subject maps to general.keyword (see also classification.keyword),
dc:title maps to general.title
dc:type maps to Educational.learningResourceType
</xs:documentation>
<xs:documentation xml:lang="en">scope: This profile is used within the Common Cartridge specification.</xs:documentation>
<xs:documentation xml:lang="en">name: IMS Common Cartridge profile of IEEE LOM V1.0 loose for unqualified Dublin Core</xs:documentation>
</xs:annotation>
<!-- Learning Object Metadata -->
<xs:include schemaLocation="anyElement_localised.xsd" />
<!-- LOM data element uniqueness constraints: use one of the following -->
<!-- Use unique/loose.xsd to relax element uniqueness constraints -->
<!-- Use unique/strict.xsd to enforce element uniqueness constraints -->
<!-- <xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique"
schemaLocation="unique/loose.xsd"/> -->
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique" schemaLocation="unique/loose.xsd" />
<!-- Vocabulary value validation: use one of the following -->
<!-- Use vocab/loose.xsd to relax vocabulary value constraints -->
<!-- Use vocab/strict.xsd to enforce the LOMv1.0 base schema vocabulary values -->
<!-- Use vocab/custom.xsd to enforce custom vocabulary values -->
<!--<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/vocab"
schemaLocation="vocab/loose.xsd"/> -->
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/vocab" schemaLocation="vocab/loose.xsd" />
<!-- <xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/vocab"
schemaLocation="vocab/custom.xsd"/> -->
<!-- Extension elements/attributes support: use one of the following -->
<!-- Use extend/strict.xsd to enforce no element/attribute extension -->
<!-- Use extend/custom.xsd to allow element/attribute extension -->
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend" schemaLocation="extend/custom.xsd" />
<!--<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend"
schemaLocation="extend/custom.xsd"/> -->
<xs:include schemaLocation="dataTypes_localised.xsd" />
<xs:include schemaLocation="elementNames_localised.xsd" />
<xs:include schemaLocation="elementTypes_localised.xsd" />
<xs:include schemaLocation="rootElement_localised.xsd" />
<xs:include schemaLocation="vocabValues_localised.xsd" />
<xs:include schemaLocation="vocabTypes_localised.xsd" />
</xs:schema>
+292
View File
@@ -0,0 +1,292 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM/unique" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides attribute group declarations for
LOM data elements to support schema-based validation of uniqueness constraints
within a LOM XML instance where the exact set of attributes associated with each
element has to be as specified by the LOM XML Schema binding (i.e., where extra
attributes to enforce uniqueness have to be avoided).
Duplicate declarations are included as comments for completeness. These
declarations should remain commented out or they can be removed completely.
NOTE: The absence of the enforcement of the uniqueness constraints does not
relieve a particular LOM XML instance from satisfying the uniqueness constraints
described in the LOMv1.0 base schema. Applications that require the use of
the unique/loose.xsd component XSD have to enforce those uniqueness constraints
by other means.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Attribute group declarations -->
<!-- Duplicate declarations are included as comments. -->
<!-- Learning Object Metadata -->
<xs:attributeGroup name="lom" />
<!-- DateTime -->
<xs:attributeGroup name="DateTimeValue" />
<!-- Duration -->
<xs:attributeGroup name="DurationValue" />
<!-- Source -->
<xs:attributeGroup name="source" />
<!-- Value -->
<xs:attributeGroup name="value" />
<!-- 1 General -->
<xs:attributeGroup name="general" />
<!-- 1.1 Identifier -->
<xs:attributeGroup name="identifier" />
<!-- 1.1.1 Catalog -->
<xs:attributeGroup name="catalog" />
<!-- 1.1.2 Entry -->
<xs:attributeGroup name="entry" />
<!-- 1.2 Title -->
<xs:attributeGroup name="title" />
<!-- 1.3 Language -->
<xs:attributeGroup name="language" />
<!-- 1.4 Description -->
<xs:attributeGroup name="description" />
<!-- 1.5 Keyword -->
<xs:attributeGroup name="keyword" />
<!-- 1.6 Coverage -->
<xs:attributeGroup name="coverage" />
<!-- 1.7 Structure -->
<xs:attributeGroup name="structure" />
<!-- 1.8 Aggregation Level -->
<xs:attributeGroup name="aggregationLevel" />
<!-- 2 Life Cycle -->
<xs:attributeGroup name="lifeCycle" />
<!-- 2.1 Version -->
<xs:attributeGroup name="version" />
<!-- 2.2 Status -->
<xs:attributeGroup name="status" />
<!-- 2.3 Contribute -->
<xs:attributeGroup name="contribute" />
<!-- 2.3.1 Role -->
<xs:attributeGroup name="role" />
<!-- 2.3.2 Entity -->
<xs:attributeGroup name="entity" />
<!-- 2.3.3 Date -->
<xs:attributeGroup name="date" />
<!-- 3 Meta-Metadata -->
<xs:attributeGroup name="metaMetadata" />
<!-- 3.1 Identifier
<xs:attributeGroup name="identifier"/> -->
<!-- 3.1.1 Catalog
<xs:attributeGroup name="catalog"/> -->
<!-- 3.1.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 3.2 Contribute
<xs:attributeGroup name="contribute"/> -->
<!-- 3.2.1 Role
<xs:attributeGroup name="role"/> -->
<!-- 3.2.2 Entity
<xs:attributeGroup name="entity"/> -->
<!-- 3.2.3 Date
<xs:attributeGroup name="date"/> -->
<!-- 3.3 Metadata Schema -->
<xs:attributeGroup name="metadataSchema" />
<!-- 3.4 Language
<xs:attributeGroup name="language"/> -->
<!-- 4 Technical -->
<xs:attributeGroup name="technical" />
<!-- 4.1 Format -->
<xs:attributeGroup name="format" />
<!-- 4.2 Size -->
<xs:attributeGroup name="size" />
<!-- 4.3 Location -->
<xs:attributeGroup name="location" />
<!-- 4.4 Requirement -->
<xs:attributeGroup name="requirement" />
<!-- 4.4.1 OrComposite -->
<xs:attributeGroup name="orComposite" />
<!-- 4.4.1.1 Type -->
<xs:attributeGroup name="type" />
<!-- 4.4.1.2 Name -->
<xs:attributeGroup name="name" />
<!-- 4.4.1.3 Minimum Version -->
<xs:attributeGroup name="minimumVersion" />
<!-- 4.4.1.4 Maximum Version -->
<xs:attributeGroup name="maximumVersion" />
<!-- 4.5 Installation Remarks -->
<xs:attributeGroup name="installationRemarks" />
<!-- 4.6 Other Platform Requirements -->
<xs:attributeGroup name="otherPlatformRequirements" />
<!-- 4.7 Duration -->
<xs:attributeGroup name="duration" />
<!-- 5 Educational -->
<xs:attributeGroup name="educational" />
<!-- 5.1 Interactivity Type -->
<xs:attributeGroup name="interactivityType" />
<!-- 5.2 Learning Resource Type -->
<xs:attributeGroup name="learningResourceType" />
<!-- 5.3 Interactivity Level -->
<xs:attributeGroup name="interactivityLevel" />
<!-- 5.4 Semantic Density -->
<xs:attributeGroup name="semanticDensity" />
<!-- 5.5 Intended End User Role -->
<xs:attributeGroup name="intendedEndUserRole" />
<!-- 5.6 Context -->
<xs:attributeGroup name="context" />
<!-- 5.7 Typical Age Range -->
<xs:attributeGroup name="typicalAgeRange" />
<!-- 5.8 Difficulty -->
<xs:attributeGroup name="difficulty" />
<!-- 5.9 Typical Learning Time -->
<xs:attributeGroup name="typicalLearningTime" />
<!-- 5.10 Description
<xs:attributeGroup name="description"/> -->
<!-- 5.11 Language
<xs:attributeGroup name="language"/> -->
<!-- 6 Rights -->
<xs:attributeGroup name="rights" />
<!-- 6.1 Cost -->
<xs:attributeGroup name="cost" />
<!-- 6.2 Copyright and Other Restrictions -->
<xs:attributeGroup name="copyrightAndOtherRestrictions" />
<!-- 6.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 7 Relation -->
<xs:attributeGroup name="relation" />
<!-- 7.1 Kind -->
<xs:attributeGroup name="kind" />
<!-- 7.2 Resource -->
<xs:attributeGroup name="resource" />
<!-- 7.2.1 Identifier
<xs:attributeGroup name="identifier"/> -->
<!-- 7.2.1.1 Catalog
<xs:attributeGroup name="catalog"/> -->
<!-- 7.2.1.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 7.2.2 Description
<xs:attributeGroup name="description"/> -->
<!-- 8 Annotation -->
<xs:attributeGroup name="annotation" />
<!-- 8.1 Entity
<xs:attributeGroup name="entity"/> -->
<!-- 8.2 Date
<xs:attributeGroup name="date"/> -->
<!-- 8.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 9 Classification -->
<xs:attributeGroup name="classification" />
<!-- 9.1 Purpose -->
<xs:attributeGroup name="purpose" />
<!-- 9.2 Taxon Path -->
<xs:attributeGroup name="taxonPath" />
<!-- 9.2.1 Source
<xs:attributeGroup name="source"/> -->
<!-- 9.2.2 Taxon -->
<xs:attributeGroup name="taxon" />
<!-- 9.2.2.1 Id -->
<xs:attributeGroup name="id" />
<!-- 9.2.2.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 9.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 9.4 Keyword
<xs:attributeGroup name="keyword"/> -->
</xs:schema>
@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** rootElement.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion provides the element name declaration for the
root element for all LOM XML instances.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Element declarations -->
<!-- Learning Object Metadata -->
<xs:element name="lom" type="lom">
<xs:unique name="lomUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:schema>
@@ -0,0 +1,295 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique"
xmlns="http://ltsc.ieee.org/xsd/imscc/LOM/unique"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides attribute group declarations for
LOM data elements to support schema-based validation of uniqueness constraints
within a LOM XML instance where the exact set of attributes associated with each
element has to be as specified by the LOM XML Schema binding (i.e., where extra
attributes to enforce uniqueness have to be avoided).
Duplicate declarations are included as comments for completeness. These
declarations should remain commented out or they can be removed completely.
NOTE: The absence of the enforcement of the uniqueness constraints does not
relieve a particular LOM XML instance from satisfying the uniqueness constraints
described in the LOMv1.0 base schema. Applications that require the use of
the unique/loose.xsd component XSD have to enforce those uniqueness constraints
by other means.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Attribute group declarations -->
<!-- Duplicate declarations are included as comments. -->
<!-- Learning Object Metadata -->
<xs:attributeGroup name="lom"/>
<!-- DateTime -->
<xs:attributeGroup name="DateTimeValue"/>
<!-- Duration -->
<xs:attributeGroup name="DurationValue"/>
<!-- Source -->
<xs:attributeGroup name="source"/>
<!-- Value -->
<xs:attributeGroup name="value"/>
<!-- 1 General -->
<xs:attributeGroup name="general"/>
<!-- 1.1 Identifier -->
<xs:attributeGroup name="identifier"/>
<!-- 1.1.1 Catalog -->
<xs:attributeGroup name="catalog"/>
<!-- 1.1.2 Entry -->
<xs:attributeGroup name="entry"/>
<!-- 1.2 Title -->
<xs:attributeGroup name="title"/>
<!-- 1.3 Language -->
<xs:attributeGroup name="language"/>
<!-- 1.4 Description -->
<xs:attributeGroup name="description"/>
<!-- 1.5 Keyword -->
<xs:attributeGroup name="keyword"/>
<!-- 1.6 Coverage -->
<xs:attributeGroup name="coverage"/>
<!-- 1.7 Structure -->
<xs:attributeGroup name="structure"/>
<!-- 1.8 Aggregation Level -->
<xs:attributeGroup name="aggregationLevel"/>
<!-- 2 Life Cycle -->
<xs:attributeGroup name="lifeCycle"/>
<!-- 2.1 Version -->
<xs:attributeGroup name="version"/>
<!-- 2.2 Status -->
<xs:attributeGroup name="status"/>
<!-- 2.3 Contribute -->
<xs:attributeGroup name="contribute"/>
<!-- 2.3.1 Role -->
<xs:attributeGroup name="role"/>
<!-- 2.3.2 Entity -->
<xs:attributeGroup name="entity"/>
<!-- 2.3.3 Date -->
<xs:attributeGroup name="date"/>
<!-- 3 Meta-Metadata -->
<xs:attributeGroup name="metaMetadata"/>
<!-- 3.1 Identifier
<xs:attributeGroup name="identifier"/> -->
<!-- 3.1.1 Catalog
<xs:attributeGroup name="catalog"/> -->
<!-- 3.1.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 3.2 Contribute
<xs:attributeGroup name="contribute"/> -->
<!-- 3.2.1 Role
<xs:attributeGroup name="role"/> -->
<!-- 3.2.2 Entity
<xs:attributeGroup name="entity"/> -->
<!-- 3.2.3 Date
<xs:attributeGroup name="date"/> -->
<!-- 3.3 Metadata Schema -->
<xs:attributeGroup name="metadataSchema"/>
<!-- 3.4 Language
<xs:attributeGroup name="language"/> -->
<!-- 4 Technical -->
<xs:attributeGroup name="technical"/>
<!-- 4.1 Format -->
<xs:attributeGroup name="format"/>
<!-- 4.2 Size -->
<xs:attributeGroup name="size"/>
<!-- 4.3 Location -->
<xs:attributeGroup name="location"/>
<!-- 4.4 Requirement -->
<xs:attributeGroup name="requirement"/>
<!-- 4.4.1 OrComposite -->
<xs:attributeGroup name="orComposite"/>
<!-- 4.4.1.1 Type -->
<xs:attributeGroup name="type"/>
<!-- 4.4.1.2 Name -->
<xs:attributeGroup name="name"/>
<!-- 4.4.1.3 Minimum Version -->
<xs:attributeGroup name="minimumVersion"/>
<!-- 4.4.1.4 Maximum Version -->
<xs:attributeGroup name="maximumVersion"/>
<!-- 4.5 Installation Remarks -->
<xs:attributeGroup name="installationRemarks"/>
<!-- 4.6 Other Platform Requirements -->
<xs:attributeGroup name="otherPlatformRequirements"/>
<!-- 4.7 Duration -->
<xs:attributeGroup name="duration"/>
<!-- 5 Educational -->
<xs:attributeGroup name="educational"/>
<!-- 5.1 Interactivity Type -->
<xs:attributeGroup name="interactivityType"/>
<!-- 5.2 Learning Resource Type -->
<xs:attributeGroup name="learningResourceType"/>
<!-- 5.3 Interactivity Level -->
<xs:attributeGroup name="interactivityLevel"/>
<!-- 5.4 Semantic Density -->
<xs:attributeGroup name="semanticDensity"/>
<!-- 5.5 Intended End User Role -->
<xs:attributeGroup name="intendedEndUserRole"/>
<!-- 5.6 Context -->
<xs:attributeGroup name="context"/>
<!-- 5.7 Typical Age Range -->
<xs:attributeGroup name="typicalAgeRange"/>
<!-- 5.8 Difficulty -->
<xs:attributeGroup name="difficulty"/>
<!-- 5.9 Typical Learning Time -->
<xs:attributeGroup name="typicalLearningTime"/>
<!-- 5.10 Description
<xs:attributeGroup name="description"/> -->
<!-- 5.11 Language
<xs:attributeGroup name="language"/> -->
<!-- 6 Rights -->
<xs:attributeGroup name="rights"/>
<!-- 6.1 Cost -->
<xs:attributeGroup name="cost"/>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:attributeGroup name="copyrightAndOtherRestrictions"/>
<!-- 6.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 7 Relation -->
<xs:attributeGroup name="relation"/>
<!-- 7.1 Kind -->
<xs:attributeGroup name="kind"/>
<!-- 7.2 Resource -->
<xs:attributeGroup name="resource"/>
<!-- 7.2.1 Identifier
<xs:attributeGroup name="identifier"/> -->
<!-- 7.2.1.1 Catalog
<xs:attributeGroup name="catalog"/> -->
<!-- 7.2.1.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 7.2.2 Description
<xs:attributeGroup name="description"/> -->
<!-- 8 Annotation -->
<xs:attributeGroup name="annotation"/>
<!-- 8.1 Entity
<xs:attributeGroup name="entity"/> -->
<!-- 8.2 Date
<xs:attributeGroup name="date"/> -->
<!-- 8.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 9 Classification -->
<xs:attributeGroup name="classification"/>
<!-- 9.1 Purpose -->
<xs:attributeGroup name="purpose"/>
<!-- 9.2 Taxon Path -->
<xs:attributeGroup name="taxonPath"/>
<!-- 9.2.1 Source
<xs:attributeGroup name="source"/> -->
<!-- 9.2.2 Taxon -->
<xs:attributeGroup name="taxon"/>
<!-- 9.2.2.1 Id -->
<xs:attributeGroup name="id"/>
<!-- 9.2.2.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 9.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 9.4 Keyword
<xs:attributeGroup name="keyword"/> -->
</xs:schema>
@@ -0,0 +1,147 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM/vocab"
xmlns="http://ltsc.ieee.org/xsd/imscc/LOM/vocab"
xmlns:lom="http://ltsc.ieee.org/xsd/imscc/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides simple type declarations for LOM
data elements that are defined as Vocabulary data types.
This component schema definition enforces that vocabulary sources and values
are character strings, which simplifies the schema validation process for those
applications that perform vocabulary source/value validation using
post-schema-validation.
This component schema definition relaxes the validation constraints by
allowing both sources and values to be arbitrary character strings.
NOTE: The absence of the enforcement of vocabulary values does not relieve a
particular LOM XML instance from satisfying vocabulary requirements defined
in the LOMv1.0 base schema. Applications that require the use of vocab/loose.xsd
component XSD should enforce those vocabulary requirements by other means.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM" schemaLocation="../lomLoose_localised.xsd"/>
<!-- Vocabulary data type declarations -->
<!-- Source -->
<xs:simpleType name="source">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 1.7 Structure -->
<xs:simpleType name="structure">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 1.8 Aggregation Level -->
<xs:simpleType name="aggregationLevel">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 2.2 Status -->
<xs:simpleType name="status">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 2.3.1 Role -->
<xs:simpleType name="role">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 3.2.1 Role -->
<xs:simpleType name="roleMeta">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 4.4.1.1 Type -->
<xs:simpleType name="type">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 4.4.1.2 Name -->
<xs:simpleType name="name">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.1 Interactivity Type -->
<xs:simpleType name="interactivityType">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.2 Learning Resource Type -->
<xs:simpleType name="learningResourceType">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.3 Interactivity Level -->
<xs:simpleType name="interactivityLevel">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.4 Semantic Density -->
<xs:simpleType name="semanticDensity">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.5 Intended End User Role -->
<xs:simpleType name="intendedEndUserRole">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.6 Context -->
<xs:simpleType name="context">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.8 Difficulty -->
<xs:simpleType name="difficulty">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 6.1 Cost -->
<xs:simpleType name="cost">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:simpleType name="copyrightAndOtherRestrictions">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 7.1 Kind -->
<xs:simpleType name="kind">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 9.1 Purpose -->
<xs:simpleType name="purpose">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,379 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** vocabTypes.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ag="http://ltsc.ieee.org/xsd/imscc/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/imscc/LOM/extend" xmlns:voc="http://ltsc.ieee.org/xsd/imscc/LOM/vocab" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_m_definition.xsd" />
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion provides global type declarations for those
LOM data elements whose values are taken from a Vocabulary data type.
</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>This component XSD requires schema components from other
schemas that are defined in other namespaces. These statements import the
appropriate components. The xsi:schemaLocation attribute is used to specify
the location of the file that contains the schema that defines the namespace.
The xsi:schemaLocation attribute is optional and is ommitted. By definition of
the composite schemas the appropriate namespaces and related files where those
namespaces are defined are brought into scope. Some XML parsers may require
these import statements to contain the optional xsi:schemaLocation attribute.</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/unique" schemaLocation="./unique/loose.xsd" />
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/extend" schemaLocation="./extend/custom.xsd" />
<xs:import namespace="http://ltsc.ieee.org/xsd/imscc/LOM/vocab" schemaLocation="./vocab/loose.xsd" />
<!-- Vocabulary type declarations -->
<!-- Source -->
<xs:complexType name="sourceValue">
<xs:simpleContent>
<xs:extension base="voc:source">
<xs:attributeGroup ref="ag:source" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.7 Structure -->
<xs:complexType name="structureVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="structureValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="structureValue">
<xs:simpleContent>
<xs:extension base="voc:structure">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.8 Aggregation Level -->
<xs:complexType name="aggregationLevelVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="aggregationLevelValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="aggregationLevelValue">
<xs:simpleContent>
<xs:extension base="voc:aggregationLevel">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 2.2 Status -->
<xs:complexType name="statusVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="statusValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="statusValue">
<xs:simpleContent>
<xs:extension base="voc:status">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 2.3.1 Role -->
<xs:complexType name="roleVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="roleValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="roleValue">
<xs:simpleContent>
<xs:extension base="voc:role">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 3.2.1 Role -->
<xs:complexType name="roleMetaVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="roleMetaValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="roleMetaValue">
<xs:simpleContent>
<xs:extension base="voc:roleMeta">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.1 Type -->
<xs:complexType name="typeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="typeValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="typeValue">
<xs:simpleContent>
<xs:extension base="voc:type">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.2 Name -->
<xs:complexType name="nameVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="nameValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="nameValue">
<xs:simpleContent>
<xs:extension base="voc:name">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.1 Interactivity Type -->
<xs:complexType name="interactivityTypeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="interactivityTypeValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="interactivityTypeValue">
<xs:simpleContent>
<xs:extension base="voc:interactivityType">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.2 Learning Resource Type -->
<xs:complexType name="learningResourceTypeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="learningResourceTypeValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="learningResourceTypeValue">
<xs:simpleContent>
<xs:annotation>
<xs:documentation xml:lang="en">explanation: learningResourceType must be 'IMS Common Cartridge'</xs:documentation>
</xs:annotation><xs:extension base="ImsCCType">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.3 Interactivity Level -->
<xs:complexType name="interactivityLevelVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="interactivityLevelValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="interactivityLevelValue">
<xs:simpleContent>
<xs:extension base="voc:interactivityLevel">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.4 Semantic Density -->
<xs:complexType name="semanticDensityVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="semanticDensityValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="semanticDensityValue">
<xs:simpleContent>
<xs:extension base="voc:semanticDensity">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.5 Intended End User Role -->
<xs:complexType name="intendedEndUserRoleVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="intendedEndUserRoleValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="intendedEndUserRoleValue">
<xs:simpleContent>
<xs:extension base="voc:intendedEndUserRole">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.6 Context -->
<xs:complexType name="contextVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="contextValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="contextValue">
<xs:simpleContent>
<xs:extension base="voc:context">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.8 Difficulty -->
<xs:complexType name="difficultyVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="difficultyValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="difficultyValue">
<xs:simpleContent>
<xs:extension base="voc:difficulty">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 6.1 Cost -->
<xs:complexType name="costVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="costValue" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="costValue">
<xs:simpleContent>
<xs:extension base="voc:cost">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:complexType name="copyrightAndOtherRestrictionsVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="copyrightAndOtherRestrictionsValue" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="copyrightAndOtherRestrictionsValue">
<xs:simpleContent>
<xs:extension base="voc:copyrightAndOtherRestrictions">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 7.1 Kind -->
<xs:complexType name="kindVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="kindValue" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="kindValue">
<xs:simpleContent>
<xs:extension base="voc:kind">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 9.1 Purpose -->
<xs:complexType name="purposeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="purposeValue" />
<xs:group ref="ex:customElements" minOccurs="0" maxOccurs="0"><xs:annotation>
<xs:documentation xml:lang="en">explanation: No custom elements are allowed.</xs:documentation>
</xs:annotation>
</xs:group>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="purposeValue">
<xs:simpleContent>
<xs:extension base="voc:purpose">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:schema>
@@ -0,0 +1,270 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** vocabValues.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/imscc/LOM" targetNamespace="http://ltsc.ieee.org/xsd/imscc/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides global type declarations for the standard
LOMv1.0 vocabulary tokens for those LOM data elements whose values are taken from
a Vocabulary data type.
This component schema defintion defines the stanard vocabulary value
declarations as defined in the LOMv1.0 base schema. These vocabulary
value declarations are used in conjunction with both vocab/custom.xsd and
vocab/loose.xsd.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- LOMv1.0 base schema vocabulary source and value declarations -->
<!-- Source -->
<xs:simpleType name="sourceValues">
<xs:restriction base="xs:token">
<xs:enumeration value="LOMv1.0" />
</xs:restriction>
</xs:simpleType>
<!-- 1.7 Structure -->
<xs:simpleType name="structureValues">
<xs:restriction base="xs:token">
<xs:enumeration value="atomic" />
<xs:enumeration value="collection" />
<xs:enumeration value="networked" />
<xs:enumeration value="hierarchical" />
<xs:enumeration value="linear" />
</xs:restriction>
</xs:simpleType>
<!-- 1.8 Aggregation Level -->
<xs:simpleType name="aggregationLevelValues">
<xs:restriction base="xs:token">
<xs:enumeration value="1" />
<xs:enumeration value="2" />
<xs:enumeration value="3" />
<xs:enumeration value="4" />
</xs:restriction>
</xs:simpleType>
<!-- 2.2 Status -->
<xs:simpleType name="statusValues">
<xs:restriction base="xs:token">
<xs:enumeration value="draft" />
<xs:enumeration value="final" />
<xs:enumeration value="revised" />
<xs:enumeration value="unavailable" />
</xs:restriction>
</xs:simpleType>
<!-- 2.3.1 Role -->
<xs:simpleType name="roleValues">
<xs:restriction base="xs:token">
<xs:enumeration value="author" />
<xs:enumeration value="publisher" />
<xs:enumeration value="unknown" />
<xs:enumeration value="initiator" />
<xs:enumeration value="terminator" />
<xs:enumeration value="validator" />
<xs:enumeration value="editor" />
<xs:enumeration value="graphical designer" />
<xs:enumeration value="technical implementer" />
<xs:enumeration value="content provider" />
<xs:enumeration value="technical validator" />
<xs:enumeration value="educational validator" />
<xs:enumeration value="script writer" />
<xs:enumeration value="instructional designer" />
<xs:enumeration value="subject matter expert" />
</xs:restriction>
</xs:simpleType>
<!-- 3.2.1 Role -->
<xs:simpleType name="roleMetaValues">
<xs:restriction base="xs:token">
<xs:enumeration value="creator" />
<xs:enumeration value="validator" />
</xs:restriction>
</xs:simpleType>
<!-- 4.4.1.1 Type -->
<xs:simpleType name="typeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="operating system" />
<xs:enumeration value="browser" />
</xs:restriction>
</xs:simpleType>
<!-- 4.4.1.2 Name -->
<xs:simpleType name="nameValues">
<xs:restriction base="xs:token">
<xs:enumeration value="pc-dos" />
<xs:enumeration value="ms-windows" />
<xs:enumeration value="macos" />
<xs:enumeration value="unix" />
<xs:enumeration value="multi-os" />
<xs:enumeration value="none" />
<xs:enumeration value="any" />
<xs:enumeration value="netscape communicator" />
<xs:enumeration value="ms-internet explorer" />
<xs:enumeration value="opera" />
<xs:enumeration value="amaya" />
</xs:restriction>
</xs:simpleType>
<!-- 5.1 Interactivity Type -->
<xs:simpleType name="interactivityTypeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="active" />
<xs:enumeration value="expositive" />
<xs:enumeration value="mixed" />
</xs:restriction>
</xs:simpleType>
<!-- 5.2 Learning Resource Type -->
<xs:simpleType name="learningResourceTypeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="exercise" />
<xs:enumeration value="simulation" />
<xs:enumeration value="questionnaire" />
<xs:enumeration value="diagram" />
<xs:enumeration value="figure" />
<xs:enumeration value="graph" />
<xs:enumeration value="index" />
<xs:enumeration value="slide" />
<xs:enumeration value="table" />
<xs:enumeration value="narrative text" />
<xs:enumeration value="exam" />
<xs:enumeration value="experiment" />
<xs:enumeration value="problem statement" />
<xs:enumeration value="self assessment" />
<xs:enumeration value="lecture" />
</xs:restriction>
</xs:simpleType>
<!-- 5.3 Interactivity Level -->
<xs:simpleType name="interactivityLevelValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very low" />
<xs:enumeration value="low" />
<xs:enumeration value="medium" />
<xs:enumeration value="high" />
<xs:enumeration value="very high" />
</xs:restriction>
</xs:simpleType>
<!-- 5.4 Semantic Density -->
<xs:simpleType name="semanticDensityValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very low" />
<xs:enumeration value="low" />
<xs:enumeration value="medium" />
<xs:enumeration value="high" />
<xs:enumeration value="very high" />
</xs:restriction>
</xs:simpleType>
<!-- 5.5 Intended End User Role -->
<xs:simpleType name="intendedEndUserRoleValues">
<xs:restriction base="xs:token">
<xs:enumeration value="teacher" />
<xs:enumeration value="author" />
<xs:enumeration value="learner" />
<xs:enumeration value="manager" />
</xs:restriction>
</xs:simpleType>
<!-- 5.6 Context -->
<xs:simpleType name="contextValues">
<xs:restriction base="xs:token">
<xs:enumeration value="school" />
<xs:enumeration value="higher education" />
<xs:enumeration value="training" />
<xs:enumeration value="other" />
</xs:restriction>
</xs:simpleType>
<!-- 5.8 Difficulty -->
<xs:simpleType name="difficultyValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very easy" />
<xs:enumeration value="easy" />
<xs:enumeration value="medium" />
<xs:enumeration value="difficult" />
<xs:enumeration value="very difficult" />
</xs:restriction>
</xs:simpleType>
<!-- 6.1 Cost -->
<xs:simpleType name="costValues">
<xs:restriction base="xs:token">
<xs:enumeration value="yes" />
<xs:enumeration value="no" />
</xs:restriction>
</xs:simpleType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:simpleType name="copyrightAndOtherRestrictionsValues">
<xs:restriction base="xs:token">
<xs:enumeration value="yes" />
<xs:enumeration value="no" />
</xs:restriction>
</xs:simpleType>
<!-- 7.1 Kind -->
<xs:simpleType name="kindValues">
<xs:restriction base="xs:token">
<xs:enumeration value="ispartof" />
<xs:enumeration value="haspart" />
<xs:enumeration value="isversionof" />
<xs:enumeration value="hasversion" />
<xs:enumeration value="isformatof" />
<xs:enumeration value="hasformat" />
<xs:enumeration value="references" />
<xs:enumeration value="isreferencedby" />
<xs:enumeration value="isbasedon" />
<xs:enumeration value="isbasisfor" />
<xs:enumeration value="requires" />
<xs:enumeration value="isrequiredby" />
</xs:restriction>
</xs:simpleType>
<!-- 9.1 Purpose -->
<xs:simpleType name="purposeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="discipline" />
<xs:enumeration value="idea" />
<xs:enumeration value="prerequisite" />
<xs:enumeration value="educational objective" />
<xs:enumeration value="accessibility restrictions" />
<xs:enumeration value="educational level" />
<xs:enumeration value="skill level" />
<xs:enumeration value="security level" />
<xs:enumeration value="competency" />
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/LOM" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides the element group declaration and the
attribute group declaration used for extension XML elements and attributes.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:group name="customElements">
<xs:choice>
<xs:any namespace="##other" processContents="lax" />
</xs:choice>
</xs:group>
</xs:schema>
@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** anyElement.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/LOM" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_mR_definition.xsd" />
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides the element group declaration and the
attribute group declaration used for extension XML elements and attributes.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:group name="customElements">
<xs:choice>
<xs:any namespace="##other" processContents="lax" />
</xs:choice>
</xs:group>
</xs:schema>
@@ -0,0 +1,39 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/LOM"
xmlns="http://ltsc.ieee.org/xsd/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides the element group declaration and the
attribute group declaration used for extension XML elements and attributes.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:group name="customElements">
<xs:choice>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:group>
</xs:schema>
@@ -0,0 +1,118 @@
<xs:schema xmlns="http://ltsc.ieee.org/xsd/LOM" xmlns:ag="http://ltsc.ieee.org/xsd/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/LOM/extend" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global schema data type declarations
for data types defined in the LOMv1.0 base schema.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/unique" schemaLocation="../unique/loose.xsd"/>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/extend" schemaLocation="../extend/custom.xsd"/>
<xs:include schemaLocation="elementTypes.xsd"/>
<!-- Data type declarations -->
<!-- CharacterString -->
<xs:simpleType name="CharacterString">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- LanguageId -->
<xs:complexType name="LanguageId">
<xs:simpleContent>
<xs:extension base="xs:token">
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- VCard -->
<xs:complexType name="VCard">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- MimeType -->
<xs:simpleType name="MimeType">
<xs:restriction base="CharacterString"/>
</xs:simpleType>
<!-- Size -->
<xs:simpleType name="Size">
<xs:restriction base="xs:nonNegativeInteger"/>
</xs:simpleType>
<!-- LanguageString -->
<xs:complexType name="LanguageString">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="string" type="LangString"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="LangString">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attribute name="language" type="xs:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- DateTime -->
<xs:complexType name="DateTime">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="dateTime" type="DateTimeValue"/>
<xs:element name="description" type="description"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="DateTimeValue">
<xs:simpleContent>
<xs:extension base="DateTimeString">
<xs:attributeGroup ref="ag:DateTimeValue"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Regular expresion from Christian Klaue -->
<xs:simpleType name="DateTimeString">
<xs:restriction base="CharacterString">
<xs:pattern value="([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3})(\-(0[1-9]|1[0-2])(\-(0[1-9]|[1-2][0-9]|3[0-1])(T([0-1][0-9]|2[0-3])(:[0-5][0-9](:[0-5][0-9](\.[0-9]{1,}(Z|((\+|\-)([0-1][0-9]|2[0-3]):[0-5][0-9]))?)?)?)?)?)?)?"/>
</xs:restriction>
</xs:simpleType>
<!-- Duration -->
<xs:complexType name="Duration">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="duration" type="DurationValue"/>
<xs:element name="description" type="description"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="DurationValue">
<xs:simpleContent>
<xs:extension base="DurationString">
<xs:attributeGroup ref="ag:DurationValue"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Regular expresion from Christian Klaue -->
<xs:simpleType name="DurationString">
<xs:restriction base="CharacterString">
<xs:pattern value="P([0-9]{1,}Y){0,1}([0-9]{1,}M){0,1}([0-9]{1,}D){0,1}(T([0-9]{1,}H){0,1}([0-9]{1,}M){0,1}([0-9]{1,}(\.[0-9]{1,}){0,1}S){0,1}){0,1}"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,783 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/LOM"
xmlns="http://ltsc.ieee.org/xsd/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global element declarations for
each of the data elements defined in the LOMv1.0 base schema. This component
schema definition is used to check for the uniqueness of elements declared
to be unique within their parent elements by the presence of the
"uniqueElementName" attribute. The XML Schema constraint "unique" is used
to enforce uniqueness constraints.
Duplicate declarations are included as comments for completeness. These
declarations should remain commented out or they can be removed completely.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Element declarations -->
<!-- Duplicate declarations are included as comments. -->
<!-- 1 General -->
<xs:group name="general">
<xs:sequence>
<xs:element name="general" type="general">
<xs:unique name="generalUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.1 Identifier -->
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.1.1 Catalog -->
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog"/>
</xs:sequence>
</xs:group>
<!-- 1.1.2 Entry -->
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry"/>
</xs:sequence>
</xs:group>
<!-- 1.2 Title -->
<xs:group name="title">
<xs:sequence>
<xs:element name="title" type="title"/>
</xs:sequence>
</xs:group>
<!-- 1.3 Language-->
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId"/>
</xs:sequence>
</xs:group>
<!-- 1.4 Description -->
<xs:group name="descriptionUnbounded">
<xs:sequence>
<xs:element name="description" type="LanguageString"/>
</xs:sequence>
</xs:group>
<!-- 1.5 Keyword -->
<xs:group name="keyword">
<xs:sequence>
<xs:element name="keyword" type="keyword"/>
</xs:sequence>
</xs:group>
<!-- 1.6 Coverage -->
<xs:group name="coverage">
<xs:sequence>
<xs:element name="coverage" type="coverage"/>
</xs:sequence>
</xs:group>
<!-- 1.7 Structure -->
<xs:group name="structure">
<xs:sequence>
<xs:element name="structure" type="structure">
<xs:unique name="structureUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.8 Aggregation Level -->
<xs:group name="aggregationLevel">
<xs:sequence>
<xs:element name="aggregationLevel" type="aggregationLevel">
<xs:unique name="aggregationLevelUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2 Life Cycle -->
<xs:group name="lifeCycle">
<xs:sequence>
<xs:element name="lifeCycle" type="lifeCycle">
<xs:unique name="lifeCycleUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.1 Version -->
<xs:group name="version">
<xs:sequence>
<xs:element name="version" type="version"/>
</xs:sequence>
</xs:group>
<!-- 2.2 Status -->
<xs:group name="status">
<xs:sequence>
<xs:element name="status" type="status">
<xs:unique name="statusUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3 Contribute -->
<xs:group name="contribute">
<xs:sequence>
<xs:element name="contribute" type="contribute">
<xs:unique name="contributeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3.1 Role -->
<xs:group name="role">
<xs:sequence>
<xs:element name="role" type="role">
<xs:unique name="roleUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3.2 Entity -->
<xs:group name="entityUnbounded">
<xs:sequence>
<xs:element name="entity" type="VCard"/>
</xs:sequence>
</xs:group>
<!-- 2.3.3 Date -->
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3 Meta-Metadata -->
<xs:group name="metaMetadata">
<xs:sequence>
<xs:element name="metaMetadata" type="metaMetadata">
<xs:unique name="metaMetadataUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.1 Identifier
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 3.1.1 Catalog
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog"/>
</xs:sequence>
</xs:group> -->
<!-- 3.1.2 Entry
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry"/>
</xs:sequence>
</xs:group> -->
<!-- 3.2 Contribute -->
<xs:group name="contributeMeta">
<xs:sequence>
<xs:element name="contribute" type="contributeMeta">
<xs:unique name="contributeMetaUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.2.1 Role -->
<xs:group name="roleMeta">
<xs:sequence>
<xs:element name="role" type="roleMeta">
<xs:unique name="roleMetaUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.2.2 Entity
<xs:group name="entityUnbounded">
<xs:sequence>
<xs:element name="entity" type="VCard"/>
</xs:sequence>
</xs:group> -->
<!-- 3.2.3 Date
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 3.3 Metadata Schema -->
<xs:group name="metadataSchema">
<xs:sequence>
<xs:element name="metadataSchema" type="metadataSchema"/>
</xs:sequence>
</xs:group>
<!-- 3.4 Language
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId"/>
</xs:sequence>
</xs:group> -->
<!-- 4 Technical -->
<xs:group name="technical">
<xs:sequence>
<xs:element name="technical" type="technical">
<xs:unique name="technicalUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.1 Format -->
<xs:group name="format">
<xs:sequence>
<xs:element name="format" type="format"/>
</xs:sequence>
</xs:group>
<!-- 4.2 Size -->
<xs:group name="size">
<xs:sequence>
<xs:element name="size" type="size"/>
</xs:sequence>
</xs:group>
<!-- 4.3 Location -->
<xs:group name="location">
<xs:sequence>
<xs:element name="location" type="location"/>
</xs:sequence>
</xs:group>
<!-- 4.4 Requirement -->
<xs:group name="requirement">
<xs:sequence>
<xs:element name="requirement" type="requirement"/>
</xs:sequence>
</xs:group>
<!-- 4.4.1 OrComposite -->
<xs:group name="orComposite">
<xs:sequence>
<xs:element name="orComposite" type="orComposite">
<xs:unique name="orCompositeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.1 Type -->
<xs:group name="type">
<xs:sequence>
<xs:element name="type" type="type">
<xs:unique name="typeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.2 Name -->
<xs:group name="name">
<xs:sequence>
<xs:element name="name" type="name">
<xs:unique name="nameUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.3 Minimum Version -->
<xs:group name="minimumVersion">
<xs:sequence>
<xs:element name="minimumVersion" type="minimumVersion"/>
</xs:sequence>
</xs:group>
<!-- 4.4.1.4 Maximum Version -->
<xs:group name="maximumVersion">
<xs:sequence>
<xs:element name="maximumVersion" type="maximumVersion"/>
</xs:sequence>
</xs:group>
<!-- 4.5 Installation Remarks -->
<xs:group name="installationRemarks">
<xs:sequence>
<xs:element name="installationRemarks" type="installationRemarks"/>
</xs:sequence>
</xs:group>
<!-- 4.6 Other Platform Requirements -->
<xs:group name="otherPlatformRequirements">
<xs:sequence>
<xs:element name="otherPlatformRequirements" type="otherPlatformRequirements"/>
</xs:sequence>
</xs:group>
<!-- 4.7 Duration -->
<xs:group name="duration">
<xs:sequence>
<xs:element name="duration" type="duration">
<xs:unique name="durationUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5 Educational -->
<xs:group name="educational">
<xs:sequence>
<xs:element name="educational" type="educational">
<xs:unique name="educationalUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.1 Interactivity Type -->
<xs:group name="interactivityType">
<xs:sequence>
<xs:element name="interactivityType" type="interactivityType">
<xs:unique name="interactivityTypeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.2 Learning Resource Type -->
<xs:group name="learningResourceType">
<xs:sequence>
<xs:element name="learningResourceType" type="learningResourceType">
<xs:unique name="learningResourceTypeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.3 Interactivity Level -->
<xs:group name="interactivityLevel">
<xs:sequence>
<xs:element name="interactivityLevel" type="interactivityLevel">
<xs:unique name="interactivityLevelUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.4 Semantic Density -->
<xs:group name="semanticDensity">
<xs:sequence>
<xs:element name="semanticDensity" type="semanticDensity">
<xs:unique name="semanticDensityUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.5 Intended End User Role -->
<xs:group name="intendedEndUserRole">
<xs:sequence>
<xs:element name="intendedEndUserRole" type="intendedEndUserRole">
<xs:unique name="intendedEndUserRoleUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.6 Context -->
<xs:group name="context">
<xs:sequence>
<xs:element name="context" type="context">
<xs:unique name="contextUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.7 Typical Age Range -->
<xs:group name="typicalAgeRange">
<xs:sequence>
<xs:element name="typicalAgeRange" type="typicalAgeRange"/>
</xs:sequence>
</xs:group>
<!-- 5.8 Difficulty -->
<xs:group name="difficulty">
<xs:sequence>
<xs:element name="difficulty" type="difficulty">
<xs:unique name="difficultyUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.9 Typical Learning Time -->
<xs:group name="typicalLearningTime">
<xs:sequence>
<xs:element name="typicalLearningTime" type="typicalLearningTime">
<xs:unique name="typicalLearningTimeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.10 Description
<xs:group name="descriptionUnbounded">
<xs:sequence>
<xs:element name="description" type="LanguageString"/>
</xs:sequence>
</xs:group> -->
<!-- 5.11 Language
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId"/>
</xs:sequence>
</xs:group>-->
<!-- 6 Rights -->
<xs:group name="rights">
<xs:sequence>
<xs:element name="rights" type="rights">
<xs:unique name="rightsUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.1 Cost -->
<xs:group name="cost">
<xs:sequence>
<xs:element name="cost" type="cost">
<xs:unique name="costUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:group name="copyrightAndOtherRestrictions">
<xs:sequence>
<xs:element name="copyrightAndOtherRestrictions" type="copyrightAndOtherRestrictions">
<xs:unique name="copyrightAndOtherRestrictionsUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.3 Description -->
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group>
<!-- 7 Relation -->
<xs:group name="relation">
<xs:sequence>
<xs:element name="relation" type="relation">
<xs:unique name="relationUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 7.1 Kind -->
<xs:group name="kind">
<xs:sequence>
<xs:element name="kind" type="kind">
<xs:unique name="kindUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 7.2 Resource -->
<xs:group name="resource">
<xs:sequence>
<xs:element name="resource" type="resource"/>
</xs:sequence>
</xs:group>
<!-- 7.2.1 Identifier
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 7.2.1.1 Catalog
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog"/>
</xs:sequence>
</xs:group> -->
<!-- 7.2.1.2 Entry
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry"/>
</xs:sequence>
</xs:group> -->
<!-- 7.2.2 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 8 Annotation -->
<xs:group name="annotation">
<xs:sequence>
<xs:element name="annotation" type="annotation">
<xs:unique name="annotationUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 8.1 Entity -->
<xs:group name="entity">
<xs:sequence>
<xs:element name="entity" type="entity"/>
</xs:sequence>
</xs:group>
<!-- 8.2 Date
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 8.3 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 9 Classification -->
<xs:group name="classification">
<xs:sequence>
<xs:element name="classification" type="classification">
<xs:unique name="classificationUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.1 Purpose -->
<xs:group name="purpose">
<xs:sequence>
<xs:element name="purpose" type="purpose">
<xs:unique name="purposeUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2 Taxon Path -->
<xs:group name="taxonPath">
<xs:sequence>
<xs:element name="taxonPath" type="taxonPath">
<xs:unique name="taxonPathUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2.1 Source -->
<xs:group name="source">
<xs:sequence>
<xs:element name="source" type="source"/>
</xs:sequence>
</xs:group>
<!-- 9.2.2 Taxon -->
<xs:group name="taxon">
<xs:sequence>
<xs:element name="taxon" type="taxon">
<xs:unique name="taxonUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2.2.1 Id -->
<xs:group name="id">
<xs:sequence>
<xs:element name="id" type="id"/>
</xs:sequence>
</xs:group>
<!-- 9.2.2.2 Entry -->
<xs:group name="entryTaxon">
<xs:sequence>
<xs:element name="entry" type="entryTaxon"/>
</xs:sequence>
</xs:group>
<!-- 9.3 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 9.4 Keyword
<xs:group name="keyword">
<xs:sequence>
<xs:element name="keyword" type="keyword"/>
</xs:sequence>
</xs:group> -->
</xs:schema>
@@ -0,0 +1,779 @@
<xs:schema xmlns="http://ltsc.ieee.org/xsd/LOM" xmlns:ag="http://ltsc.ieee.org/xsd/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/LOM/extend" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global schema data type declarations
for data elements defined in the LOMv1.0 base schema. This component XSD
defines the aggregation relationship among the LOM data elements. These aggregation
relationships enforce the LOMv1.0 base schema requirement that elements can only
be present in a LOM XML instance as elements of the aggregate element to which they
belong.
Duplicate declarations are included as comments for completeness. These declarations
should remain commented out or they can be removed completely.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/unique" schemaLocation="../unique/loose.xsd"/>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/extend" schemaLocation="../extend/custom.xsd"/>
<!-- Element type declarations -->
<!-- Learning Object Metadata -->
<xs:complexType name="lom">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="general"/>
<xs:group ref="lifeCycle"/>
<xs:group ref="metaMetadata"/>
<xs:group ref="technical"/>
<xs:group ref="educational"/>
<xs:group ref="rights"/>
<xs:group ref="relation"/>
<xs:group ref="annotation"/>
<xs:group ref="classification"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:lom"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 1 General -->
<xs:complexType name="general">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier"/>
<xs:group ref="title"/>
<xs:group ref="language"/>
<xs:group ref="descriptionUnbounded"/>
<xs:group ref="keyword"/>
<xs:group ref="coverage"/>
<xs:group ref="structure"/>
<xs:group ref="aggregationLevel"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:general"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 1.1 Identifier -->
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog"/>
<xs:group ref="entry"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:identifier"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 1.1.1 Catalog -->
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.1.2 Entry -->
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.2 Title -->
<xs:complexType name="title">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:title"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.3 Language -->
<xs:complexType name="language">
<xs:complexContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.4 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 1.5 Keyword -->
<xs:complexType name="keyword">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:keyword"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.6 Coverage -->
<xs:complexType name="coverage">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:coverage"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.7 Structure -->
<xs:complexType name="structure">
<xs:complexContent>
<xs:extension base="structureVocab">
<xs:attributeGroup ref="ag:structure"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.8 Aggregation Level -->
<xs:complexType name="aggregationLevel">
<xs:complexContent>
<xs:extension base="aggregationLevelVocab">
<xs:attributeGroup ref="ag:aggregationLevel"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2 Life Cycle -->
<xs:complexType name="lifeCycle">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="version"/>
<xs:group ref="status"/>
<xs:group ref="contribute"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:lifeCycle"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 2.1 Version -->
<xs:complexType name="version">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:version"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.2 Status -->
<xs:complexType name="status">
<xs:complexContent>
<xs:extension base="statusVocab">
<xs:attributeGroup ref="ag:status"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.3 Contribute -->
<xs:complexType name="contribute">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="role"/>
<xs:group ref="entityUnbounded"/>
<xs:group ref="date"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:contribute"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 2.3.1 Role -->
<xs:complexType name="role">
<xs:complexContent>
<xs:extension base="roleVocab">
<xs:attributeGroup ref="ag:role"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.3.2 Entity
<xs:complexType name="entity">
<xs:simpleContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 2.3.3 Date -->
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 3 Meta-Metadata -->
<xs:complexType name="metaMetadata">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier"/>
<xs:group ref="contributeMeta"/>
<xs:group ref="metadataSchema"/>
<xs:group ref="language"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:metaMetadata"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 3.1 Identifier
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog"/>
<xs:group ref="entry"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:identifier"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType> -->
<!-- 3.1.1 Catalog
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.1.2 Entry
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.2 Contribute -->
<xs:complexType name="contributeMeta">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="roleMeta"/>
<xs:group ref="entityUnbounded"/>
<xs:group ref="date"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:contribute"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 3.2.1 Role -->
<xs:complexType name="roleMeta">
<xs:complexContent>
<xs:extension base="roleMetaVocab">
<xs:attributeGroup ref="ag:role"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 3.2.2 Entity
<xs:complexType name="entity">
<xs:simpleContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.2.3 Date
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 3.3 Metadata Schema -->
<xs:complexType name="metadataSchema">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:metadataSchema"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 3.4 Language
<xs:complexType name="language">
<xs:simpleContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>-->
<!-- 4 Technical -->
<xs:complexType name="technical">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="format"/>
<xs:group ref="size"/>
<xs:group ref="location"/>
<xs:group ref="requirement"/>
<xs:group ref="installationRemarks"/>
<xs:group ref="otherPlatformRequirements"/>
<xs:group ref="duration"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:technical"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 4.1 Format -->
<xs:complexType name="format">
<xs:simpleContent>
<xs:extension base="MimeType">
<xs:attributeGroup ref="ag:format"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.2 Size -->
<xs:complexType name="size">
<xs:simpleContent>
<xs:extension base="Size">
<xs:attributeGroup ref="ag:size"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.3 Location -->
<xs:complexType name="location">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:location"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4 Requirement -->
<xs:complexType name="requirement">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="orComposite"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:requirement"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 4.4.1 OrComposite -->
<xs:complexType name="orComposite">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="type"/>
<xs:group ref="name"/>
<xs:group ref="minimumVersion"/>
<xs:group ref="maximumVersion"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:orComposite"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 4.4.1.1 Type -->
<xs:complexType name="type">
<xs:complexContent>
<xs:extension base="typeVocab">
<xs:attributeGroup ref="ag:type"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.4.1.2 Name -->
<xs:complexType name="name">
<xs:complexContent>
<xs:extension base="nameVocab">
<xs:attributeGroup ref="ag:name"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.4.1.3 Minimum Version -->
<xs:complexType name="minimumVersion">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:minimumVersion"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.4 Maximum Version -->
<xs:complexType name="maximumVersion">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:maximumVersion"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.5 Installation Remarks -->
<xs:complexType name="installationRemarks">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:installationRemarks"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.6 Other Platform Requirements -->
<xs:complexType name="otherPlatformRequirements">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:otherPlatformRequirements"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.7 Duration -->
<xs:complexType name="duration">
<xs:complexContent>
<xs:extension base="Duration">
<xs:attributeGroup ref="ag:duration"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5 Educational -->
<xs:complexType name="educational">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="interactivityType"/>
<xs:group ref="learningResourceType"/>
<xs:group ref="interactivityLevel"/>
<xs:group ref="semanticDensity"/>
<xs:group ref="intendedEndUserRole"/>
<xs:group ref="context"/>
<xs:group ref="typicalAgeRange"/>
<xs:group ref="difficulty"/>
<xs:group ref="typicalLearningTime"/>
<xs:group ref="descriptionUnbounded"/>
<xs:group ref="language"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:educational"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 5.1 Interactivity Type -->
<xs:complexType name="interactivityType">
<xs:complexContent>
<xs:extension base="interactivityTypeVocab">
<xs:attributeGroup ref="ag:interactivityType"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.2 Learning Resource Type -->
<xs:complexType name="learningResourceType">
<xs:complexContent>
<xs:extension base="learningResourceTypeVocab">
<xs:attributeGroup ref="ag:learningResourceType"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.3 Interactivity Level -->
<xs:complexType name="interactivityLevel">
<xs:complexContent>
<xs:extension base="interactivityLevelVocab">
<xs:attributeGroup ref="ag:interactivityLevel"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.4 Semantic Density -->
<xs:complexType name="semanticDensity">
<xs:complexContent>
<xs:extension base="semanticDensityVocab">
<xs:attributeGroup ref="ag:semanticDensity"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.5 Intended End User Role -->
<xs:complexType name="intendedEndUserRole">
<xs:complexContent>
<xs:extension base="intendedEndUserRoleVocab">
<xs:attributeGroup ref="ag:intendedEndUserRole"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.6 Context -->
<xs:complexType name="context">
<xs:complexContent>
<xs:extension base="contextVocab">
<xs:attributeGroup ref="ag:context"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.7 Typical Age Range -->
<xs:complexType name="typicalAgeRange">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:typicalAgeRange"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.8 Difficulty -->
<xs:complexType name="difficulty">
<xs:complexContent>
<xs:extension base="difficultyVocab">
<xs:attributeGroup ref="ag:difficulty"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.9 Typical Learning Time -->
<xs:complexType name="typicalLearningTime">
<xs:complexContent>
<xs:extension base="Duration">
<xs:attributeGroup ref="ag:typicalLearningTime"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.10 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 5.11 Language
<xs:complexType name="language">
<xs:simpleContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 6 Rights -->
<xs:complexType name="rights">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="cost"/>
<xs:group ref="copyrightAndOtherRestrictions"/>
<xs:group ref="description"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:rights"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 6.1 Cost -->
<xs:complexType name="cost">
<xs:complexContent>
<xs:extension base="costVocab">
<xs:attributeGroup ref="ag:cost"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:complexType name="copyrightAndOtherRestrictions">
<xs:complexContent>
<xs:extension base="copyrightAndOtherRestrictionsVocab">
<xs:attributeGroup ref="ag:copyrightAndOtherRestrictions"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 6.3 Description -->
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 7 Relation -->
<xs:complexType name="relation">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="kind"/>
<xs:group ref="resource"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:relation"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 7.1 Kind -->
<xs:complexType name="kind">
<xs:complexContent>
<xs:extension base="kindVocab">
<xs:attributeGroup ref="ag:kind"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 7.2 Resource -->
<xs:complexType name="resource">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier"/>
<xs:group ref="description"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:resource"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 7.2.1 Identifier
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog"/>
<xs:group ref="entry"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:identifier"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType> -->
<!-- 7.2.1.1 Catalog
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 7.2.1.2 Entry
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 7.2.2 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 8 Annotation -->
<xs:complexType name="annotation">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="entity"/>
<xs:group ref="date"/>
<xs:group ref="description"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:annotation"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 8.1 Entity -->
<xs:complexType name="entity">
<xs:complexContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 8.2 Date
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 8.3 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 9 Classification -->
<xs:complexType name="classification">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="purpose"/>
<xs:group ref="taxonPath"/>
<xs:group ref="description"/>
<xs:group ref="keyword"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:classification"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 9.1 Purpose -->
<xs:complexType name="purpose">
<xs:complexContent>
<xs:extension base="purposeVocab">
<xs:attributeGroup ref="ag:purpose"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.2 Taxon Path -->
<xs:complexType name="taxonPath">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="source"/>
<xs:group ref="taxon"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:taxonPath"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 9.2.1 Source -->
<xs:complexType name="source">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:source"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.2.2 Taxon -->
<xs:complexType name="taxon">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="id"/>
<xs:group ref="entryTaxon"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:taxon"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<!-- 9.2.2.1 Id -->
<xs:complexType name="id">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:id"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 9.2.2.2 Entry -->
<xs:complexType name="entryTaxon">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.3 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 9.4 Keyword
<xs:complexType name="keyword">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:keyword"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
</xs:schema>
@@ -0,0 +1,43 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/LOM"
xmlns="http://ltsc.ieee.org/xsd/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion provides the element name declaration for the
root element for all LOM XML instances.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Element declarations -->
<!-- Learning Object Metadata -->
<xs:element name="lom" type="lom">
<xs:unique name="lomUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:schema>
@@ -0,0 +1,355 @@
<xs:schema xmlns="http://ltsc.ieee.org/xsd/LOM" xmlns:ag="http://ltsc.ieee.org/xsd/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/LOM/extend" xmlns:voc="http://ltsc.ieee.org/xsd/LOM/vocab" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion provides global type declarations for those
LOM data elements whose values are taken from a Vocabulary data type.
</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>This component XSD requires schema components from other
schemas that are defined in other namespaces. These statements import the
appropriate components. The xsi:schemaLocation attribute is used to specify
the location of the file that contains the schema that defines the namespace.
The xsi:schemaLocation attribute is optional and is ommitted. By definition of
the composite schemas the appropriate namespaces and related files where those
namespaces are defined are brought into scope. Some XML parsers may require
these import statements to contain the optional xsi:schemaLocation attribute.</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/unique" schemaLocation="../unique/loose.xsd"/>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/extend" schemaLocation="../extend/custom.xsd"/>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/vocab" schemaLocation="../vocab/loose.xsd"/>
<!-- Vocabulary type declarations -->
<!-- Source -->
<xs:complexType name="sourceValue">
<xs:simpleContent>
<xs:extension base="voc:source">
<xs:attributeGroup ref="ag:source"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.7 Structure -->
<xs:complexType name="structureVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="structureValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="structureValue">
<xs:simpleContent>
<xs:extension base="voc:structure">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.8 Aggregation Level -->
<xs:complexType name="aggregationLevelVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="aggregationLevelValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="aggregationLevelValue">
<xs:simpleContent>
<xs:extension base="voc:aggregationLevel">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 2.2 Status -->
<xs:complexType name="statusVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="statusValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="statusValue">
<xs:simpleContent>
<xs:extension base="voc:status">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 2.3.1 Role -->
<xs:complexType name="roleVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="roleValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="roleValue">
<xs:simpleContent>
<xs:extension base="voc:role">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 3.2.1 Role -->
<xs:complexType name="roleMetaVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="roleMetaValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="roleMetaValue">
<xs:simpleContent>
<xs:extension base="voc:roleMeta">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.1 Type -->
<xs:complexType name="typeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="typeValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="typeValue">
<xs:simpleContent>
<xs:extension base="voc:type">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.2 Name -->
<xs:complexType name="nameVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="nameValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="nameValue">
<xs:simpleContent>
<xs:extension base="voc:name">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.1 Interactivity Type -->
<xs:complexType name="interactivityTypeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="interactivityTypeValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="interactivityTypeValue">
<xs:simpleContent>
<xs:extension base="voc:interactivityType">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.2 Learning Resource Type -->
<xs:complexType name="learningResourceTypeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="learningResourceTypeValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="learningResourceTypeValue">
<xs:simpleContent>
<xs:extension base="voc:learningResourceType">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.3 Interactivity Level -->
<xs:complexType name="interactivityLevelVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="interactivityLevelValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="interactivityLevelValue">
<xs:simpleContent>
<xs:extension base="voc:interactivityLevel">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.4 Semantic Density -->
<xs:complexType name="semanticDensityVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="semanticDensityValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="semanticDensityValue">
<xs:simpleContent>
<xs:extension base="voc:semanticDensity">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.5 Intended End User Role -->
<xs:complexType name="intendedEndUserRoleVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="intendedEndUserRoleValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="intendedEndUserRoleValue">
<xs:simpleContent>
<xs:extension base="voc:intendedEndUserRole">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.6 Context -->
<xs:complexType name="contextVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="contextValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="contextValue">
<xs:simpleContent>
<xs:extension base="voc:context">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.8 Difficulty -->
<xs:complexType name="difficultyVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="difficultyValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="difficultyValue">
<xs:simpleContent>
<xs:extension base="voc:difficulty">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 6.1 Cost -->
<xs:complexType name="costVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="costValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="costValue">
<xs:simpleContent>
<xs:extension base="voc:cost">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:complexType name="copyrightAndOtherRestrictionsVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="copyrightAndOtherRestrictionsValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="copyrightAndOtherRestrictionsValue">
<xs:simpleContent>
<xs:extension base="voc:copyrightAndOtherRestrictions">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 7.1 Kind -->
<xs:complexType name="kindVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="kindValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="kindValue">
<xs:simpleContent>
<xs:extension base="voc:kind">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 9.1 Purpose -->
<xs:complexType name="purposeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue"/>
<xs:element name="value" type="purposeValue"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType>
<xs:complexType name="purposeValue">
<xs:simpleContent>
<xs:extension base="voc:purpose">
<xs:attributeGroup ref="ag:value"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:schema>
@@ -0,0 +1,266 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/LOM"
xmlns="http://ltsc.ieee.org/xsd/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides global type declarations for the standard
LOMv1.0 vocabulary tokens for those LOM data elements whose values are taken from
a Vocabulary data type.
This component schema defintion defines the stanard vocabulary value
declarations as defined in the LOMv1.0 base schema. These vocabulary
value declarations are used in conjunction with both vocab/custom.xsd and
vocab/loose.xsd.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- LOMv1.0 base schema vocabulary source and value declarations -->
<!-- Source -->
<xs:simpleType name="sourceValues">
<xs:restriction base="xs:token">
<xs:enumeration value="LOMv1.0"/>
</xs:restriction>
</xs:simpleType>
<!-- 1.7 Structure -->
<xs:simpleType name="structureValues">
<xs:restriction base="xs:token">
<xs:enumeration value="atomic"/>
<xs:enumeration value="collection"/>
<xs:enumeration value="networked"/>
<xs:enumeration value="hierarchical"/>
<xs:enumeration value="linear"/>
</xs:restriction>
</xs:simpleType>
<!-- 1.8 Aggregation Level -->
<xs:simpleType name="aggregationLevelValues">
<xs:restriction base="xs:token">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
</xs:restriction>
</xs:simpleType>
<!-- 2.2 Status -->
<xs:simpleType name="statusValues">
<xs:restriction base="xs:token">
<xs:enumeration value="draft"/>
<xs:enumeration value="final"/>
<xs:enumeration value="revised"/>
<xs:enumeration value="unavailable"/>
</xs:restriction>
</xs:simpleType>
<!-- 2.3.1 Role -->
<xs:simpleType name="roleValues">
<xs:restriction base="xs:token">
<xs:enumeration value="author"/>
<xs:enumeration value="publisher"/>
<xs:enumeration value="unknown"/>
<xs:enumeration value="initiator"/>
<xs:enumeration value="terminator"/>
<xs:enumeration value="validator"/>
<xs:enumeration value="editor"/>
<xs:enumeration value="graphical designer"/>
<xs:enumeration value="technical implementer"/>
<xs:enumeration value="content provider"/>
<xs:enumeration value="technical validator"/>
<xs:enumeration value="educational validator"/>
<xs:enumeration value="script writer"/>
<xs:enumeration value="instructional designer"/>
<xs:enumeration value="subject matter expert"/>
</xs:restriction>
</xs:simpleType>
<!-- 3.2.1 Role -->
<xs:simpleType name="roleMetaValues">
<xs:restriction base="xs:token">
<xs:enumeration value="creator"/>
<xs:enumeration value="validator"/>
</xs:restriction>
</xs:simpleType>
<!-- 4.4.1.1 Type -->
<xs:simpleType name="typeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="operating system"/>
<xs:enumeration value="browser"/>
</xs:restriction>
</xs:simpleType>
<!-- 4.4.1.2 Name -->
<xs:simpleType name="nameValues">
<xs:restriction base="xs:token">
<xs:enumeration value="pc-dos"/>
<xs:enumeration value="ms-windows"/>
<xs:enumeration value="macos"/>
<xs:enumeration value="unix"/>
<xs:enumeration value="multi-os"/>
<xs:enumeration value="none"/>
<xs:enumeration value="any"/>
<xs:enumeration value="netscape communicator"/>
<xs:enumeration value="ms-internet explorer"/>
<xs:enumeration value="opera"/>
<xs:enumeration value="amaya"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.1 Interactivity Type -->
<xs:simpleType name="interactivityTypeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="active"/>
<xs:enumeration value="expositive"/>
<xs:enumeration value="mixed"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.2 Learning Resource Type -->
<xs:simpleType name="learningResourceTypeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="exercise"/>
<xs:enumeration value="simulation"/>
<xs:enumeration value="questionnaire"/>
<xs:enumeration value="diagram"/>
<xs:enumeration value="figure"/>
<xs:enumeration value="graph"/>
<xs:enumeration value="index"/>
<xs:enumeration value="slide"/>
<xs:enumeration value="table"/>
<xs:enumeration value="narrative text"/>
<xs:enumeration value="exam"/>
<xs:enumeration value="experiment"/>
<xs:enumeration value="problem statement"/>
<xs:enumeration value="self assessment"/>
<xs:enumeration value="lecture"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.3 Interactivity Level -->
<xs:simpleType name="interactivityLevelValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very low"/>
<xs:enumeration value="low"/>
<xs:enumeration value="medium"/>
<xs:enumeration value="high"/>
<xs:enumeration value="very high"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.4 Semantic Density -->
<xs:simpleType name="semanticDensityValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very low"/>
<xs:enumeration value="low"/>
<xs:enumeration value="medium"/>
<xs:enumeration value="high"/>
<xs:enumeration value="very high"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.5 Intended End User Role -->
<xs:simpleType name="intendedEndUserRoleValues">
<xs:restriction base="xs:token">
<xs:enumeration value="teacher"/>
<xs:enumeration value="author"/>
<xs:enumeration value="learner"/>
<xs:enumeration value="manager"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.6 Context -->
<xs:simpleType name="contextValues">
<xs:restriction base="xs:token">
<xs:enumeration value="school"/>
<xs:enumeration value="higher education"/>
<xs:enumeration value="training"/>
<xs:enumeration value="other"/>
</xs:restriction>
</xs:simpleType>
<!-- 5.8 Difficulty -->
<xs:simpleType name="difficultyValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very easy"/>
<xs:enumeration value="easy"/>
<xs:enumeration value="medium"/>
<xs:enumeration value="difficult"/>
<xs:enumeration value="very difficult"/>
</xs:restriction>
</xs:simpleType>
<!-- 6.1 Cost -->
<xs:simpleType name="costValues">
<xs:restriction base="xs:token">
<xs:enumeration value="yes"/>
<xs:enumeration value="no"/>
</xs:restriction>
</xs:simpleType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:simpleType name="copyrightAndOtherRestrictionsValues">
<xs:restriction base="xs:token">
<xs:enumeration value="yes"/>
<xs:enumeration value="no"/>
</xs:restriction>
</xs:simpleType>
<!-- 7.1 Kind -->
<xs:simpleType name="kindValues">
<xs:restriction base="xs:token">
<xs:enumeration value="ispartof"/>
<xs:enumeration value="haspart"/>
<xs:enumeration value="isversionof"/>
<xs:enumeration value="hasversion"/>
<xs:enumeration value="isformatof"/>
<xs:enumeration value="hasformat"/>
<xs:enumeration value="references"/>
<xs:enumeration value="isreferencedby"/>
<xs:enumeration value="isbasedon"/>
<xs:enumeration value="isbasisfor"/>
<xs:enumeration value="requires"/>
<xs:enumeration value="isrequiredby"/>
</xs:restriction>
</xs:simpleType>
<!-- 9.1 Purpose -->
<xs:simpleType name="purposeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="discipline"/>
<xs:enumeration value="idea"/>
<xs:enumeration value="prerequisite"/>
<xs:enumeration value="educational objective"/>
<xs:enumeration value="accessibility restrictions"/>
<xs:enumeration value="educational level"/>
<xs:enumeration value="skill level"/>
<xs:enumeration value="security level"/>
<xs:enumeration value="competency"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,127 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** dataTypes.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ag="http://ltsc.ieee.org/xsd/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/LOM/extend" xmlns="http://ltsc.ieee.org/xsd/LOM" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_mR_definition.xsd" />
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global schema data type declarations
for data types defined in the LOMv1.0 base schema.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/unique" schemaLocation="./unique/loose.xsd" />
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/extend" schemaLocation="./extend/custom.xsd" />
<xs:include schemaLocation="elementTypes_localised.xsd" />
<!-- Data type declarations -->
<!-- CharacterString -->
<xs:simpleType name="CharacterString">
<xs:restriction base="xs:string" />
</xs:simpleType>
<!-- LanguageId -->
<xs:complexType name="LanguageId">
<xs:simpleContent>
<xs:extension base="xs:token">
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- VCard -->
<xs:complexType name="VCard">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- MimeType -->
<xs:simpleType name="MimeType">
<xs:restriction base="CharacterString" />
</xs:simpleType>
<!-- Size -->
<xs:simpleType name="Size">
<xs:restriction base="xs:nonNegativeInteger" />
</xs:simpleType>
<!-- LanguageString -->
<xs:complexType name="LanguageString">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="string" type="LangString" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="LangString">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attribute name="language" type="xs:token" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- DateTime -->
<xs:complexType name="DateTime">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="dateTime" type="DateTimeValue" />
<xs:element name="description" type="description" />
<xs:group ref="ex:customElements" />
</xs:choice>
</xs:complexType>
<xs:complexType name="DateTimeValue">
<xs:simpleContent>
<xs:extension base="DateTimeString">
<xs:attributeGroup ref="ag:DateTimeValue" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Regular expresion from Christian Klaue -->
<xs:simpleType name="DateTimeString">
<xs:restriction base="CharacterString">
<xs:pattern value="([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3})(\-(0[1-9]|1[0-2])(\-(0[1-9]|[1-2][0-9]|3[0-1])(T([0-1][0-9]|2[0-3])(:[0-5][0-9](:[0-5][0-9](\.[0-9]{1,}(Z|((\+|\-)([0-1][0-9]|2[0-3]):[0-5][0-9]))?)?)?)?)?)?)?" />
</xs:restriction>
</xs:simpleType>
<!-- Duration -->
<xs:complexType name="Duration">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="duration" type="DurationValue" />
<xs:element name="description" type="description" />
<xs:group ref="ex:customElements" />
</xs:choice>
</xs:complexType>
<xs:complexType name="DurationValue">
<xs:simpleContent>
<xs:extension base="DurationString">
<xs:attributeGroup ref="ag:DurationValue" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Regular expresion from Christian Klaue -->
<xs:simpleType name="DurationString">
<xs:restriction base="CharacterString">
<xs:pattern value="P([0-9]{1,}Y){0,1}([0-9]{1,}M){0,1}([0-9]{1,}D){0,1}(T([0-9]{1,}H){0,1}([0-9]{1,}M){0,1}([0-9]{1,}(\.[0-9]{1,}){0,1}S){0,1}){0,1}" />
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,787 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** elementNames.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/LOM" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global element declarations for
each of the data elements defined in the LOMv1.0 base schema. This component
schema definition is used to check for the uniqueness of elements declared
to be unique within their parent elements by the presence of the
"uniqueElementName" attribute. The XML Schema constraint "unique" is used
to enforce uniqueness constraints.
Duplicate declarations are included as comments for completeness. These
declarations should remain commented out or they can be removed completely.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Element declarations -->
<!-- Duplicate declarations are included as comments. -->
<!-- 1 General -->
<xs:group name="general">
<xs:sequence>
<xs:element name="general" type="general">
<xs:unique name="generalUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.1 Identifier -->
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.1.1 Catalog -->
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog" />
</xs:sequence>
</xs:group>
<!-- 1.1.2 Entry -->
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry" />
</xs:sequence>
</xs:group>
<!-- 1.2 Title -->
<xs:group name="title">
<xs:sequence>
<xs:element name="title" type="title" />
</xs:sequence>
</xs:group>
<!-- 1.3 Language-->
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId" />
</xs:sequence>
</xs:group>
<!-- 1.4 Description -->
<xs:group name="descriptionUnbounded">
<xs:sequence>
<xs:element name="description" type="LanguageString" />
</xs:sequence>
</xs:group>
<!-- 1.5 Keyword -->
<xs:group name="keyword">
<xs:sequence>
<xs:element name="keyword" type="keyword" />
</xs:sequence>
</xs:group>
<!-- 1.6 Coverage -->
<xs:group name="coverage">
<xs:sequence>
<xs:element name="coverage" type="coverage" />
</xs:sequence>
</xs:group>
<!-- 1.7 Structure -->
<xs:group name="structure">
<xs:sequence>
<xs:element name="structure" type="structure">
<xs:unique name="structureUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 1.8 Aggregation Level -->
<xs:group name="aggregationLevel">
<xs:sequence>
<xs:element name="aggregationLevel" type="aggregationLevel">
<xs:unique name="aggregationLevelUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2 Life Cycle -->
<xs:group name="lifeCycle">
<xs:sequence>
<xs:element name="lifeCycle" type="lifeCycle">
<xs:unique name="lifeCycleUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.1 Version -->
<xs:group name="version">
<xs:sequence>
<xs:element name="version" type="version" />
</xs:sequence>
</xs:group>
<!-- 2.2 Status -->
<xs:group name="status">
<xs:sequence>
<xs:element name="status" type="status">
<xs:unique name="statusUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3 Contribute -->
<xs:group name="contribute">
<xs:sequence>
<xs:element name="contribute" type="contribute">
<xs:unique name="contributeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3.1 Role -->
<xs:group name="role">
<xs:sequence>
<xs:element name="role" type="role">
<xs:unique name="roleUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 2.3.2 Entity -->
<xs:group name="entityUnbounded">
<xs:sequence>
<xs:element name="entity" type="VCard" />
</xs:sequence>
</xs:group>
<!-- 2.3.3 Date -->
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3 Meta-Metadata -->
<xs:group name="metaMetadata">
<xs:sequence>
<xs:element name="metaMetadata" type="metaMetadata">
<xs:unique name="metaMetadataUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.1 Identifier
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 3.1.1 Catalog
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog"/>
</xs:sequence>
</xs:group> -->
<!-- 3.1.2 Entry
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry"/>
</xs:sequence>
</xs:group> -->
<!-- 3.2 Contribute -->
<xs:group name="contributeMeta">
<xs:sequence>
<xs:element name="contribute" type="contributeMeta">
<xs:unique name="contributeMetaUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.2.1 Role -->
<xs:group name="roleMeta">
<xs:sequence>
<xs:element name="role" type="roleMeta">
<xs:unique name="roleMetaUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 3.2.2 Entity
<xs:group name="entityUnbounded">
<xs:sequence>
<xs:element name="entity" type="VCard"/>
</xs:sequence>
</xs:group> -->
<!-- 3.2.3 Date
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 3.3 Metadata Schema -->
<xs:group name="metadataSchema">
<xs:sequence>
<xs:element name="metadataSchema" type="metadataSchema" />
</xs:sequence>
</xs:group>
<!-- 3.4 Language
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId"/>
</xs:sequence>
</xs:group> -->
<!-- 4 Technical -->
<xs:group name="technical">
<xs:sequence>
<xs:element name="technical" type="technical">
<xs:unique name="technicalUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.1 Format -->
<xs:group name="format">
<xs:sequence>
<xs:element name="format" type="format" />
</xs:sequence>
</xs:group>
<!-- 4.2 Size -->
<xs:group name="size">
<xs:sequence>
<xs:element name="size" type="size" />
</xs:sequence>
</xs:group>
<!-- 4.3 Location -->
<xs:group name="location">
<xs:sequence>
<xs:element name="location" type="location" />
</xs:sequence>
</xs:group>
<!-- 4.4 Requirement -->
<xs:group name="requirement">
<xs:sequence>
<xs:element name="requirement" type="requirement" />
</xs:sequence>
</xs:group>
<!-- 4.4.1 OrComposite -->
<xs:group name="orComposite">
<xs:sequence>
<xs:element name="orComposite" type="orComposite">
<xs:unique name="orCompositeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.1 Type -->
<xs:group name="type">
<xs:sequence>
<xs:element name="type" type="type">
<xs:unique name="typeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.2 Name -->
<xs:group name="name">
<xs:sequence>
<xs:element name="name" type="name">
<xs:unique name="nameUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 4.4.1.3 Minimum Version -->
<xs:group name="minimumVersion">
<xs:sequence>
<xs:element name="minimumVersion" type="minimumVersion" />
</xs:sequence>
</xs:group>
<!-- 4.4.1.4 Maximum Version -->
<xs:group name="maximumVersion">
<xs:sequence>
<xs:element name="maximumVersion" type="maximumVersion" />
</xs:sequence>
</xs:group>
<!-- 4.5 Installation Remarks -->
<xs:group name="installationRemarks">
<xs:sequence>
<xs:element name="installationRemarks" type="installationRemarks" />
</xs:sequence>
</xs:group>
<!-- 4.6 Other Platform Requirements -->
<xs:group name="otherPlatformRequirements">
<xs:sequence>
<xs:element name="otherPlatformRequirements" type="otherPlatformRequirements" />
</xs:sequence>
</xs:group>
<!-- 4.7 Duration -->
<xs:group name="duration">
<xs:sequence>
<xs:element name="duration" type="duration">
<xs:unique name="durationUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5 Educational -->
<xs:group name="educational">
<xs:sequence>
<xs:element name="educational" type="educational">
<xs:unique name="educationalUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.1 Interactivity Type -->
<xs:group name="interactivityType">
<xs:sequence>
<xs:element name="interactivityType" type="interactivityType">
<xs:unique name="interactivityTypeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.2 Learning Resource Type -->
<xs:group name="learningResourceType">
<xs:sequence>
<xs:element name="learningResourceType" type="learningResourceType">
<xs:unique name="learningResourceTypeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.3 Interactivity Level -->
<xs:group name="interactivityLevel">
<xs:sequence>
<xs:element name="interactivityLevel" type="interactivityLevel">
<xs:unique name="interactivityLevelUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.4 Semantic Density -->
<xs:group name="semanticDensity">
<xs:sequence>
<xs:element name="semanticDensity" type="semanticDensity">
<xs:unique name="semanticDensityUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.5 Intended End User Role -->
<xs:group name="intendedEndUserRole">
<xs:sequence>
<xs:element name="intendedEndUserRole" type="intendedEndUserRole">
<xs:unique name="intendedEndUserRoleUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.6 Context -->
<xs:group name="context">
<xs:sequence>
<xs:element name="context" type="context">
<xs:unique name="contextUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.7 Typical Age Range -->
<xs:group name="typicalAgeRange">
<xs:sequence>
<xs:element name="typicalAgeRange" type="typicalAgeRange" />
</xs:sequence>
</xs:group>
<!-- 5.8 Difficulty -->
<xs:group name="difficulty">
<xs:sequence>
<xs:element name="difficulty" type="difficulty">
<xs:unique name="difficultyUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.9 Typical Learning Time -->
<xs:group name="typicalLearningTime">
<xs:sequence>
<xs:element name="typicalLearningTime" type="typicalLearningTime">
<xs:unique name="typicalLearningTimeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 5.10 Description
<xs:group name="descriptionUnbounded">
<xs:sequence>
<xs:element name="description" type="LanguageString"/>
</xs:sequence>
</xs:group> -->
<!-- 5.11 Language
<xs:group name="language">
<xs:sequence>
<xs:element name="language" type="LanguageId"/>
</xs:sequence>
</xs:group>-->
<!-- 6 Rights -->
<xs:group name="rights">
<xs:sequence>
<xs:element name="rights" type="rights">
<xs:unique name="rightsUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.1 Cost -->
<xs:group name="cost">
<xs:sequence>
<xs:element name="cost" type="cost">
<xs:unique name="costUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:group name="copyrightAndOtherRestrictions">
<xs:sequence>
<xs:element name="copyrightAndOtherRestrictions" type="copyrightAndOtherRestrictions">
<xs:unique name="copyrightAndOtherRestrictionsUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 6.3 Description -->
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description" />
</xs:sequence>
</xs:group>
<!-- 7 Relation -->
<xs:group name="relation">
<xs:sequence>
<xs:element name="relation" type="relation">
<xs:unique name="relationUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 7.1 Kind -->
<xs:group name="kind">
<xs:sequence>
<xs:element name="kind" type="kind">
<xs:unique name="kindUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 7.2 Resource -->
<xs:group name="resource">
<xs:sequence>
<xs:element name="resource" type="resource" />
</xs:sequence>
</xs:group>
<!-- 7.2.1 Identifier
<xs:group name="identifier">
<xs:sequence>
<xs:element name="identifier" type="identifier">
<xs:unique name="identifierUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 7.2.1.1 Catalog
<xs:group name="catalog">
<xs:sequence>
<xs:element name="catalog" type="catalog"/>
</xs:sequence>
</xs:group> -->
<!-- 7.2.1.2 Entry
<xs:group name="entry">
<xs:sequence>
<xs:element name="entry" type="entry"/>
</xs:sequence>
</xs:group> -->
<!-- 7.2.2 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 8 Annotation -->
<xs:group name="annotation">
<xs:sequence>
<xs:element name="annotation" type="annotation">
<xs:unique name="annotationUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 8.1 Entity -->
<xs:group name="entity">
<xs:sequence>
<xs:element name="entity" type="entity" />
</xs:sequence>
</xs:group>
<!-- 8.2 Date
<xs:group name="date">
<xs:sequence>
<xs:element name="date" type="date">
<xs:unique name="dateUnique">
<xs:selector xpath="*"/>
<xs:field xpath="@uniqueElementName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group> -->
<!-- 8.3 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 9 Classification -->
<xs:group name="classification">
<xs:sequence>
<xs:element name="classification" type="classification">
<xs:unique name="classificationUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.1 Purpose -->
<xs:group name="purpose">
<xs:sequence>
<xs:element name="purpose" type="purpose">
<xs:unique name="purposeUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2 Taxon Path -->
<xs:group name="taxonPath">
<xs:sequence>
<xs:element name="taxonPath" type="taxonPath">
<xs:unique name="taxonPathUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2.1 Source -->
<xs:group name="source">
<xs:sequence>
<xs:element name="source" type="source" />
</xs:sequence>
</xs:group>
<!-- 9.2.2 Taxon -->
<xs:group name="taxon">
<xs:sequence>
<xs:element name="taxon" type="taxon">
<xs:unique name="taxonUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:sequence>
</xs:group>
<!-- 9.2.2.1 Id -->
<xs:group name="id">
<xs:sequence>
<xs:element name="id" type="id" />
</xs:sequence>
</xs:group>
<!-- 9.2.2.2 Entry -->
<xs:group name="entryTaxon">
<xs:sequence>
<xs:element name="entry" type="entryTaxon" />
</xs:sequence>
</xs:group>
<!-- 9.3 Description
<xs:group name="description">
<xs:sequence>
<xs:element name="description" type="description"/>
</xs:sequence>
</xs:group> -->
<!-- 9.4 Keyword
<xs:group name="keyword">
<xs:sequence>
<xs:element name="keyword" type="keyword"/>
</xs:sequence>
</xs:group> -->
</xs:schema>
@@ -0,0 +1,806 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** elementTypes.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ag="http://ltsc.ieee.org/xsd/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/LOM/extend" xmlns="http://ltsc.ieee.org/xsd/LOM" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_mR_definition.xsd" />
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion defines global schema data type declarations
for data elements defined in the LOMv1.0 base schema. This component XSD
defines the aggregation relationship among the LOM data elements. These aggregation
relationships enforce the LOMv1.0 base schema requirement that elements can only
be present in a LOM XML instance as elements of the aggregate element to which they
belong.
Duplicate declarations are included as comments for completeness. These declarations
should remain commented out or they can be removed completely.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/unique" schemaLocation="./unique/loose.xsd" />
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/extend" schemaLocation="./extend/custom.xsd" />
<!-- Element type declarations -->
<!-- Learning Object Metadata -->
<xs:complexType name="lom">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="general" />
<xs:group ref="lifeCycle" />
<xs:group ref="metaMetadata" />
<xs:group ref="technical" />
<xs:group ref="educational" />
<xs:group ref="rights" />
<xs:group ref="relation" />
<xs:group ref="annotation" />
<xs:group ref="classification" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:lom" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 1 General -->
<xs:complexType name="general">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier" />
<xs:group ref="title" />
<xs:group ref="language" />
<xs:group ref="descriptionUnbounded" />
<xs:group ref="keyword" />
<xs:group ref="coverage" />
<xs:group ref="structure" />
<xs:group ref="aggregationLevel" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:general" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 1.1 Identifier -->
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog" />
<xs:group ref="entry" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:identifier" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 1.1.1 Catalog -->
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.1.2 Entry -->
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.2 Title -->
<xs:complexType name="title">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:title" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.3 Language -->
<xs:complexType name="language">
<xs:complexContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.4 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 1.5 Keyword -->
<xs:complexType name="keyword">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:keyword" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.6 Coverage -->
<xs:complexType name="coverage">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:coverage" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.7 Structure -->
<xs:complexType name="structure">
<xs:complexContent>
<xs:extension base="structureVocab">
<xs:attributeGroup ref="ag:structure" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 1.8 Aggregation Level -->
<xs:complexType name="aggregationLevel">
<xs:complexContent>
<xs:extension base="aggregationLevelVocab">
<xs:attributeGroup ref="ag:aggregationLevel" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2 Life Cycle -->
<xs:complexType name="lifeCycle">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="version" />
<xs:group ref="status" />
<xs:group ref="contribute" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:lifeCycle" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 2.1 Version -->
<xs:complexType name="version">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:version" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.2 Status -->
<xs:complexType name="status">
<xs:complexContent>
<xs:extension base="statusVocab">
<xs:attributeGroup ref="ag:status" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.3 Contribute -->
<xs:complexType name="contribute">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="role" />
<xs:group ref="entityUnbounded" />
<xs:group ref="date" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:contribute" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 2.3.1 Role -->
<xs:complexType name="role">
<xs:complexContent>
<xs:extension base="roleVocab">
<xs:attributeGroup ref="ag:role" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 2.3.2 Entity
<xs:complexType name="entity">
<xs:simpleContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 2.3.3 Date -->
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 3 Meta-Metadata -->
<xs:complexType name="metaMetadata">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier" />
<xs:group ref="contributeMeta" />
<xs:group ref="metadataSchema" />
<xs:group ref="language" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:metaMetadata" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 3.1 Identifier
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog"/>
<xs:group ref="entry"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:identifier"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType> -->
<!-- 3.1.1 Catalog
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.1.2 Entry
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.2 Contribute -->
<xs:complexType name="contributeMeta">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="roleMeta" />
<xs:group ref="entityUnbounded" />
<xs:group ref="date" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:contribute" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 3.2.1 Role -->
<xs:complexType name="roleMeta">
<xs:complexContent>
<xs:extension base="roleMetaVocab">
<xs:attributeGroup ref="ag:role" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 3.2.2 Entity
<xs:complexType name="entity">
<xs:simpleContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 3.2.3 Date
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 3.3 Metadata Schema -->
<xs:complexType name="metadataSchema">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:metadataSchema" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 3.4 Language
<xs:complexType name="language">
<xs:simpleContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>-->
<!-- 4 Technical -->
<xs:complexType name="technical">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="format" />
<xs:group ref="size" />
<xs:group ref="location" />
<xs:group ref="requirement" />
<xs:group ref="installationRemarks" />
<xs:group ref="otherPlatformRequirements" />
<xs:group ref="duration" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:technical" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 4.1 Format -->
<xs:complexType name="format">
<xs:simpleContent>
<xs:extension base="MimeType">
<xs:attributeGroup ref="ag:format" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.2 Size -->
<xs:complexType name="size">
<xs:simpleContent>
<xs:extension base="Size">
<xs:attributeGroup ref="ag:size" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.3 Location -->
<xs:complexType name="location">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:location" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4 Requirement -->
<xs:complexType name="requirement">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="orComposite" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:requirement" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 4.4.1 OrComposite -->
<xs:complexType name="orComposite">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="type" />
<xs:group ref="name" />
<xs:group ref="minimumVersion" />
<xs:group ref="maximumVersion" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:orComposite" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 4.4.1.1 Type -->
<xs:complexType name="type">
<xs:complexContent>
<xs:extension base="typeVocab">
<xs:attributeGroup ref="ag:type" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.4.1.2 Name -->
<xs:complexType name="name">
<xs:complexContent>
<xs:extension base="nameVocab">
<xs:attributeGroup ref="ag:name" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.4.1.3 Minimum Version -->
<xs:complexType name="minimumVersion">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:minimumVersion" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.4 Maximum Version -->
<xs:complexType name="maximumVersion">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:maximumVersion" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.5 Installation Remarks -->
<xs:complexType name="installationRemarks">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:installationRemarks" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.6 Other Platform Requirements -->
<xs:complexType name="otherPlatformRequirements">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:otherPlatformRequirements" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 4.7 Duration -->
<xs:complexType name="duration">
<xs:complexContent>
<xs:extension base="Duration">
<xs:attributeGroup ref="ag:duration" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5 Educational -->
<xs:complexType name="educational">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="interactivityType" />
<xs:group ref="learningResourceType" />
<xs:group ref="interactivityLevel" />
<xs:group ref="semanticDensity" />
<xs:group ref="intendedEndUserRole" />
<xs:group ref="context" />
<xs:group ref="typicalAgeRange" />
<xs:group ref="difficulty" />
<xs:group ref="typicalLearningTime" />
<xs:group ref="descriptionUnbounded" />
<xs:group ref="language" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:educational" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 5.1 Interactivity Type -->
<xs:complexType name="interactivityType">
<xs:complexContent>
<xs:extension base="interactivityTypeVocab">
<xs:attributeGroup ref="ag:interactivityType" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.2 Learning Resource Type -->
<xs:complexType name="learningResourceType">
<xs:complexContent>
<xs:extension base="learningResourceTypeVocab">
<xs:attributeGroup ref="ag:learningResourceType" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.3 Interactivity Level -->
<xs:complexType name="interactivityLevel">
<xs:complexContent>
<xs:extension base="interactivityLevelVocab">
<xs:attributeGroup ref="ag:interactivityLevel" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.4 Semantic Density -->
<xs:complexType name="semanticDensity">
<xs:complexContent>
<xs:extension base="semanticDensityVocab">
<xs:attributeGroup ref="ag:semanticDensity" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.5 Intended End User Role -->
<xs:complexType name="intendedEndUserRoleVocab_copy">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue18311" />
<xs:element name="value" type="intendedEndUserRoleValue18313" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="intendedEndUserRole">
<xs:complexContent>
<xs:extension base="intendedEndUserRoleVocab_copy">
<xs:attributeGroup ref="ag:intendedEndUserRole" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.6 Context -->
<xs:complexType name="contextVocab_copy">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue18711" />
<xs:element name="value" type="contextValue18713" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="context">
<xs:complexContent>
<xs:extension base="contextVocab_copy">
<xs:attributeGroup ref="ag:context" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.7 Typical Age Range -->
<xs:complexType name="typicalAgeRange">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:typicalAgeRange" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.8 Difficulty -->
<xs:complexType name="difficulty">
<xs:complexContent>
<xs:extension base="difficultyVocab">
<xs:attributeGroup ref="ag:difficulty" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.9 Typical Learning Time -->
<xs:complexType name="typicalLearningTime">
<xs:complexContent>
<xs:extension base="Duration">
<xs:attributeGroup ref="ag:typicalLearningTime" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 5.10 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 5.11 Language
<xs:complexType name="language">
<xs:simpleContent>
<xs:extension base="LanguageId">
<xs:attributeGroup ref="ag:language"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 6 Rights -->
<xs:complexType name="rights">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="cost" />
<xs:group ref="copyrightAndOtherRestrictions" />
<xs:group ref="description" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:rights" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 6.1 Cost -->
<xs:complexType name="cost">
<xs:complexContent>
<xs:extension base="costVocab">
<xs:attributeGroup ref="ag:cost" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:complexType name="copyrightAndOtherRestrictions">
<xs:complexContent>
<xs:extension base="copyrightAndOtherRestrictionsVocab">
<xs:attributeGroup ref="ag:copyrightAndOtherRestrictions" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 6.3 Description -->
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 7 Relation -->
<xs:complexType name="relation">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="kind" />
<xs:group ref="resource" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:relation" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 7.1 Kind -->
<xs:complexType name="kind">
<xs:complexContent>
<xs:extension base="kindVocab">
<xs:attributeGroup ref="ag:kind" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 7.2 Resource -->
<xs:complexType name="resource">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="identifier" />
<xs:group ref="description" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:resource" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 7.2.1 Identifier
<xs:complexType name="identifier">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="catalog"/>
<xs:group ref="entry"/>
<xs:group ref="ex:customElements"/>
</xs:choice>
<xs:attributeGroup ref="ag:identifier"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:complexType> -->
<!-- 7.2.1.1 Catalog
<xs:complexType name="catalog">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:catalog"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 7.2.1.2 Entry
<xs:complexType name="entry">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:entry"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType> -->
<!-- 7.2.2 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 8 Annotation -->
<xs:complexType name="annotation">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="entity" />
<xs:group ref="date" />
<xs:group ref="description" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:annotation" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 8.1 Entity -->
<xs:complexType name="entity">
<xs:complexContent>
<xs:extension base="VCard">
<xs:attributeGroup ref="ag:entity" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 8.2 Date
<xs:complexType name="date">
<xs:complexContent>
<xs:extension base="DateTime">
<xs:attributeGroup ref="ag:date"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 8.3 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 9 Classification -->
<xs:complexType name="classification">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="purpose" />
<xs:group ref="taxonPath" />
<xs:group ref="description" />
<xs:group ref="keyword" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:classification" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 9.1 Purpose -->
<xs:complexType name="purpose">
<xs:complexContent>
<xs:extension base="purposeVocab">
<xs:attributeGroup ref="ag:purpose" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.2 Taxon Path -->
<xs:complexType name="taxonPath">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="source" />
<xs:group ref="taxon" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:taxonPath" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 9.2.1 Source -->
<xs:complexType name="source">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:source" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.2.2 Taxon -->
<xs:complexType name="taxon">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:group ref="id" />
<xs:group ref="entryTaxon" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ag:taxon" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<!-- 9.2.2.1 Id -->
<xs:complexType name="id">
<xs:simpleContent>
<xs:extension base="CharacterString">
<xs:attributeGroup ref="ag:id" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 9.2.2.2 Entry -->
<xs:complexType name="entryTaxon">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:entry" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- 9.3 Description
<xs:complexType name="description">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:description"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
<!-- 9.4 Keyword
<xs:complexType name="keyword">
<xs:complexContent>
<xs:extension base="LanguageString">
<xs:attributeGroup ref="ag:keyword"/>
<xs:attributeGroup ref="ex:customAttributes"/>
</xs:extension>
</xs:complexContent>
</xs:complexType> -->
</xs:schema>
@@ -0,0 +1,52 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/LOM/extend"
xmlns="http://ltsc.ieee.org/xsd/LOM/extend"
xmlns:lom="http://ltsc.ieee.org/xsd/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defines the XML Schema content model groups customElements
and customAttributes to support validation of extension XML elements and attributes.
This component XSD should be used if extensions are to be supported in LOM
XML instances.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM" schemaLocation="../lomLoose_localised.xsd"/>
<!-- Model group declarations -->
<xs:group name="customElements">
<xs:choice>
<xs:group ref="lom:customElements"/>
</xs:choice>
</xs:group>
<xs:attributeGroup name="customAttributes">
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:attributeGroup>
</xs:schema>
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:voc="http://ltsc.ieee.org/xsd/LOM/vocab" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ltsc.ieee.org/xsd/LOM" targetNamespace="http://ltsc.ieee.org/xsd/LOM">
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/vocab" schemaLocation="vocab/loose.xsd"/>
<!--****************************************************************************************-->
<!--** Definition document - this document holds AP defined simpleType elements that have **-->
<!--** been referenced through a type attribute in one of the modified, resultant schema. **-->
<!--****************************************************************************************-->
<xs:simpleType name="RolesValues">
<xs:restriction base="voc:intendedEndUserRole">
<xs:whiteSpace value="preserve" />
<xs:enumeration value="Learner" />
<xs:enumeration value="Instructor" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="RoleVocab">
<xs:restriction base="voc:source">
<xs:whiteSpace value="preserve" />
<xs:enumeration value="IMSGLC_CC_Rolesv1p0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="HEContext">
<xs:restriction base="voc:context">
<xs:whiteSpace value="preserve" />
<xs:enumeration value="higher education" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SourceIEELOM">
<xs:restriction base="voc:source">
<xs:whiteSpace value="preserve" />
<xs:enumeration value="LOMv1.0" />
</xs:restriction>
</xs:simpleType>
</xsd:schema>
@@ -0,0 +1,71 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/LOM" xmlns:ag="http://ltsc.ieee.org/xsd/LOM/unique" xmlns:voc="http://ltsc.ieee.org/xsd/LOM/vocab" xmlns:ex="http://ltsc.ieee.org/xsd/LOM/extend" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This file represents a composite schema for validating
LOM XML Instances. This file is built by default to represent a
composite schema for validation of the following:
1) The use of LOMv1.0 base schema (i.e., 1484.12.1-2002) vocabulary
source/value pairs only
2) Uniqueness constraints defined by LOMv1.0 base schema
3) No existenace of any defined extensions:
LOMv1.0 base schema XML element extension,
LOMv1.0 base schema XML attribute extension and
LOMv1.0 base schema vocabulary data type extension
Alternative composite schemas can be assembled by selecting
from the various alternative component schema listed below.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Learning Object Metadata -->
<xs:include schemaLocation="common/anyElement.xsd" />
<!-- LOM data element uniqueness constraints: use one of the following -->
<!-- Use unique/loose.xsd to relax element uniqueness constraints -->
<!-- Use unique/strict.xsd to enforce element uniqueness constraints -->
<!-- <xs:import namespace="http://ltsc.ieee.org/xsd/LOM/unique"
schemaLocation="unique/loose.xsd"/> -->
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/unique" schemaLocation="unique/loose.xsd" />
<!-- Vocabulary value validation: use one of the following -->
<!-- Use vocab/loose.xsd to relax vocabulary value constraints -->
<!-- Use vocab/strict.xsd to enforce the LOMv1.0 base schema vocabulary values -->
<!-- Use vocab/custom.xsd to enforce custom vocabulary values -->
<!--<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/vocab"
schemaLocation="vocab/loose.xsd"/> -->
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/vocab" schemaLocation="vocab/loose.xsd" />
<!-- <xs:import namespace="http://ltsc.ieee.org/xsd/LOM/vocab"
schemaLocation="vocab/custom.xsd"/> -->
<!-- Extension elements/attributes support: use one of the following -->
<!-- Use extend/strict.xsd to enforce no element/attribute extension -->
<!-- Use extend/custom.xsd to allow element/attribute extension -->
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/extend" schemaLocation="extend/custom.xsd" />
<!--<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/extend"
schemaLocation="extend/custom.xsd"/> -->
<xs:include schemaLocation="common/dataTypes.xsd" />
<xs:include schemaLocation="common/elementNames.xsd" />
<xs:include schemaLocation="common/elementTypes.xsd" />
<xs:include schemaLocation="common/rootElement.xsd" />
<xs:include schemaLocation="common/vocabValues.xsd" />
<xs:include schemaLocation="common/vocabTypes.xsd" />
</xs:schema>
@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.ascc.net/xml/schematron">
<ns prefix="xs" uri="http://www.w3.org/2001/XMLSchema" />
<ns prefix="xsd" uri="http://www.w3.org/2001/XMLSchema" />
<ns prefix="xsi" uri="http://www.w3.org/2001/XMLSchema-instance" />
<ns prefix="ac" uri="http://iwm.uni-koblenz.de/xsd/tel_addc_v1p1" />
<ns prefix="ims" uri="http://www.imsglobal.org/xsd/imscc/imscp_v1p1" />
<!--***********************************************************************************************-->
<!--** Constraints document - this document holds Schematron rules that have been generated from **-->
<!--** AP condition and assertion elements. IMPORTANT: If this document exists, it MUST be **-->
<!--** used in the validation of instances derived from the resultant schema - failure to do so **-->
<!--** can result in an instance that does not conform to either the base schema or the **-->
<!--** Application Profile. **-->
<!--***********************************************************************************************-->
<pattern name="pattern_1">
<rule context="ims:organizations/ims:organization/ims:item/@identifierref | ims:manifest/ims:organizations/ims:organization/ims:item/@identifierref | @identifierref">
<assert test="(ims:organizations/ims:organization/ims:item/@identifierref | ims:manifest/ims:organizations/ims:organization/ims:item/@identifierref | @identifierref) and not (count(../item)=0)">Assertion failed for pattern_1. An Item object which represents a folder is indicated by the absence of an IdentifierRef characteristic object. Folder Items support unlimited nesting of other folder Items and learning object link Items. Learning Application Resource Item objects may be nested by folder Item object but may not nest other folder or Learning Application resource Item objects.(#S04)</assert>
</rule>
</pattern>
<pattern name="pattern_2">
<rule context="ims:resources/ims:resource/ims:dependency/@identifierref | ims:manifest/ims:resources/ims:resource/ims:dependency/@identifierref">
<assert test="(ims:resources/ims:resource/ims:dependency/@identifierref | ims:manifest/ims:resources/ims:resource/ims:dependency/@identifierref) and (../../@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and not (current() = /manifest/resources/resource[@type='webcontent']/@identifier)">Assertion failed for pattern_2. A Resource object which is a Learning Object Web Content may contain Dependency objects which reference Resource objects with Type 'webcontent'.(#S03)</assert>
</rule>
</pattern>
<pattern name="pattern_3">
<rule context="ims:organizations/ims:organization/ims:item/ims:item | ims:manifest/ims:organizations/ims:organization/ims:item/ims:item">
<assert test="(ims:organizations/ims:organization/ims:item/ims:item | ims:manifest/ims:organizations/ims:organization/ims:item/ims:item) and (@isvisible='false') and not (count(./item)=count(./item[@isvisible='false']))">Assertion failed for pattern_3. If an item is invisible, its descendants must be invisible too.(#S02)</assert>
</rule>
</pattern>
<pattern name="pattern_4">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='imsdt_xmlv1p0') and not (current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier or current()/@identifierref = /manifest/resources/resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier)">Assertion failed for pattern_4. A Resource object which is a Discussion Topic associated resource may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S12)</assert>
</rule>
</pattern>
<pattern name="pattern_5">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and not (current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier)">Assertion failed for pattern_5.
The test was: .
The context was: ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency</assert>
</rule>
</pattern>
<pattern name="pattern_6">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='imsqti_xmlv1p2/imscc_xmlv1p0/assessment') and not ((current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier) or (current()/@identifierref = /manifest/resources/resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier))">Assertion failed for pattern_6. A Resource object which is an assessment may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S14)</assert>
</rule>
</pattern>
<pattern name="pattern_7">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and ((./@type='webcontent' or ./@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and ./@identifier = //item/@identifierref) and not (count(./@href)=1)">Assertion failed for pattern_7. If a cartridge web content or associated content resource is linked from a Learning Application Object link Item object it must have an Href characteristic object which represents the launchable resource.(#S05)</assert>
</rule>
</pattern>
<pattern name="pattern_8">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and (./@type='imsdt_xmlv1p0') and not (count(./file)=1 and count(./@href)=0)">Assertion failed for pattern_8. For Discussion Topic Resources the Resource object must contain a single File object which references the Discussion Topic descriptor XML file which conforms to the http://www.imsglobal.org/xsd/imsdt_v1p0 schema. It must not have any href attribute.(#S06)</assert>
</rule>
</pattern>
<pattern name="pattern_9">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and (./@type='imswl_xmlv1p0') and not (count(./file)=1 and count(./dependency)=0 and count(./@href)=0)">Assertion failed for pattern_9. For Web Link Resources the Resource object must contain a single File object which references the Web Link descriptor XML file which conforms to the http://www.imsglobal.org/xsd/imswl_v1p0 schema. It must contain neither Dependency objects nor an href attribute.(#S07)</assert>
</rule>
</pattern>
<pattern name="pattern_10">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and ((./@type='imsqti_xmlv1p2/imscc_xmlv1p0/assessment') or (./@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank')) and not (count(./file)=1 and count(./@href)=0)">Assertion failed for pattern_10. For Assessment or Question Bank Resources the Resource object must contain a single File object which references the QTI XML file. This file must conform to the IMS CC profile of QTI 1.2.1. The profile is contained in the package of this profile as imscc_q*.xdm. The derived schema of this QTI profile is in the package of this profile with the name ims_qtiasiv1p2_localised.xsd. The resource must not have an href attribute(#S11)</assert>
</rule>
</pattern>
</schema>
@@ -0,0 +1,79 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** lomLoose_localised.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ag="http://ltsc.ieee.org/xsd/LOM/unique" xmlns:voc="http://ltsc.ieee.org/xsd/LOM/vocab" xmlns:ex="http://ltsc.ieee.org/xsd/LOM/extend" xmlns="http://ltsc.ieee.org/xsd/LOM" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_mR_definition.xsd" />
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This file represents a composite schema for validating
LOM XML Instances. This file is built by default to represent a
composite schema for validation of the following:
1) The use of LOMv1.0 base schema (i.e., 1484.12.1-2002) vocabulary
source/value pairs only
2) Uniqueness constraints defined by LOMv1.0 base schema
3) No existenace of any defined extensions:
LOMv1.0 base schema XML element extension,
LOMv1.0 base schema XML attribute extension and
LOMv1.0 base schema vocabulary data type extension
Alternative composite schemas can be assembled by selecting
from the various alternative component schema listed below.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Learning Object Metadata -->
<xs:include schemaLocation="anyElement_localised.xsd" />
<!-- LOM data element uniqueness constraints: use one of the following -->
<!-- Use unique/loose.xsd to relax element uniqueness constraints -->
<!-- Use unique/strict.xsd to enforce element uniqueness constraints -->
<!-- <xs:import namespace="http://ltsc.ieee.org/xsd/LOM/unique"
schemaLocation="unique/loose.xsd"/> -->
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/unique" schemaLocation="unique/loose.xsd" />
<!-- Vocabulary value validation: use one of the following -->
<!-- Use vocab/loose.xsd to relax vocabulary value constraints -->
<!-- Use vocab/strict.xsd to enforce the LOMv1.0 base schema vocabulary values -->
<!-- Use vocab/custom.xsd to enforce custom vocabulary values -->
<!--<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/vocab"
schemaLocation="vocab/loose.xsd"/> -->
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/vocab" schemaLocation="vocab/loose.xsd" />
<!-- <xs:import namespace="http://ltsc.ieee.org/xsd/LOM/vocab"
schemaLocation="vocab/custom.xsd"/> -->
<!-- Extension elements/attributes support: use one of the following -->
<!-- Use extend/strict.xsd to enforce no element/attribute extension -->
<!-- Use extend/custom.xsd to allow element/attribute extension -->
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/extend" schemaLocation="extend/custom.xsd" />
<!--<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/extend"
schemaLocation="extend/custom.xsd"/> -->
<xs:include schemaLocation="dataTypes_localised.xsd" />
<xs:include schemaLocation="elementNames_localised.xsd" />
<xs:include schemaLocation="elementTypes_localised.xsd" />
<xs:include schemaLocation="rootElement_localised.xsd" />
<xs:include schemaLocation="vocabValues_localised.xsd" />
<xs:include schemaLocation="vocabTypes_localised.xsd" />
</xs:schema>
+292
View File
@@ -0,0 +1,292 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/LOM/unique" targetNamespace="http://ltsc.ieee.org/xsd/LOM/unique" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides attribute group declarations for
LOM data elements to support schema-based validation of uniqueness constraints
within a LOM XML instance where the exact set of attributes associated with each
element has to be as specified by the LOM XML Schema binding (i.e., where extra
attributes to enforce uniqueness have to be avoided).
Duplicate declarations are included as comments for completeness. These
declarations should remain commented out or they can be removed completely.
NOTE: The absence of the enforcement of the uniqueness constraints does not
relieve a particular LOM XML instance from satisfying the uniqueness constraints
described in the LOMv1.0 base schema. Applications that require the use of
the unique/loose.xsd component XSD have to enforce those uniqueness constraints
by other means.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Attribute group declarations -->
<!-- Duplicate declarations are included as comments. -->
<!-- Learning Object Metadata -->
<xs:attributeGroup name="lom" />
<!-- DateTime -->
<xs:attributeGroup name="DateTimeValue" />
<!-- Duration -->
<xs:attributeGroup name="DurationValue" />
<!-- Source -->
<xs:attributeGroup name="source" />
<!-- Value -->
<xs:attributeGroup name="value" />
<!-- 1 General -->
<xs:attributeGroup name="general" />
<!-- 1.1 Identifier -->
<xs:attributeGroup name="identifier" />
<!-- 1.1.1 Catalog -->
<xs:attributeGroup name="catalog" />
<!-- 1.1.2 Entry -->
<xs:attributeGroup name="entry" />
<!-- 1.2 Title -->
<xs:attributeGroup name="title" />
<!-- 1.3 Language -->
<xs:attributeGroup name="language" />
<!-- 1.4 Description -->
<xs:attributeGroup name="description" />
<!-- 1.5 Keyword -->
<xs:attributeGroup name="keyword" />
<!-- 1.6 Coverage -->
<xs:attributeGroup name="coverage" />
<!-- 1.7 Structure -->
<xs:attributeGroup name="structure" />
<!-- 1.8 Aggregation Level -->
<xs:attributeGroup name="aggregationLevel" />
<!-- 2 Life Cycle -->
<xs:attributeGroup name="lifeCycle" />
<!-- 2.1 Version -->
<xs:attributeGroup name="version" />
<!-- 2.2 Status -->
<xs:attributeGroup name="status" />
<!-- 2.3 Contribute -->
<xs:attributeGroup name="contribute" />
<!-- 2.3.1 Role -->
<xs:attributeGroup name="role" />
<!-- 2.3.2 Entity -->
<xs:attributeGroup name="entity" />
<!-- 2.3.3 Date -->
<xs:attributeGroup name="date" />
<!-- 3 Meta-Metadata -->
<xs:attributeGroup name="metaMetadata" />
<!-- 3.1 Identifier
<xs:attributeGroup name="identifier"/> -->
<!-- 3.1.1 Catalog
<xs:attributeGroup name="catalog"/> -->
<!-- 3.1.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 3.2 Contribute
<xs:attributeGroup name="contribute"/> -->
<!-- 3.2.1 Role
<xs:attributeGroup name="role"/> -->
<!-- 3.2.2 Entity
<xs:attributeGroup name="entity"/> -->
<!-- 3.2.3 Date
<xs:attributeGroup name="date"/> -->
<!-- 3.3 Metadata Schema -->
<xs:attributeGroup name="metadataSchema" />
<!-- 3.4 Language
<xs:attributeGroup name="language"/> -->
<!-- 4 Technical -->
<xs:attributeGroup name="technical" />
<!-- 4.1 Format -->
<xs:attributeGroup name="format" />
<!-- 4.2 Size -->
<xs:attributeGroup name="size" />
<!-- 4.3 Location -->
<xs:attributeGroup name="location" />
<!-- 4.4 Requirement -->
<xs:attributeGroup name="requirement" />
<!-- 4.4.1 OrComposite -->
<xs:attributeGroup name="orComposite" />
<!-- 4.4.1.1 Type -->
<xs:attributeGroup name="type" />
<!-- 4.4.1.2 Name -->
<xs:attributeGroup name="name" />
<!-- 4.4.1.3 Minimum Version -->
<xs:attributeGroup name="minimumVersion" />
<!-- 4.4.1.4 Maximum Version -->
<xs:attributeGroup name="maximumVersion" />
<!-- 4.5 Installation Remarks -->
<xs:attributeGroup name="installationRemarks" />
<!-- 4.6 Other Platform Requirements -->
<xs:attributeGroup name="otherPlatformRequirements" />
<!-- 4.7 Duration -->
<xs:attributeGroup name="duration" />
<!-- 5 Educational -->
<xs:attributeGroup name="educational" />
<!-- 5.1 Interactivity Type -->
<xs:attributeGroup name="interactivityType" />
<!-- 5.2 Learning Resource Type -->
<xs:attributeGroup name="learningResourceType" />
<!-- 5.3 Interactivity Level -->
<xs:attributeGroup name="interactivityLevel" />
<!-- 5.4 Semantic Density -->
<xs:attributeGroup name="semanticDensity" />
<!-- 5.5 Intended End User Role -->
<xs:attributeGroup name="intendedEndUserRole" />
<!-- 5.6 Context -->
<xs:attributeGroup name="context" />
<!-- 5.7 Typical Age Range -->
<xs:attributeGroup name="typicalAgeRange" />
<!-- 5.8 Difficulty -->
<xs:attributeGroup name="difficulty" />
<!-- 5.9 Typical Learning Time -->
<xs:attributeGroup name="typicalLearningTime" />
<!-- 5.10 Description
<xs:attributeGroup name="description"/> -->
<!-- 5.11 Language
<xs:attributeGroup name="language"/> -->
<!-- 6 Rights -->
<xs:attributeGroup name="rights" />
<!-- 6.1 Cost -->
<xs:attributeGroup name="cost" />
<!-- 6.2 Copyright and Other Restrictions -->
<xs:attributeGroup name="copyrightAndOtherRestrictions" />
<!-- 6.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 7 Relation -->
<xs:attributeGroup name="relation" />
<!-- 7.1 Kind -->
<xs:attributeGroup name="kind" />
<!-- 7.2 Resource -->
<xs:attributeGroup name="resource" />
<!-- 7.2.1 Identifier
<xs:attributeGroup name="identifier"/> -->
<!-- 7.2.1.1 Catalog
<xs:attributeGroup name="catalog"/> -->
<!-- 7.2.1.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 7.2.2 Description
<xs:attributeGroup name="description"/> -->
<!-- 8 Annotation -->
<xs:attributeGroup name="annotation" />
<!-- 8.1 Entity
<xs:attributeGroup name="entity"/> -->
<!-- 8.2 Date
<xs:attributeGroup name="date"/> -->
<!-- 8.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 9 Classification -->
<xs:attributeGroup name="classification" />
<!-- 9.1 Purpose -->
<xs:attributeGroup name="purpose" />
<!-- 9.2 Taxon Path -->
<xs:attributeGroup name="taxonPath" />
<!-- 9.2.1 Source
<xs:attributeGroup name="source"/> -->
<!-- 9.2.2 Taxon -->
<xs:attributeGroup name="taxon" />
<!-- 9.2.2.1 Id -->
<xs:attributeGroup name="id" />
<!-- 9.2.2.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 9.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 9.4 Keyword
<xs:attributeGroup name="keyword"/> -->
</xs:schema>
@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** rootElement.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/LOM" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion provides the element name declaration for the
root element for all LOM XML instances.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Element declarations -->
<!-- Learning Object Metadata -->
<xs:element name="lom" type="lom">
<xs:unique name="lomUnique">
<xs:selector xpath="*" />
<xs:field xpath="@uniqueElementName" />
</xs:unique>
</xs:element>
</xs:schema>
@@ -0,0 +1,295 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/LOM/unique"
xmlns="http://ltsc.ieee.org/xsd/LOM/unique"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides attribute group declarations for
LOM data elements to support schema-based validation of uniqueness constraints
within a LOM XML instance where the exact set of attributes associated with each
element has to be as specified by the LOM XML Schema binding (i.e., where extra
attributes to enforce uniqueness have to be avoided).
Duplicate declarations are included as comments for completeness. These
declarations should remain commented out or they can be removed completely.
NOTE: The absence of the enforcement of the uniqueness constraints does not
relieve a particular LOM XML instance from satisfying the uniqueness constraints
described in the LOMv1.0 base schema. Applications that require the use of
the unique/loose.xsd component XSD have to enforce those uniqueness constraints
by other means.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- Attribute group declarations -->
<!-- Duplicate declarations are included as comments. -->
<!-- Learning Object Metadata -->
<xs:attributeGroup name="lom"/>
<!-- DateTime -->
<xs:attributeGroup name="DateTimeValue"/>
<!-- Duration -->
<xs:attributeGroup name="DurationValue"/>
<!-- Source -->
<xs:attributeGroup name="source"/>
<!-- Value -->
<xs:attributeGroup name="value"/>
<!-- 1 General -->
<xs:attributeGroup name="general"/>
<!-- 1.1 Identifier -->
<xs:attributeGroup name="identifier"/>
<!-- 1.1.1 Catalog -->
<xs:attributeGroup name="catalog"/>
<!-- 1.1.2 Entry -->
<xs:attributeGroup name="entry"/>
<!-- 1.2 Title -->
<xs:attributeGroup name="title"/>
<!-- 1.3 Language -->
<xs:attributeGroup name="language"/>
<!-- 1.4 Description -->
<xs:attributeGroup name="description"/>
<!-- 1.5 Keyword -->
<xs:attributeGroup name="keyword"/>
<!-- 1.6 Coverage -->
<xs:attributeGroup name="coverage"/>
<!-- 1.7 Structure -->
<xs:attributeGroup name="structure"/>
<!-- 1.8 Aggregation Level -->
<xs:attributeGroup name="aggregationLevel"/>
<!-- 2 Life Cycle -->
<xs:attributeGroup name="lifeCycle"/>
<!-- 2.1 Version -->
<xs:attributeGroup name="version"/>
<!-- 2.2 Status -->
<xs:attributeGroup name="status"/>
<!-- 2.3 Contribute -->
<xs:attributeGroup name="contribute"/>
<!-- 2.3.1 Role -->
<xs:attributeGroup name="role"/>
<!-- 2.3.2 Entity -->
<xs:attributeGroup name="entity"/>
<!-- 2.3.3 Date -->
<xs:attributeGroup name="date"/>
<!-- 3 Meta-Metadata -->
<xs:attributeGroup name="metaMetadata"/>
<!-- 3.1 Identifier
<xs:attributeGroup name="identifier"/> -->
<!-- 3.1.1 Catalog
<xs:attributeGroup name="catalog"/> -->
<!-- 3.1.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 3.2 Contribute
<xs:attributeGroup name="contribute"/> -->
<!-- 3.2.1 Role
<xs:attributeGroup name="role"/> -->
<!-- 3.2.2 Entity
<xs:attributeGroup name="entity"/> -->
<!-- 3.2.3 Date
<xs:attributeGroup name="date"/> -->
<!-- 3.3 Metadata Schema -->
<xs:attributeGroup name="metadataSchema"/>
<!-- 3.4 Language
<xs:attributeGroup name="language"/> -->
<!-- 4 Technical -->
<xs:attributeGroup name="technical"/>
<!-- 4.1 Format -->
<xs:attributeGroup name="format"/>
<!-- 4.2 Size -->
<xs:attributeGroup name="size"/>
<!-- 4.3 Location -->
<xs:attributeGroup name="location"/>
<!-- 4.4 Requirement -->
<xs:attributeGroup name="requirement"/>
<!-- 4.4.1 OrComposite -->
<xs:attributeGroup name="orComposite"/>
<!-- 4.4.1.1 Type -->
<xs:attributeGroup name="type"/>
<!-- 4.4.1.2 Name -->
<xs:attributeGroup name="name"/>
<!-- 4.4.1.3 Minimum Version -->
<xs:attributeGroup name="minimumVersion"/>
<!-- 4.4.1.4 Maximum Version -->
<xs:attributeGroup name="maximumVersion"/>
<!-- 4.5 Installation Remarks -->
<xs:attributeGroup name="installationRemarks"/>
<!-- 4.6 Other Platform Requirements -->
<xs:attributeGroup name="otherPlatformRequirements"/>
<!-- 4.7 Duration -->
<xs:attributeGroup name="duration"/>
<!-- 5 Educational -->
<xs:attributeGroup name="educational"/>
<!-- 5.1 Interactivity Type -->
<xs:attributeGroup name="interactivityType"/>
<!-- 5.2 Learning Resource Type -->
<xs:attributeGroup name="learningResourceType"/>
<!-- 5.3 Interactivity Level -->
<xs:attributeGroup name="interactivityLevel"/>
<!-- 5.4 Semantic Density -->
<xs:attributeGroup name="semanticDensity"/>
<!-- 5.5 Intended End User Role -->
<xs:attributeGroup name="intendedEndUserRole"/>
<!-- 5.6 Context -->
<xs:attributeGroup name="context"/>
<!-- 5.7 Typical Age Range -->
<xs:attributeGroup name="typicalAgeRange"/>
<!-- 5.8 Difficulty -->
<xs:attributeGroup name="difficulty"/>
<!-- 5.9 Typical Learning Time -->
<xs:attributeGroup name="typicalLearningTime"/>
<!-- 5.10 Description
<xs:attributeGroup name="description"/> -->
<!-- 5.11 Language
<xs:attributeGroup name="language"/> -->
<!-- 6 Rights -->
<xs:attributeGroup name="rights"/>
<!-- 6.1 Cost -->
<xs:attributeGroup name="cost"/>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:attributeGroup name="copyrightAndOtherRestrictions"/>
<!-- 6.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 7 Relation -->
<xs:attributeGroup name="relation"/>
<!-- 7.1 Kind -->
<xs:attributeGroup name="kind"/>
<!-- 7.2 Resource -->
<xs:attributeGroup name="resource"/>
<!-- 7.2.1 Identifier
<xs:attributeGroup name="identifier"/> -->
<!-- 7.2.1.1 Catalog
<xs:attributeGroup name="catalog"/> -->
<!-- 7.2.1.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 7.2.2 Description
<xs:attributeGroup name="description"/> -->
<!-- 8 Annotation -->
<xs:attributeGroup name="annotation"/>
<!-- 8.1 Entity
<xs:attributeGroup name="entity"/> -->
<!-- 8.2 Date
<xs:attributeGroup name="date"/> -->
<!-- 8.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 9 Classification -->
<xs:attributeGroup name="classification"/>
<!-- 9.1 Purpose -->
<xs:attributeGroup name="purpose"/>
<!-- 9.2 Taxon Path -->
<xs:attributeGroup name="taxonPath"/>
<!-- 9.2.1 Source
<xs:attributeGroup name="source"/> -->
<!-- 9.2.2 Taxon -->
<xs:attributeGroup name="taxon"/>
<!-- 9.2.2.1 Id -->
<xs:attributeGroup name="id"/>
<!-- 9.2.2.2 Entry
<xs:attributeGroup name="entry"/> -->
<!-- 9.3 Description
<xs:attributeGroup name="description"/> -->
<!-- 9.4 Keyword
<xs:attributeGroup name="keyword"/> -->
</xs:schema>
@@ -0,0 +1,147 @@
<xs:schema targetNamespace="http://ltsc.ieee.org/xsd/LOM/vocab"
xmlns="http://ltsc.ieee.org/xsd/LOM/vocab"
xmlns:lom="http://ltsc.ieee.org/xsd/LOM"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
version="IEEE LTSC LOM XML 1.0">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides simple type declarations for LOM
data elements that are defined as Vocabulary data types.
This component schema definition enforces that vocabulary sources and values
are character strings, which simplifies the schema validation process for those
applications that perform vocabulary source/value validation using
post-schema-validation.
This component schema definition relaxes the validation constraints by
allowing both sources and values to be arbitrary character strings.
NOTE: The absence of the enforcement of vocabulary values does not relieve a
particular LOM XML instance from satisfying vocabulary requirements defined
in the LOMv1.0 base schema. Applications that require the use of vocab/loose.xsd
component XSD should enforce those vocabulary requirements by other means.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM" schemaLocation="../lomLoose_localised.xsd"/>
<!-- Vocabulary data type declarations -->
<!-- Source -->
<xs:simpleType name="source">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 1.7 Structure -->
<xs:simpleType name="structure">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 1.8 Aggregation Level -->
<xs:simpleType name="aggregationLevel">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 2.2 Status -->
<xs:simpleType name="status">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 2.3.1 Role -->
<xs:simpleType name="role">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 3.2.1 Role -->
<xs:simpleType name="roleMeta">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 4.4.1.1 Type -->
<xs:simpleType name="type">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 4.4.1.2 Name -->
<xs:simpleType name="name">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.1 Interactivity Type -->
<xs:simpleType name="interactivityType">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.2 Learning Resource Type -->
<xs:simpleType name="learningResourceType">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.3 Interactivity Level -->
<xs:simpleType name="interactivityLevel">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.4 Semantic Density -->
<xs:simpleType name="semanticDensity">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.5 Intended End User Role -->
<xs:simpleType name="intendedEndUserRole">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.6 Context -->
<xs:simpleType name="context">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 5.8 Difficulty -->
<xs:simpleType name="difficulty">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 6.1 Cost -->
<xs:simpleType name="cost">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:simpleType name="copyrightAndOtherRestrictions">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 7.1 Kind -->
<xs:simpleType name="kind">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
<!-- 9.1 Purpose -->
<xs:simpleType name="purpose">
<xs:restriction base="lom:CharacterString"/>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,408 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** vocabTypes.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ag="http://ltsc.ieee.org/xsd/LOM/unique" xmlns:ex="http://ltsc.ieee.org/xsd/LOM/extend" xmlns:voc="http://ltsc.ieee.org/xsd/LOM/vocab" xmlns="http://ltsc.ieee.org/xsd/LOM" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_mR_definition.xsd" />
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema defintion provides global type declarations for those
LOM data elements whose values are taken from a Vocabulary data type.
</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>This component XSD requires schema components from other
schemas that are defined in other namespaces. These statements import the
appropriate components. The xsi:schemaLocation attribute is used to specify
the location of the file that contains the schema that defines the namespace.
The xsi:schemaLocation attribute is optional and is ommitted. By definition of
the composite schemas the appropriate namespaces and related files where those
namespaces are defined are brought into scope. Some XML parsers may require
these import statements to contain the optional xsi:schemaLocation attribute.</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/unique" schemaLocation="./unique/loose.xsd" />
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/extend" schemaLocation="./extend/custom.xsd" />
<xs:import namespace="http://ltsc.ieee.org/xsd/LOM/vocab" schemaLocation="./vocab/loose.xsd" />
<!-- Vocabulary type declarations -->
<!-- Source -->
<xs:complexType name="sourceValue">
<xs:simpleContent>
<xs:extension base="voc:source">
<xs:attributeGroup ref="ag:source" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="sourceValue18311">
<xs:simpleContent>
<xs:annotation>
<xs:documentation xml:lang="en">explanation: The vocabulary for intendedEndUserRole is 'IMSGLC_CC_Rolesv1p0'.</xs:documentation>
</xs:annotation><xs:extension base="RoleVocab">
<xs:attributeGroup ref="ag:source" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="sourceValue18711">
<xs:simpleContent>
<xs:annotation>
<xs:documentation xml:lang="en">explanation: The source for a context object is fixed to 'LOMv1.0'</xs:documentation>
</xs:annotation><xs:extension base="SourceIEELOM">
<xs:attributeGroup ref="ag:source" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.7 Structure -->
<xs:complexType name="structureVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="structureValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="structureValue">
<xs:simpleContent>
<xs:extension base="voc:structure">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 1.8 Aggregation Level -->
<xs:complexType name="aggregationLevelVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="aggregationLevelValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="aggregationLevelValue">
<xs:simpleContent>
<xs:extension base="voc:aggregationLevel">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 2.2 Status -->
<xs:complexType name="statusVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="statusValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="statusValue">
<xs:simpleContent>
<xs:extension base="voc:status">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 2.3.1 Role -->
<xs:complexType name="roleVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="roleValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="roleValue">
<xs:simpleContent>
<xs:extension base="voc:role">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 3.2.1 Role -->
<xs:complexType name="roleMetaVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="roleMetaValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="roleMetaValue">
<xs:simpleContent>
<xs:extension base="voc:roleMeta">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.1 Type -->
<xs:complexType name="typeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="typeValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="typeValue">
<xs:simpleContent>
<xs:extension base="voc:type">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 4.4.1.2 Name -->
<xs:complexType name="nameVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="nameValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="nameValue">
<xs:simpleContent>
<xs:extension base="voc:name">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.1 Interactivity Type -->
<xs:complexType name="interactivityTypeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="interactivityTypeValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="interactivityTypeValue">
<xs:simpleContent>
<xs:extension base="voc:interactivityType">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.2 Learning Resource Type -->
<xs:complexType name="learningResourceTypeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="learningResourceTypeValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="learningResourceTypeValue">
<xs:simpleContent>
<xs:extension base="voc:learningResourceType">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.3 Interactivity Level -->
<xs:complexType name="interactivityLevelVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="interactivityLevelValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="interactivityLevelValue">
<xs:simpleContent>
<xs:extension base="voc:interactivityLevel">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.4 Semantic Density -->
<xs:complexType name="semanticDensityVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="semanticDensityValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="semanticDensityValue">
<xs:simpleContent>
<xs:extension base="voc:semanticDensity">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.5 Intended End User Role -->
<xs:complexType name="intendedEndUserRoleVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="intendedEndUserRoleValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="intendedEndUserRoleValue">
<xs:simpleContent>
<xs:extension base="voc:intendedEndUserRole">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="intendedEndUserRoleValue18313">
<xs:simpleContent>
<xs:annotation>
<xs:documentation xml:lang="en">explanation: Possible intendedEndUserRoles are only 'Learner' and 'Instructor'.</xs:documentation>
</xs:annotation><xs:extension base="RolesValues">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.6 Context -->
<xs:complexType name="contextVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="contextValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="contextValue">
<xs:simpleContent>
<xs:extension base="voc:context">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="contextValue18713">
<xs:simpleContent>
<xs:annotation>
<xs:documentation xml:lang="en">explanation: The value of context is fixed to 'higher education'.</xs:documentation>
</xs:annotation><xs:extension base="HEContext">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 5.8 Difficulty -->
<xs:complexType name="difficultyVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="difficultyValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="difficultyValue">
<xs:simpleContent>
<xs:extension base="voc:difficulty">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 6.1 Cost -->
<xs:complexType name="costVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="costValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="costValue">
<xs:simpleContent>
<xs:extension base="voc:cost">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:complexType name="copyrightAndOtherRestrictionsVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="copyrightAndOtherRestrictionsValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="copyrightAndOtherRestrictionsValue">
<xs:simpleContent>
<xs:extension base="voc:copyrightAndOtherRestrictions">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 7.1 Kind -->
<xs:complexType name="kindVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="kindValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="kindValue">
<xs:simpleContent>
<xs:extension base="voc:kind">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- 9.1 Purpose -->
<xs:complexType name="purposeVocab">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="source" type="sourceValue" />
<xs:element name="value" type="purposeValue" />
<xs:group ref="ex:customElements" />
</xs:choice>
<xs:attributeGroup ref="ex:customAttributes" />
</xs:complexType>
<xs:complexType name="purposeValue">
<xs:simpleContent>
<xs:extension base="voc:purpose">
<xs:attributeGroup ref="ag:value" />
<xs:attributeGroup ref="ex:customAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:schema>
@@ -0,0 +1,270 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** vocabValues.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ltsc.ieee.org/xsd/LOM" targetNamespace="http://ltsc.ieee.org/xsd/LOM" elementFormDefault="qualified" version="IEEE LTSC LOM XML 1.0 localised_Schema_2008_6_30">
<xs:annotation>
<xs:documentation>
This work is licensed under the Creative Commons Attribution-ShareAlike
License. To view a copy of this license, see the file license.txt,
visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to
Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
</xs:documentation>
<xs:documentation>
This component schema definition provides global type declarations for the standard
LOMv1.0 vocabulary tokens for those LOM data elements whose values are taken from
a Vocabulary data type.
This component schema defintion defines the stanard vocabulary value
declarations as defined in the LOMv1.0 base schema. These vocabulary
value declarations are used in conjunction with both vocab/custom.xsd and
vocab/loose.xsd.
</xs:documentation>
<xs:documentation>
This file has been modified by the Knowledge Media Institute of the
University Koblenz-Landau (http://iwm.uni-koblenz.de). It contains the
following changes:
1) Instead of "unique/strict.xsd" the schema "unique/loose.xsd" is imported
because this reflects what is said in 1484.12.3-2005, page 35 (section C.1.3)
2) In all component XSDs the schemaLocation attribute was amended to the
xs:import and xs:include statements. This enables the usage of the schemas
with tools which don't deal well with missing schemaLocation informations.
This file is available at "http://iwm.uni-koblenz.de/xsd/IEEE-LOM/loose"
</xs:documentation>
</xs:annotation>
<!-- LOMv1.0 base schema vocabulary source and value declarations -->
<!-- Source -->
<xs:simpleType name="sourceValues">
<xs:restriction base="xs:token">
<xs:enumeration value="LOMv1.0" />
</xs:restriction>
</xs:simpleType>
<!-- 1.7 Structure -->
<xs:simpleType name="structureValues">
<xs:restriction base="xs:token">
<xs:enumeration value="atomic" />
<xs:enumeration value="collection" />
<xs:enumeration value="networked" />
<xs:enumeration value="hierarchical" />
<xs:enumeration value="linear" />
</xs:restriction>
</xs:simpleType>
<!-- 1.8 Aggregation Level -->
<xs:simpleType name="aggregationLevelValues">
<xs:restriction base="xs:token">
<xs:enumeration value="1" />
<xs:enumeration value="2" />
<xs:enumeration value="3" />
<xs:enumeration value="4" />
</xs:restriction>
</xs:simpleType>
<!-- 2.2 Status -->
<xs:simpleType name="statusValues">
<xs:restriction base="xs:token">
<xs:enumeration value="draft" />
<xs:enumeration value="final" />
<xs:enumeration value="revised" />
<xs:enumeration value="unavailable" />
</xs:restriction>
</xs:simpleType>
<!-- 2.3.1 Role -->
<xs:simpleType name="roleValues">
<xs:restriction base="xs:token">
<xs:enumeration value="author" />
<xs:enumeration value="publisher" />
<xs:enumeration value="unknown" />
<xs:enumeration value="initiator" />
<xs:enumeration value="terminator" />
<xs:enumeration value="validator" />
<xs:enumeration value="editor" />
<xs:enumeration value="graphical designer" />
<xs:enumeration value="technical implementer" />
<xs:enumeration value="content provider" />
<xs:enumeration value="technical validator" />
<xs:enumeration value="educational validator" />
<xs:enumeration value="script writer" />
<xs:enumeration value="instructional designer" />
<xs:enumeration value="subject matter expert" />
</xs:restriction>
</xs:simpleType>
<!-- 3.2.1 Role -->
<xs:simpleType name="roleMetaValues">
<xs:restriction base="xs:token">
<xs:enumeration value="creator" />
<xs:enumeration value="validator" />
</xs:restriction>
</xs:simpleType>
<!-- 4.4.1.1 Type -->
<xs:simpleType name="typeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="operating system" />
<xs:enumeration value="browser" />
</xs:restriction>
</xs:simpleType>
<!-- 4.4.1.2 Name -->
<xs:simpleType name="nameValues">
<xs:restriction base="xs:token">
<xs:enumeration value="pc-dos" />
<xs:enumeration value="ms-windows" />
<xs:enumeration value="macos" />
<xs:enumeration value="unix" />
<xs:enumeration value="multi-os" />
<xs:enumeration value="none" />
<xs:enumeration value="any" />
<xs:enumeration value="netscape communicator" />
<xs:enumeration value="ms-internet explorer" />
<xs:enumeration value="opera" />
<xs:enumeration value="amaya" />
</xs:restriction>
</xs:simpleType>
<!-- 5.1 Interactivity Type -->
<xs:simpleType name="interactivityTypeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="active" />
<xs:enumeration value="expositive" />
<xs:enumeration value="mixed" />
</xs:restriction>
</xs:simpleType>
<!-- 5.2 Learning Resource Type -->
<xs:simpleType name="learningResourceTypeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="exercise" />
<xs:enumeration value="simulation" />
<xs:enumeration value="questionnaire" />
<xs:enumeration value="diagram" />
<xs:enumeration value="figure" />
<xs:enumeration value="graph" />
<xs:enumeration value="index" />
<xs:enumeration value="slide" />
<xs:enumeration value="table" />
<xs:enumeration value="narrative text" />
<xs:enumeration value="exam" />
<xs:enumeration value="experiment" />
<xs:enumeration value="problem statement" />
<xs:enumeration value="self assessment" />
<xs:enumeration value="lecture" />
</xs:restriction>
</xs:simpleType>
<!-- 5.3 Interactivity Level -->
<xs:simpleType name="interactivityLevelValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very low" />
<xs:enumeration value="low" />
<xs:enumeration value="medium" />
<xs:enumeration value="high" />
<xs:enumeration value="very high" />
</xs:restriction>
</xs:simpleType>
<!-- 5.4 Semantic Density -->
<xs:simpleType name="semanticDensityValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very low" />
<xs:enumeration value="low" />
<xs:enumeration value="medium" />
<xs:enumeration value="high" />
<xs:enumeration value="very high" />
</xs:restriction>
</xs:simpleType>
<!-- 5.5 Intended End User Role -->
<xs:simpleType name="intendedEndUserRoleValues">
<xs:restriction base="xs:token">
<xs:enumeration value="teacher" />
<xs:enumeration value="author" />
<xs:enumeration value="learner" />
<xs:enumeration value="manager" />
</xs:restriction>
</xs:simpleType>
<!-- 5.6 Context -->
<xs:simpleType name="contextValues">
<xs:restriction base="xs:token">
<xs:enumeration value="school" />
<xs:enumeration value="higher education" />
<xs:enumeration value="training" />
<xs:enumeration value="other" />
</xs:restriction>
</xs:simpleType>
<!-- 5.8 Difficulty -->
<xs:simpleType name="difficultyValues">
<xs:restriction base="xs:token">
<xs:enumeration value="very easy" />
<xs:enumeration value="easy" />
<xs:enumeration value="medium" />
<xs:enumeration value="difficult" />
<xs:enumeration value="very difficult" />
</xs:restriction>
</xs:simpleType>
<!-- 6.1 Cost -->
<xs:simpleType name="costValues">
<xs:restriction base="xs:token">
<xs:enumeration value="yes" />
<xs:enumeration value="no" />
</xs:restriction>
</xs:simpleType>
<!-- 6.2 Copyright and Other Restrictions -->
<xs:simpleType name="copyrightAndOtherRestrictionsValues">
<xs:restriction base="xs:token">
<xs:enumeration value="yes" />
<xs:enumeration value="no" />
</xs:restriction>
</xs:simpleType>
<!-- 7.1 Kind -->
<xs:simpleType name="kindValues">
<xs:restriction base="xs:token">
<xs:enumeration value="ispartof" />
<xs:enumeration value="haspart" />
<xs:enumeration value="isversionof" />
<xs:enumeration value="hasversion" />
<xs:enumeration value="isformatof" />
<xs:enumeration value="hasformat" />
<xs:enumeration value="references" />
<xs:enumeration value="isreferencedby" />
<xs:enumeration value="isbasedon" />
<xs:enumeration value="isbasisfor" />
<xs:enumeration value="requires" />
<xs:enumeration value="isrequiredby" />
</xs:restriction>
</xs:simpleType>
<!-- 9.1 Purpose -->
<xs:simpleType name="purposeValues">
<xs:restriction base="xs:token">
<xs:enumeration value="discipline" />
<xs:enumeration value="idea" />
<xs:enumeration value="prerequisite" />
<xs:enumeration value="educational objective" />
<xs:enumeration value="accessibility restrictions" />
<xs:enumeration value="educational level" />
<xs:enumeration value="skill level" />
<xs:enumeration value="security level" />
<xs:enumeration value="competency" />
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,226 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Content Packaging Version: 1.2
found at http://www.imsglobal.org/content/packaging and the original IMS schema binding or code base
http://www.imsglobal.org/content/packaging/.
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 the schema
binding contained in this document.
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 IMSs 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 © IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free,
non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this document, that is, are distributing a software product that incorporates this document as is from a third-party source other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution of this document as is or with modifications and developers of products and services that are not original incorporators of this document and have changed this document, are required to register with the IMS community on the IMS website as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy,
display and distribute the contents of this document in any medium for any purpose without fee or royalty provided
that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license.
To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once
registered you are granted permission to transfer unlimited distribution rights of this document for the purposes
of third-party or other distribution of your product or service that incorporates this document as long as this IPR,
License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy,
display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.imsglobal.org/xsd/imscp_extensionv1p2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" targetNamespace="http://www.imsglobal.org/xsd/imscp_extensionv1p2" version="IMS CPX 1.2" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.imsglobal.org/xsd/ims_xlink.xsd" />
<xs:annotation>
<xs:documentation>
XSD Data File Information
-------------------------
Author: Colin Smythe (IMS, UK)
Date: 31st October, 2006
Version: 2.0
Status: Public Draft
Description: This is a normative representation of the IMS Packaging Extension 1.0 Information Model for binding
purposes. Read the corresponding IMS Content Packaging Information Model for the Platform
Independent Model representation.
History: Version 2 includes the modified definition of LingualTitle.
Version 1 of the IMS Packaging Utility v1.2 XSD for public draft release.
It has a target namespace of http://www.imsglobal.org/xsd/imscp_extensionv1p2.
This Utility uses this general approach to modeling:
(1) All of the elements and attributes are defined as local to their host object;
(2) There are multiple host objects;
(3) Comments have been added to the complexType definitions.
Copyright: 2006 (c) IMS Global Learning Consortium Inc. All Rights Reserved.
IMS Global Learning Consortium, Inc. (IMS/GLC) is publishing the information
contained in this binding ("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.
Source XSLT File Information
----------------------------
XSL Generator: UMLtoXSDTransformv0p7.xsl
XSLT Processor: Xalan
Release: 1.0 Beta 1
Date: 30th November, 2005
Auto-generation Tool
--------------------
This WSDL/XSD was auto-generated using the IMS WSDL/XSD auto-generation tool. While every attempt
has been made to ensure that this tool auto-generates the XSDs correctly, users should be aware
that this is an experimental tool. Permission is given to make use of this tool. IMS makes no
claim on the materials created by third party users of this tool. Details on how to use this tool
are contained in the IMS document: "IMS General Web Services: WSDL/XSD Binding Auto-generation"
available at the IMS web-site.
Tool Copyright: 2006 (c) IMS Global Learning Consortium Inc. All Rights Reserved.
</xs:documentation>
</xs:annotation>
<!-- Generate Global Attributes *********************************************************************** -->
<!-- ===================================== -->
<!-- Generate Namespaced extension Group ************************************************************* -->
<xs:group name="grpStrict.any">
<xs:annotation>
<xs:documentation>
Any namespaced element from any namespace may be included within an "any" element.
The namespace for the imported element must be defined in the instance, and the schema must be imported.
The extension has a definition of "strict" i.e. they must have their own namespace.
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:group>
<!-- ===================================== -->
<!-- Generate the enumerated simpleType declarations ************************************************** -->
<!-- ===================================== -->
<!-- Generate the simpleType elements based IMS data-types ******************************************* -->
<!-- ===================================== -->
<!-- Generate the derived data-type elements ********************************************************** -->
<!-- ===================================== -->
<!-- Generate the data-type elements ****************************************************************** -->
<xs:complexType name="IPointer.Type">
<xs:annotation>
<xs:documentation>
A bound instance of an IPointer object allows a packager to associate
a specific XML node set in the same IMS Manifest Document that contains
it or an XML node set in a different IMS Manifest Document instance with
the parent object containing an IMS Pointer instance.
A referenced node set must be a valid child of the referencing parent element,
both as to kind and multiplicity in a referencing parent's context.
<p>Represents a binding of the kinds of objects defined as children of ims-cp-imManifest : Manifest.[ ManifestMetadata, Organizations, Resources, Manifest, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute ref="xlink:type" use="optional" default="simple" />
<xs:attribute ref="xlink:href" use="required" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Metadata.Type">
<xs:annotation>
<xs:documentation>
An instance of the metadata element contains data structures that declare descriptive
information about a metadata element's parent only.
One or more different metadata models may be declared as child extensions of a
metadata element.
<p>Represents a binding of the kinds of child objects defined for ims-cp-imMetadata: Metadata.[ Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="grpStrict.any" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Variant.Type">
<xs:annotation>
<xs:documentation>
A variant element is closely analogous to a resource element in the
IMS Content Packaging Information Model. Variant is a container for a
an alternative resource. A resource may contain references
to assets that are all of the same type or different types (i.e., file formats).
The Variant class points to the alternatibe resource. Metadata is used to
describe the nature of a collection of alternative assets and their intended
use. Examples include, but are not limited to, use as lingual variants,
visual or auditory variants, remediation variants, or platform delivery variants.
The scope of referenced assets is specific to a Variant object. Their use is in the
context of the parent object containing a variant instance, typically a bound instance
of a Resource object from the IMS CP namespace.
<p>Represents a binding of the kinds of child objects defined for ims-cp-imResource: Resource.[ Metadata, File, Dependency, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="metadata" type="Metadata.Type" minOccurs="1" maxOccurs="1" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="identifierref" use="required" type="xs:IDREF" />
</xs:complexType>
<xs:complexType name="LingualTitle.Type">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="language" use="required" type="xs:string" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- ===================================== -->
<!-- Declaration of the elements ********************************************************************** -->
<!-- ===================================== -->
<!-- Declaration of the root element(s) *************************************************************** -->
<xs:element name="ipointer" type="IPointer.Type" />
<xs:element name="variant" type="Variant.Type" />
<xs:element name="lingualTitle" type="LingualTitle.Type" />
<!-- ===================================== -->
</xs:schema>
@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.ascc.net/xml/schematron">
<ns prefix="xs" uri="http://www.w3.org/2001/XMLSchema" />
<ns prefix="xsd" uri="http://www.w3.org/2001/XMLSchema" />
<ns prefix="xsi" uri="http://www.w3.org/2001/XMLSchema-instance" />
<ns prefix="ac" uri="http://iwm.uni-koblenz.de/xsd/tel_addc_v1p1" />
<ns prefix="ims" uri="http://www.imsglobal.org/xsd/imscc/imscp_v1p1" />
<!--***********************************************************************************************-->
<!--** Constraints document - this document holds Schematron rules that have been generated from **-->
<!--** AP condition and assertion elements. IMPORTANT: If this document exists, it MUST be **-->
<!--** used in the validation of instances derived from the resultant schema - failure to do so **-->
<!--** can result in an instance that does not conform to either the base schema or the **-->
<!--** Application Profile. **-->
<!--***********************************************************************************************-->
<pattern name="pattern_1">
<rule context="ims:organizations/ims:organization/ims:item/@identifierref | ims:manifest/ims:organizations/ims:organization/ims:item/@identifierref | @identifierref">
<assert test="(ims:organizations/ims:organization/ims:item/@identifierref | ims:manifest/ims:organizations/ims:organization/ims:item/@identifierref | @identifierref) and not (count(../item)=0)">Assertion failed for pattern_1. An Item object which represents a folder is indicated by the absence of an IdentifierRef characteristic object. Folder Items support unlimited nesting of other folder Items and learning object link Items. Learning Application Resource Item objects may be nested by folder Item object but may not nest other folder or Learning Application resource Item objects.(#S04)</assert>
</rule>
</pattern>
<pattern name="pattern_2">
<rule context="ims:resources/ims:resource/ims:dependency/@identifierref | ims:manifest/ims:resources/ims:resource/ims:dependency/@identifierref">
<assert test="(ims:resources/ims:resource/ims:dependency/@identifierref | ims:manifest/ims:resources/ims:resource/ims:dependency/@identifierref) and (../../@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and not (current() = /manifest/resources/resource[@type='webcontent']/@identifier)">Assertion failed for pattern_2. A Resource object which is a Learning Object Web Content may contain Dependency objects which reference Resource objects with Type 'webcontent'.(#S03)</assert>
</rule>
</pattern>
<pattern name="pattern_3">
<rule context="ims:organizations/ims:organization/ims:item/ims:item | ims:manifest/ims:organizations/ims:organization/ims:item/ims:item">
<assert test="(ims:organizations/ims:organization/ims:item/ims:item | ims:manifest/ims:organizations/ims:organization/ims:item/ims:item) and (@isvisible='false') and not (count(./item)=count(./item[@isvisible='false']))">Assertion failed for pattern_3. If an item is invisible, its descendants must be invisible too.(#S02)</assert>
</rule>
</pattern>
<pattern name="pattern_4">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='imsdt_xmlv1p0') and not (current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier or current()/@identifierref = /manifest/resources/resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier)">Assertion failed for pattern_4. A Resource object which is a Discussion Topic associated resource may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S12)</assert>
</rule>
</pattern>
<pattern name="pattern_5">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and not (current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier)">Assertion failed for pattern_5.
The test was: .
The context was: ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency</assert>
</rule>
</pattern>
<pattern name="pattern_6">
<rule context="ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(ims:resources/ims:resource/ims:dependency | ims:manifest/ims:resources/ims:resource/ims:dependency) and (../@type='imsqti_xmlv1p2/imscc_xmlv1p0/assessment') and not ((current()/@identifierref = /manifest/resources/resource[@type='webcontent']/@identifier) or (current()/@identifierref = /manifest/resources/resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier))">Assertion failed for pattern_6. A Resource object which is an assessment may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S14)</assert>
</rule>
</pattern>
<pattern name="pattern_7">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and ((./@type='webcontent' or ./@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and ./@identifier = //item/@identifierref) and not (count(./@href)=1)">Assertion failed for pattern_7. If a cartridge web content or associated content resource is linked from a Learning Application Object link Item object it must have an Href characteristic object which represents the launchable resource.(#S05)</assert>
</rule>
</pattern>
<pattern name="pattern_8">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and (./@type='imsdt_xmlv1p0') and not (count(./file)=1 and count(./@href)=0)">Assertion failed for pattern_8. For Discussion Topic Resources the Resource object must contain a single File object which references the Discussion Topic descriptor XML file which conforms to the http://www.imsglobal.org/xsd/imsdt_v1p0 schema. It must not have any href attribute.(#S06)</assert>
</rule>
</pattern>
<pattern name="pattern_9">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and (./@type='imswl_xmlv1p0') and not (count(./file)=1 and count(./dependency)=0 and count(./@href)=0)">Assertion failed for pattern_9. For Web Link Resources the Resource object must contain a single File object which references the Web Link descriptor XML file which conforms to the http://www.imsglobal.org/xsd/imswl_v1p0 schema. It must contain neither Dependency objects nor an href attribute.(#S07)</assert>
</rule>
</pattern>
<pattern name="pattern_10">
<rule context="ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource">
<assert test="(ims:resources/ims:resource | ims:manifest/ims:resources/ims:resource) and ((./@type='imsqti_xmlv1p2/imscc_xmlv1p0/assessment') or (./@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank')) and not (count(./file)=1 and count(./@href)=0)">Assertion failed for pattern_10. For Assessment or Question Bank Resources the Resource object must contain a single File object which references the QTI XML file. This file must conform to the IMS CC profile of QTI 1.2.1. The profile is contained in the package of this profile as imscc_q*.xdm. The derived schema of this QTI profile is in the package of this profile with the name ims_qtiasiv1p2_localised.xsd. The resource must not have an href attribute(#S11)</assert>
</rule>
</pattern>
</schema>
@@ -0,0 +1,234 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Content Packaging Version: 1.2
found at http://www.imsglobal.org/content/packaging and the original IMS schema binding or code base
http://www.imsglobal.org/content/packaging/.
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 the schema
binding contained in this document.
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 IMSs 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 © IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free,
non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this document, that is, are distributing a software product that incorporates this document as is from a third-party source other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution of this document as is or with modifications and developers of products and services that are not original incorporators of this document and have changed this document, are required to register with the IMS community on the IMS website as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy,
display and distribute the contents of this document in any medium for any purpose without fee or royalty provided
that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license.
To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once
registered you are granted permission to transfer unlimited distribution rights of this document for the purposes
of third-party or other distribution of your product or service that incorporates this document as long as this IPR,
License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy,
display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** imscp_extensionv1p2.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.imsglobal.org/xsd/imscp_extensionv1p2" targetNamespace="http://www.imsglobal.org/xsd/imscp_extensionv1p2" version="IMS CPX 1.2 localised_Schema_2008_6_30" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.imsglobal.org/xsd/ims_xlink.xsd" />
<xs:annotation>
<xs:documentation>
XSD Data File Information
-------------------------
Author: Colin Smythe (IMS, UK)
Date: 31st October, 2006
Version: 2.0
Status: Public Draft
Description: This is a normative representation of the IMS Packaging Extension 1.0 Information Model for binding
purposes. Read the corresponding IMS Content Packaging Information Model for the Platform
Independent Model representation.
History: Version 2 includes the modified definition of LingualTitle.
Version 1 of the IMS Packaging Utility v1.2 XSD for public draft release.
It has a target namespace of http://www.imsglobal.org/xsd/imscp_extensionv1p2.
This Utility uses this general approach to modeling:
(1) All of the elements and attributes are defined as local to their host object;
(2) There are multiple host objects;
(3) Comments have been added to the complexType definitions.
Copyright: 2006 (c) IMS Global Learning Consortium Inc. All Rights Reserved.
IMS Global Learning Consortium, Inc. (IMS/GLC) is publishing the information
contained in this binding ("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.
Source XSLT File Information
----------------------------
XSL Generator: UMLtoXSDTransformv0p7.xsl
XSLT Processor: Xalan
Release: 1.0 Beta 1
Date: 30th November, 2005
Auto-generation Tool
--------------------
This WSDL/XSD was auto-generated using the IMS WSDL/XSD auto-generation tool. While every attempt
has been made to ensure that this tool auto-generates the XSDs correctly, users should be aware
that this is an experimental tool. Permission is given to make use of this tool. IMS makes no
claim on the materials created by third party users of this tool. Details on how to use this tool
are contained in the IMS document: "IMS General Web Services: WSDL/XSD Binding Auto-generation"
available at the IMS web-site.
Tool Copyright: 2006 (c) IMS Global Learning Consortium Inc. All Rights Reserved.
</xs:documentation>
<xs:documentation xml:lang="en">general: This profile of the extension schema of IMS CP 1.2 restricts extensions to use the variant element only.</xs:documentation>
</xs:annotation>
<!-- Generate Global Attributes *********************************************************************** -->
<!-- ===================================== -->
<!-- Generate Namespaced extension Group ************************************************************* -->
<xs:group name="grpStrict.any">
<xs:annotation>
<xs:documentation>
Any namespaced element from any namespace may be included within an "any" element.
The namespace for the imported element must be defined in the instance, and the schema must be imported.
The extension has a definition of "strict" i.e. they must have their own namespace.
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:group>
<!-- ===================================== -->
<!-- Generate the enumerated simpleType declarations ************************************************** -->
<!-- ===================================== -->
<!-- Generate the simpleType elements based IMS data-types ******************************************* -->
<!-- ===================================== -->
<!-- Generate the derived data-type elements ********************************************************** -->
<!-- ===================================== -->
<!-- Generate the data-type elements ****************************************************************** -->
<xs:complexType name="IPointer.Type">
<xs:annotation>
<xs:documentation>
A bound instance of an IPointer object allows a packager to associate
a specific XML node set in the same IMS Manifest Document that contains
it or an XML node set in a different IMS Manifest Document instance with
the parent object containing an IMS Pointer instance.
A referenced node set must be a valid child of the referencing parent element,
both as to kind and multiplicity in a referencing parent's context.
<p>Represents a binding of the kinds of objects defined as children of ims-cp-imManifest : Manifest.[ ManifestMetadata, Organizations, Resources, Manifest, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute ref="xlink:type" use="optional" default="simple" />
<xs:attribute ref="xlink:href" use="required" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Metadata.Type">
<xs:annotation>
<xs:documentation>
An instance of the metadata element contains data structures that declare descriptive
information about a metadata element's parent only.
One or more different metadata models may be declared as child extensions of a
metadata element.
<p>Represents a binding of the kinds of child objects defined for ims-cp-imMetadata: Metadata.[ Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="grpStrict.any" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Variant.Type">
<xs:annotation>
<xs:documentation>
A variant element is closely analogous to a resource element in the
IMS Content Packaging Information Model. Variant is a container for a
an alternative resource. A resource may contain references
to assets that are all of the same type or different types (i.e., file formats).
The Variant class points to the alternatibe resource. Metadata is used to
describe the nature of a collection of alternative assets and their intended
use. Examples include, but are not limited to, use as lingual variants,
visual or auditory variants, remediation variants, or platform delivery variants.
The scope of referenced assets is specific to a Variant object. Their use is in the
context of the parent object containing a variant instance, typically a bound instance
of a Resource object from the IMS CP namespace.
<p>Represents a binding of the kinds of child objects defined for ims-cp-imResource: Resource.[ Metadata, File, Dependency, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="metadata" type="Metadata.Type" minOccurs="1" maxOccurs="1" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="identifierref" use="required" type="xs:IDREF" />
</xs:complexType>
<xs:complexType name="LingualTitle.Type">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="language" use="required" type="xs:string" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- ===================================== -->
<!-- Declaration of the elements ********************************************************************** -->
<!-- ===================================== -->
<!-- Declaration of the root element(s) *************************************************************** -->
<xs:element name="ipointer" type="IPointer.Type" />
<xs:element name="variant" type="Variant.Type" />
<xs:element name="lingualTitle" type="LingualTitle.Type" />
<!-- ===================================== -->
</xs:schema>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,181 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Common Cartridge Version 1.0 found at http://www.imsglobal.org/cc/index.html and the original IMS schema binding or code base http://www.imsglobal.org/cc/ccv1p0/imscc_authv1p0.html.
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 the schema binding contained in this document.
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 IMSs 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 © IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free, non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this document, that is, are distributing a software product that incorporates this document as is from a third-party source other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution of this document as is or with modifications and developers of products and services that are not original incorporators of this document and have changed this document, are required to register with the IMS community on the IMS website as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once registered you are granted permission to transfer unlimited distribution rights of this document for the purposes of third-party or other distribution of your product or service that incorporates this document as long as this IPR, License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy, display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.imsglobal.org/xsd/ims_qtiasiv1p2" targetNamespace="http://www.imsglobal.org/xsd/ims_qtiasiv1p2">
<xsd:import namespace="ims_qtiasiv1p2_def_copy.xsd" schemaLocation="ims_qtiasiv1p2_def_copy.xsd" />
<!--****************************************************************************************-->
<!--** Definition document - this document holds AP defined simpleType elements that have **-->
<!--** been referenced through a type attribute in one of the modified, resultant schema. **-->
<!--****************************************************************************************-->
<xs:simpleType name="ExactOnlyType">
<xs:restriction>
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="Exact" />
<xs:enumeration value="Range" />
</xs:restriction>
</xs:simpleType>
<xs:whiteSpace value="collapse" />
<xs:enumeration value="Exact" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EclipseOnlyType">
<xs:restriction>
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="Ellipse" />
<xs:enumeration value="Rectangle" />
<xs:enumeration value="Bounded" />
</xs:restriction>
</xs:simpleType>
<xs:whiteSpace value="collapse" />
<xs:enumeration value="Ellipse" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string4">
<xs:restriction base="xs:string">
<xs:maxLength value="4" />
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string32">
<xs:restriction base="xs:string">
<xs:maxLength value="32" />
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string256">
<xs:restriction base="xs:string">
<xs:maxLength value="256" />
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string2">
<xs:restriction base="xs:string">
<xs:maxLength value="2" />
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string16">
<xs:restriction base="xs:string">
<xs:maxLength value="16" />
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string1024">
<xs:restriction base="xs:string">
<xs:maxLength value="1024" />
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SetAddSubtractOnly">
<xs:restriction>
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="Set" />
<xs:enumeration value="Add" />
<xs:enumeration value="Subtract" />
<xs:enumeration value="Multiply" />
<xs:enumeration value="Divide" />
</xs:restriction>
</xs:simpleType>
<xs:whiteSpace value="collapse" />
<xs:enumeration value="Set" />
<xs:enumeration value="Add" />
<xs:enumeration value="Subtract" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ScoreOnlyType">
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve" />
<xs:enumeration value="SCORE" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DummyType">
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DecimalIntegerOnly">
<xs:restriction>
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="Integer" />
<xs:enumeration value="String" />
<xs:enumeration value="Decimal" />
<xs:enumeration value="Scientific" />
<xs:enumeration value="Boolean" />
<xs:enumeration value="Enumerated" />
<xs:enumeration value="Set" />
</xs:restriction>
</xs:simpleType>
<xs:whiteSpace value="collapse" />
<xs:enumeration value="Integer" />
<xs:enumeration value="Decimal" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CompleteOnly">
<xs:restriction>
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="Complete" />
<xs:enumeration value="Incremental" />
<xs:enumeration value="Multilevel" />
<xs:enumeration value="Proprietary" />
</xs:restriction>
</xs:simpleType>
<xs:whiteSpace value="collapse" />
<xs:enumeration value="Complete" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="AllOnlyValue">
<xs:restriction>
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="All" />
<xs:enumeration value="Administrator" />
<xs:enumeration value="AdminAuthority" />
<xs:enumeration value="Assessor" />
<xs:enumeration value="Author" />
<xs:enumeration value="Candidate" />
<xs:enumeration value="InvigilatorProctor" />
<xs:enumeration value="Psychometrician" />
<xs:enumeration value="Scorer" />
<xs:enumeration value="Tutor" />
</xs:restriction>
</xs:simpleType>
<xs:whiteSpace value="collapse" />
<xs:enumeration value="All" />
</xs:restriction>
</xs:simpleType>
</xsd:schema>
+145
View File
@@ -0,0 +1,145 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.w3.org/XML/1998/namespace" xml:lang="en">
<xs:annotation>
<xs:documentation>
See http://www.w3.org/XML/1998/namespace.html and
http://www.w3.org/TR/REC-xml for information about this namespace.
This schema document describes the XML namespace, in a form
suitable for import by other schema documents.
Note that local names in this namespace are intended to be defined
only by the World Wide Web Consortium or its subgroups. The
following names are currently defined in this namespace and should
not be used with conflicting semantics by any Working Group,
specification, or document instance:
base (as an attribute name): denotes an attribute whose value
provides a URI to be used as the base for interpreting any
relative URIs in the scope of the element on which it
appears; its value is inherited. This name is reserved
by virtue of its definition in the XML Base specification.
id (as an attribute name): denotes an attribute whose value
should be interpreted as if declared to be of type ID.
This name is reserved by virtue of its definition in the
xml:id specification.
lang (as an attribute name): denotes an attribute whose value
is a language code for the natural language of the content of
any element; its value is inherited. This name is reserved
by virtue of its definition in the XML specification.
space (as an attribute name): denotes an attribute whose
value is a keyword indicating what whitespace processing
discipline is intended for the content of the element; its
value is inherited. This name is reserved by virtue of its
definition in the XML specification.
Father (in any context at all): denotes Jon Bosak, the chair of
the original XML Working Group. This name is reserved by
the following decision of the W3C XML Plenary and
XML Coordination groups:
In appreciation for his vision, leadership and dedication
the W3C XML Plenary on this 10th day of February, 2000
reserves for Jon Bosak in perpetuity the XML name
xml:Father
</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>This schema defines attributes and an attribute group
suitable for use by
schemas wishing to allow xml:base, xml:lang, xml:space or xml:id
attributes on elements they define.
To enable this, such a schema must import this schema
for the XML namespace, e.g. as follows:
&lt;schema . . .&gt;
. . .
&lt;import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/&gt;
Subsequently, qualified reference to any of the attributes
or the group defined below will have the desired effect, e.g.
&lt;type . . .&gt;
. . .
&lt;attributeGroup ref="xml:specialAttrs"/&gt;
will define a type which will schema-validate an instance
element with any of those attributes</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>In keeping with the XML Schema WG's standard versioning
policy, this schema document will persist at
http://www.w3.org/2007/08/xml.xsd.
At the date of issue it can also be found at
http://www.w3.org/2001/xml.xsd.
The schema document at that URI may however change in the future,
in order to remain compatible with the latest version of XML Schema
itself, or with the XML namespace itself. In other words, if the XML
Schema or XML namespaces change, the version of this document at
http://www.w3.org/2001/xml.xsd will change
accordingly; the version at
http://www.w3.org/2007/08/xml.xsd will not change.
</xs:documentation>
</xs:annotation>
<xs:attribute name="lang">
<xs:annotation>
<xs:documentation>Attempting to install the relevant ISO 2- and 3-letter
codes as the enumerated possible values is probably never
going to be a realistic possibility. See
RFC 3066 at http://www.ietf.org/rfc/rfc3066.txt and the IANA registry
at http://www.iana.org/assignments/lang-tag-apps.htm for
further information.
The union allows for the 'un-declaration' of xml:lang with
the empty string.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:union memberTypes="xs:token">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="" />
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="space">
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="default" />
<xs:enumeration value="preserve" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="base" type="xs:anyURI">
<xs:annotation>
<xs:documentation>See http://www.w3.org/TR/xmlbase/ for
information about this attribute.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="id" type="xs:ID">
<xs:annotation>
<xs:documentation>See http://www.w3.org/TR/xml-id/ for
information about this attribute.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attributeGroup name="specialAttrs">
<xs:attribute ref="xml:base" />
<xs:attribute ref="xml:lang" />
<xs:attribute ref="xml:space" />
<xs:attribute ref="xml:id" />
</xs:attributeGroup>
</xs:schema>
@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Common Cartridge Version 1.0 found at http://www.imsglobal.org/cc/index.html and the original IMS schema binding or code base http://www.imsglobal.org/cc/.
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 the schema binding contained in this document.
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 IMSs 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 © IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free, non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this document, that is, are distributing a software product that incorporates this document as is from a third-party source other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution of this document as is or with modifications and developers of products and services that are not original incorporators of this document and have changed this document, are required to register with the IMS community on the IMS website as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once registered you are granted permission to transfer unlimited distribution rights of this document for the purposes of third-party or other distribution of your product or service that incorporates this document as long as this IPR, License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy, display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.imsglobal.org/xsd/imswl_v1p0" targetNamespace="http://www.imsglobal.org/xsd/imswl_v1p0" elementFormDefault="unqualified">
<xs:element name="webLink" type="webLinkType" />
<xs:complexType name="webLinkType">
<xs:sequence>
<xs:element name="title" type="xs:string" />
<xs:element name="url">
<xs:complexType>
<xs:attribute name="href" type="xs:string" use="required" />
<xs:attribute name="target" type="xs:string" />
<xs:attribute name="windowFeatures" type="xs:string" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:schema>
@@ -0,0 +1,61 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** imswl_v1p0.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Common Cartridge Version 1.0 found at http://www.imsglobal.org/cc/index.html and the original IMS schema binding or code base http://www.imsglobal.org/cc/.
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 the schema binding contained in this document.
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 IMSs 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 © IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free, non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this document, that is, are distributing a software product that incorporates this document as is from a third-party source other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution of this document as is or with modifications and developers of products and services that are not original incorporators of this document and have changed this document, are required to register with the IMS community on the IMS website as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once registered you are granted permission to transfer unlimited distribution rights of this document for the purposes of third-party or other distribution of your product or service that incorporates this document as long as this IPR, License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy, display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** imswl_v1p0.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.imsglobal.org/xsd/imswl_v1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://www.imsglobal.org/xsd/imswl_v1p0" elementFormDefault="unqualified">
<xs:element name="webLink" type="webLinkType" />
<xs:complexType name="webLinkType">
<xs:sequence>
<xs:element name="title" type="xs:string" />
<xs:element name="url">
<xs:complexType>
<xs:attribute name="href" type="xs:string" use="required" />
<xs:attribute name="target" type="xs:string" />
<xs:attribute name="windowFeatures" type="xs:string" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:schema>
@@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Common Cartridge Version 1.0 found at http://www.imsglobal.org/cc/index.html and the original IMS schema binding or code base http://www.imsglobal.org/cc/.
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 the schema binding contained in this document.
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 IMSs 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 © IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free, non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this document, that is, are distributing a software product that incorporates this document as is from a third-party source other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution of this document as is or with modifications and developers of products and services that are not original incorporators of this document and have changed this document, are required to register with the IMS community on the IMS website as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once registered you are granted permission to transfer unlimited distribution rights of this document for the purposes of third-party or other distribution of your product or service that incorporates this document as long as this IPR, License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy, display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.imsglobal.org/xsd/imsdt_v1p0" targetNamespace="http://www.imsglobal.org/xsd/imsdt_v1p0" elementFormDefault="unqualified">
<xs:element name="topic" type="topicType" />
<xs:complexType name="topicType">
<xs:sequence>
<xs:element name="title" type="xs:string" />
<xs:element name="text">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="texttype" type="textTypeType" default="text/plain" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="attachments" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="attachment" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="href" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="textTypeType">
<xs:restriction base="xs:string">
<xs:enumeration value="text/html" />
<xs:enumeration value="text/plain" />
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Common Cartridge Version 1.0 found at http://www.imsglobal.org/cc/index.html and the original IMS schema binding or code base http://www.imsglobal.org/cc/.
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 the schema binding contained in this document.
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 IMSs 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 © IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free, non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this document, that is, are distributing a software product that incorporates this document as is from a third-party source other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution of this document as is or with modifications and developers of products and services that are not original incorporators of this document and have changed this document, are required to register with the IMS community on the IMS website as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once registered you are granted permission to transfer unlimited distribution rights of this document for the purposes of third-party or other distribution of your product or service that incorporates this document as long as this IPR, License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy, display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** imsdt_v1p0.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.imsglobal.org/xsd/imsdt_v1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://www.imsglobal.org/xsd/imsdt_v1p0" elementFormDefault="unqualified">
<xs:element name="topic" type="topicType" />
<xs:complexType name="topicType">
<xs:sequence>
<xs:element name="title" type="xs:string" />
<xs:element name="text">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="texttype" type="textTypeType" default="text/plain" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="attachments" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="attachment" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="href" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="textTypeType">
<xs:restriction base="xs:string">
<xs:enumeration value="text/html" />
<xs:enumeration value="text/plain" />
</xs:restriction>
</xs:simpleType>
</xs:schema>
@@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.imsglobal.org/xsd/imscc/imscp_v1p1" targetNamespace="http://www.imsglobal.org/xsd/imscc/imscp_v1p1">
<xsd:import namespace="http://www.imsglobal.org/xsd/imscp_v1p1" schemaLocation="imscp_v1p2.xsd" />
<!--****************************************************************************************-->
<!--** Definition document - this document holds AP defined simpleType elements that have **-->
<!--** been referenced through a type attribute in one of the modified, resultant schema. **-->
<!--****************************************************************************************-->
<xs:simpleType name="schemaversionFixed">
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="schemaFixed">
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="rootedHierarchy">
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="predefinedContentTypes">
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve" />
<xs:enumeration value="imsdt_xmlv1p0" />
<xs:enumeration value="imswl_xmlv1p0" />
<xs:enumeration value="webcontent" />
<xs:enumeration value="imsqti_xmlv1p2/imscc_xmlv1p0/assessment" />
<xs:enumeration value="imsqti_xmlv1p2/imscc_xmlv1p0/question-bank" />
<xs:enumeration value="associatedcontent/imscc_xmlv1p0/learning-application-resource" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="isNotVisible">
<xs:restriction base="xs:boolean">
<xs:whiteSpace value="collapse" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="defaultOrganizationProhibited">
<xs:restriction base="xs:IDREF">
<xs:whiteSpace value="collapse" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="RequiredHref">
<xs:restriction base="xs:anyURI">
<xs:whiteSpace value="collapse" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ProhibitedHref">
<xs:restriction base="xs:anyURI">
<xs:whiteSpace value="collapse" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="OptionalHref">
<xs:restriction base="xs:anyURI">
<xs:whiteSpace value="collapse" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NoParameters">
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NoParameter">
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NoIsVisible">
<xs:restriction base="xs:boolean">
<xs:whiteSpace value="collapse" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NoIdentifierRef">
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve" />
</xs:restriction>
</xs:simpleType>
</xsd:schema>
+383
View File
@@ -0,0 +1,383 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Content Packaging Version: 1.2
found at http://www.imsglobal.org/content/packaging/ and the original IMS schema binding or code base
http://www.imsglobal.org/content/packaging/.
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 the schema
binding contained in this document.
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 IMSs 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 © IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free,
non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this
document, that is, are distributing a software product that incorporates this document as is from a third-party source
other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any
medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its
entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution
of this document as is or with modifications and developers of products and services that are not original incorporators
of this document and have changed this document, are required to register with the IMS community on the IMS website
as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy,
display and distribute the contents of this document in any medium for any purpose without fee or royalty provided
that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license.
To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once
registered you are granted permission to transfer unlimited distribution rights of this document for the purposes
of third-party or other distribution of your product or service that incorporates this document as long as this IPR,
License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy,
display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.imsglobal.org/xsd/imscp_v1p1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://www.imsglobal.org/xsd/imscp_v1p1" version="IMS CP 1.2" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd" />
<xs:annotation>
<xs:documentation>
XSD Data File Information
-------------------------
Author: CP1.2 Project Team
Date: 31st October, 2006
Version: 2.0
Status: CM/DN Release
Description: This is a normative representation of the IMS CP 1.2 Information Model for binding
purposes. Read the corresponding IMS CP Information Model for the Platform
Independent Model representation.
History: This is version 1 of the IMS CP v1.2 XSD. It directly supercedes IMS CP v1.1.4 XSD.
Note that the target namespace has NOT been changed.
Apart from the functional additions, the main structural changes are:
(1) All of the elements and attributes are defined as local to their host object;
(2) Comments have been added to the complexType definitions.
Copyright: 2006 (c) IMS Global Learning Consortium Inc. All Rights Reserved.
IMS Global Learning Consortium, Inc. (IMS/GLC) is publishing the information
contained in this binding ("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.
Source XSLT File Information
----------------------------
XSL Generator: UMLtoXSDTransformv0p7.xsl
XSLT Processor: Xalan
Release: 1.0 Beta 1
Date: 30th November, 2005
Auto-generation Tool
--------------------
This WSDL/XSD was auto-generated using the IMS WSDL/XSD auto-generation tool. While every attempt
has been made to ensure that this tool auto-generates the XSDs correctly, users should be aware
that this is an experimental tool. Permission is given to make use of this tool. IMS makes no
claim on the materials created by third party users of this tool. Details on how to use this tool
are contained in the IMS document: "IMS General Web Services: WSDL/XSD Binding Auto-generation"
available at the IMS web-site.
Tool Copyright: 2005 (c) IMS Global Learning Consortium Inc. All Rights Reserved.
</xs:documentation>
</xs:annotation>
<!-- Generate Global Attributes *********************************************************************** -->
<!-- ===================================== -->
<!-- Generate Namespaced extension Group ************************************************************* -->
<xs:group name="grpStrict.any">
<xs:annotation>
<xs:documentation>
Any namespaced element from any namespace may be included within an "any" element.
The namespace for the imported element must be defined in the instance, and the schema must be imported.
The extension has a definition of "strict" i.e. they must have their own namespace.
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:group>
<!-- ===================================== -->
<!-- Generate the enumerated simpleType declarations ************************************************** -->
<!-- ===================================== -->
<!-- Generate the simpleType elements based IMS data-types ******************************************* -->
<!-- ===================================== -->
<!-- Generate the derived data-type elements ********************************************************** -->
<!-- ===================================== -->
<!-- Generate the data-type elements ****************************************************************** -->
<xs:complexType name="Manifest.Type">
<xs:annotation>
<xs:documentation>
A manifest element is a container for data structures whose contents describe a
semantically complete instance of the IMS Content Packaging Information Model.
A manifest element may contain and reference child manifest elements
in the same IMS Manifest document. The root manifest element defines an
entire IMS Package. A child manifest element defines a semantically complete
subset of that Package.
<p>Represents a binding of the kinds of objects defined as children of ims-cp-imManifest : Manifest.[ ManifestMetadata, Organizations, Resources, Manifest, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="metadata" type="ManifestMetadata.Type" minOccurs="0" maxOccurs="1" />
<xs:element name="organizations" type="Organizations.Type" minOccurs="1" maxOccurs="1" />
<xs:element name="resources" type="Resources.Type" minOccurs="1" maxOccurs="1" />
<xs:element name="manifest" type="Manifest.Type" minOccurs="0" maxOccurs="unbounded" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="version" use="optional" type="xs:string" />
<xs:attribute ref="xml:base" use="optional" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Metadata.Type">
<xs:annotation>
<xs:documentation>
An instance of the metadata element contains data structures
that declare descriptive information about a metadata element's
parent only.
One or more different metadata models may be declared as
child extensions of a metadata element.
<p>Represents a binding of the kinds of child objects defined for ims-cp-imMetadata: Metadata.[ Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="schema" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="schemaversion" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Organizations.Type">
<xs:annotation>
<xs:documentation>
The organizations element is a container for all data structures
that describe the way or ways that information encapsulated by
its parent manifest element is structured.
<p>Represents of binding of the child objects of ims-cp-imOrganizations: Organizations.[ Organization, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="organization" type="Organization.Type" minOccurs="0" maxOccurs="unbounded" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="default" use="optional" type="xs:IDREF" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Resources.Type">
<xs:annotation>
<xs:documentation>
The Resources element is a container for data structures containing
references to one or more assets. Asset references may be grouped
within a containing resources element in whatever manner seems best.
The scope of referenced assets is specific to a resources element's parent
manifest element only.
<p>Represents a binding of the kinds of child objects defined for ims-cp-imResources: Resources.[ Resource, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="resource" type="Resource.Type" minOccurs="0" maxOccurs="unbounded" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute ref="xml:base" use="optional" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Organization.Type">
<xs:annotation>
<xs:documentation>
An organization element is a container for all data structures relating
to a particular way or view that information encapsulated by a
grandparent manifest object is structured.
Multiple organization elements within the same parent organizations
element are equivalent in purpose: Each shows a different way for
structuring the same information declared within a grandparent
manifest object.
<p>Represents a binding of the kinds of child objects defined for ims-cp-Organization: Organization[ Title, Item, Metadata, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="title" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="item" type="Item.Type" minOccurs="1" maxOccurs="unbounded" />
<xs:element name="metadata" type="Metadata.Type" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="structure" use="optional" type="xs:string" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Resource.Type">
<xs:annotation>
<xs:documentation>
A resource element is a container for a particular asset
or collection of assets. A resource may contain references
to assets that are all of the same type or different types (i.e., file formats).
The scope or boundary of an IMS Package is defined by the asset
references collected into all resources containers associated with the
root manifest element, whether as a child, direcdt descendant, or externally
linked descendant.
<p>Represents a binding of the kinds of child objects defined for ims-cp-imResource: Resource.[ Metadata, File, Dependency, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="metadata" type="Metadata.Type" minOccurs="0" maxOccurs="1" />
<xs:element name="file" type="File.Type" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="dependency" type="Dependency.Type" minOccurs="0" maxOccurs="unbounded" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="type" use="required" type="xs:string" />
<xs:attribute ref="xml:base" use="optional" />
<xs:attribute name="href" use="optional" type="xs:anyURI" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Item.Type">
<xs:annotation>
<xs:documentation>
An item element represents a structural node in a particular organization.
An item element may be a parent or sibling of other Item elements,
each one representing a unique structural node.
An organization has no meaning unless it has at least one Item element.
<p>Represents a binding of the kinds of child objects of ims-cp-imItem: Item.[ Title, Item, Metadata, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="title" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="item" type="Item.Type" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="metadata" type="Metadata.Type" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="identifierref" use="optional" type="xs:string" />
<xs:attribute name="isvisible" use="optional" type="xs:boolean" />
<xs:attribute name="parameters" use="optional" type="xs:string" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="File.Type">
<xs:annotation>
<xs:documentation>
A file element declares a reference to a single asset. The reference may
be relative to the Package containing the file element or absolute
(external to the Package).
A file element may contain child extensions declaring alternative references
to the same asset as that referenced by the file element's href attribute.
<p>Represents a binding of the kinds of child objects defined for ims-cp-imFile: File.[ Metadata, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="metadata" type="Metadata.Type" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="href" use="required" type="xs:anyURI" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Dependency.Type">
<xs:annotation>
<xs:documentation>
A dependency element provides a way to associate another collection of
asset references within the scope of the dependency element's parent
resource element.
This element allows the parsimonious declaration of asset references.
Shared asset references can be declared once and associated many
times through a Dependency element.
<p>Represents a binding of the kinds of child objects defined for ims-cp-imDependency: Dependency.[ Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifierref" use="required" type="xs:string" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="ManifestMetadata.Type">
<xs:annotation>
<xs:documentation>
This metadata element contains data structures that declare
descriptive information about an entire Package.
One or more different metadata models may be declared as
child extensions of a metadata element.
The schema and schemaversion children define the kind or collection
of metadata models being used.
<p>Represents a binding of the kinds of child objects defined for ims-cp-imManifestMetadata: ManifestMetadata.[ Schema, SchemaVersion, MetadataModel ]..</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="schema" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="schemaversion" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
</xs:complexType>
<!-- ===================================== -->
<!-- Declaration of the elements ********************************************************************** -->
<!-- ===================================== -->
<!-- Declaration of the root element(s) *************************************************************** -->
<xs:element name="manifest" type="Manifest.Type" />
<!-- ===================================== -->
</xs:schema>
@@ -0,0 +1,138 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.ascc.net/xml/schematron">
<ns prefix="xs" uri="http://www.w3.org/2001/XMLSchema" />
<ns prefix="xsd" uri="http://www.w3.org/2001/XMLSchema" />
<ns prefix="xsi" uri="http://www.w3.org/2001/XMLSchema-instance" />
<ns prefix="ac" uri="http://iwm.uni-koblenz.de/xsd/tel_addc_v1p1" />
<ns prefix="ims" uri="http://www.imsglobal.org/xsd/imscc/imscp_v1p1" />
<!--***********************************************************************************************-->
<!--** Constraints document - this document holds Schematron rules that have been generated from **-->
<!--** AP condition and assertion elements. IMPORTANT: If this document exists, it MUST be **-->
<!--** used in the validation of instances derived from the resultant schema - failure to do so **-->
<!--** can result in an instance that does not conform to either the base schema or the **-->
<!--** Application Profile. **-->
<!--***********************************************************************************************-->
<pattern name="pattern_2">
<rule context="ims:organizations/ims:organization//ims:item">
<assert test="not(@isvisible='false') or count(./ims:item)=count(./ims:item[@isvisible='false'])">Assertion failed for pattern_2. If an item is invisible, its descendants must be invisible too.(#S02)</assert>
</rule>
</pattern>
<pattern name="pattern_3">
<rule context="ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(not(../@type='associatedcontent/imscc_xmlv1p0/learning-application-resource')) or (current()/@identifierref = /ims:manifest/ims:resources/ims:resource[@type='webcontent']/@identifier)">Assertion failed for pattern_3. A Resource object which is a Learning Object associated resource may contain Dependency objects which reference Resource objects with Type 'webcontent'.(#S03)</assert>
</rule>
</pattern>
<pattern name="pattern_4">
<rule context="ims:manifest/ims:organizations/ims:organization//ims:item">
<assert test="count(./@identifierref)=0 or count(./ims:item)=0">Assertion failed for pattern_4. An Item object which represents a folder is indicated by the absence of an IdentifierRef characteristic object. Folder Items support unlimited nesting of other folder Items and learning object link Items. Learning Application Resource Item objects may be nested by folder Item object but may not nest other folder or Learning Application resource Item objects.(#S04)</assert>
</rule>
</pattern>
<pattern name="pattern_5">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not((./@type='webcontent' or ./@type='associatedcontent/imscc_xmlv1p0/learning-application-resource') and ./@identifier = //ims:item/@identifierref) or count(./@href)=1">Error: Assertion failed for pattern_5: If a cartridge web content or associated content resource is linked from a Learning Application Object link Item object it must have an Href characteristic object which represents the launchable resource.(#S05)</assert>
</rule>
</pattern>
<pattern name="pattern_6">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imsdt_xmlv1p0') or (count(./ims:file)= 1 and count(./@href)=0)">Error: Assertion failed for pattern_5: For Discussion Topic Resources the Resource object must contain a single File object which references the Discussion Topic descriptor XML file which conforms to the http://www.imsglobal.org/xsd/imsdt_v1p0 schema. Discussion Topic resources must not contain href (#S06)</assert>
</rule>
</pattern>
<pattern name="pattern_7">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imswl_xmlv1p0') or (count(./ims:file) = 1 and count(./ims:dependency)=0 and count(./@href)=0)">Error: Assertion validation failed for pattern_7: For Web Link Resources the Resource object must contain a single File object which references the Web Link descriptor XML file which conforms to the http://www.imsglobal.org/xsd/imswl_v1p0 schema.It must contain neither Dependency objects nor an href attribute.(#S07)</assert>
</rule>
</pattern>
<!-- Reference to SCORM removed
<pattern name="pattern_8">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imscc_xmlv1p0/scorm') or (count(./ims:file) = 1 and count(./ims:dependency)=0 and count(./@href)=0)">Error: Assertion validation failed for pattern_8:For SCORM resources the Resource object must contain a single File object which references the SCORM package interchange file.(#S08)</assert>
</rule>
</pattern>
-->
<!-- TI references removed
<pattern name="pattern_9">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imstiptdc_xmlv1p0') or (count(./ims:file) = 1 and count(./ims:dependency)=1 and count(./@href)=0)">Error: Assertion validation failed for pattern_9: For TI Deployment Context Resources the Resource object must contain a single File object which references the TI deployment context XML file. It must have a single dependency which references a Resource object with Type 'imstiptdd_xmlv1p0'. This represents the Tools Interoperabilty Deployment Descriptor.The TI Deployment Context Resource must not have any href attribute(#S09)</assert>
</rule>
</pattern>
<pattern name="pattern_10">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imstiptdd_xmlv1p0') or (count(./ims:file) = 1 and count(./ims:dependency)=0 and count(./@href)=0)">Error: Assertion validation failed for pattern_9: For Deployment Descriptor Resources the Resource object must contain a single File object which references the TI deployment descriptor XML file. This file must conform to the schema http://www.imsglobal.org/services/cc/imsti_ptdd_v1p0. The Deployment Descriptor Resource must have neither a dependency nor an href attribute.(#S10)</assert>
</rule>
</pattern>
-->
<pattern name="pattern_11a">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imsqti_xmlv1p2/imscc_xmlv1p0/assessment') or (count(./ims:file) = 1 and count(./@href)=0)">Error: Assertion validation failed for pattern_11a: For Assessment resources the Resource object must contain a single File object which references the QTI XML file. This file must conform to the IMS CC profile of QTI 1.2.1. The profile is contained in the package of this profile as imscc_q*.zip. The derived schema of this QTI profile is in the package of this profile with the name ims_qtiasiv1p2_localised.xsd. The resource must not have an href attribute(#S11a)</assert>
</rule>
</pattern>
<!--
The following pattern has been broken up into pattern 11b1-11b4 for better readability of reports
<pattern name="pattern_11b">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank') or (count(./ims:file) = 1 and count(./@href)=0 and not(//ims:item[@identifierref]=./@identifier) and count(//ims:resource[@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank'])=1)">Error: Assertion validation failed for pattern_11b: For Question Bank resources the Resource object must contain a single File object which references the QTI XML file. This file must conform to the IMS CC profile of QTI 1.2.1. The profile is contained in the package of this profile as imscc_q*.zip. The derived schema of this QTI profile is in the package of this profile with the name ims_qtiasiv1p2_localised.xsd. The resource must not have an href attribute. Moreover a Question Bank Resource must not be referenced from an item. There can be only one Questionbank Resource in a cartridge.(#S11b)</assert>
</rule>
</pattern>
-->
<pattern name="pattern_11b1">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank') or (count(./ims:file) = 1 )">Error: Assertion validation failed for pattern_11b1: For Question Bank resources the Resource object must contain a single File object which references the QTI XML file. (#S11b1)</assert>
</rule>
</pattern>
<pattern name="pattern_11b2">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank') or (count(./@href)=0 )">Error: Assertion validation failed for pattern_11b2: A Question Bank Resource must not have an href attribute. (#S11b2)</assert>
</rule>
</pattern>
<pattern name="pattern_11b3">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank') or ( not(//ims:item[@identifierref]=./@identifier) )">Error: Assertion validation failed for pattern_11b3: A Question Bank Resource must not be referenced from an item. (#S11b3)</assert>
</rule>
</pattern>
<pattern name="pattern_11b4">
<rule context="ims:manifest/ims:resources/ims:resource">
<assert test="not(./@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank') or (count(//ims:resource[@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank'])=1)">Error: Assertion validation failed for pattern_11b4: There can be only one Questionbank Resource in a cartridge.(#S11b4)</assert>
</rule>
</pattern>
<pattern name="pattern_12">
<rule context="ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(not(../@type='imsdt_xmlv1p0')) or (current()/@identifierref = /ims:manifest/ims:resources/ims:resource[@type='webcontent']/@identifier) or (current()/@identifierref = /ims:manifest/ims:resources/ims:resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier)">Assertion failed for pattern_12. A Resource object which is a Discussion Topic associated resource may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S12)</assert>
</rule>
</pattern>
<!-- TI reference removed
<pattern name="pattern_13">
<rule context="ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(not(../@type='imstiptdc_xmlv1p0')) or (current()/@identifierref = /ims:manifest/ims:resources/ims:resource[@type='imstiptdd_xmlv1p0']/@identifier)">Assertion failed for pattern_13. A Resource object which is a Deployment Context may contain a single Dependency object which reference Resource objects which describe a Deployment descriptor.(#S13)</assert>
</rule>
</pattern>
-->
<pattern name="pattern_14">
<rule context="ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(not(../@type='imsqti_xmlv1p2/imscc_xmlv1p0/assessment')) or (current()/@identifierref = /ims:manifest/ims:resources/ims:resource[@type='webcontent']/@identifier) or (current()/@identifierref = /ims:manifest/ims:resources/ims:resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier)">Assertion failed for pattern_14. A Resource object which is an assessment may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S14)</assert>
</rule>
</pattern>
<pattern name="pattern_15">
<rule context="ims:manifest/ims:resources/ims:resource/ims:dependency">
<assert test="(not(../@type='imsqti_xmlv1p2/imscc_xmlv1p0/question-bank')) or (current()/@identifierref = /ims:manifest/ims:resources/ims:resource[@type='webcontent']/@identifier) or (current()/@identifierref = /ims:manifest/ims:resources/ims:resource[@type='associatedcontent/imscc_xmlv1p0/learning-application-resource']/@identifier)">Assertion failed for pattern_15. A Resource object which is a Question Bank may contain Dependency objects which reference Resource objects with Type 'webcontent' or 'associatedcontent/imscc_xmlv1p0/learning-application-resource'.(#S15)</assert>
</rule>
</pattern>
</schema>
+455
View File
@@ -0,0 +1,455 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
IPR, License and Distribution Notices
This machine readable file is derived from IMS specification IMS Content Packaging Version: 1.2
found at http://www.imsglobal.org/content/packaging/ and the original IMS schema binding or code base
http://www.imsglobal.org/content/packaging/.
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 the schema
binding contained in this document.
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 IMSs 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 © IMS Global Learning Consortium 1999-2008. All Rights Reserved.
License Notice for Users
Users of products or services that include this document are hereby granted a worldwide, royalty-free,
non-exclusive license to use this document.
Distribution Notice for Developers
Developers of products or services that are not original incorporators of this document and have not changed this
document, that is, are distributing a software product that incorporates this document as is from a third-party source
other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any
medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its
entirety on ALL copies, or portions thereof.
Developers of products or services that are original incorporators of this document and wish to provide distribution
of this document as is or with modifications and developers of products and services that are not original incorporators
of this document and have changed this document, are required to register with the IMS community on the IMS website
as described in the following two paragraphs:
- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy,
display and distribute the contents of this document in any medium for any purpose without fee or royalty provided
that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license.
To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once
registered you are granted permission to transfer unlimited distribution rights of this document for the purposes
of third-party or other distribution of your product or service that incorporates this document as long as this IPR,
License and Distribution notice remains in place in its entirety.
- If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy,
display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety.
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 IMPLEMENTERS 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.
-->
<!--*************************************************************************-->
<!--** This schema has been modified from the original base schema named - **-->
<!--** imscp_v1p2.xsd **-->
<!--** using the IMS SchemaProf tool. This tool is based on software from **-->
<!--** the TELCERT Project which was funded in part by the European **-->
<!--** Commission under contract IST-507128 **-->
<!--*************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.imsglobal.org/xsd/imscc/imscp_v1p1" targetNamespace="http://www.imsglobal.org/xsd/imscc/imscp_v1p1" version="IMS CP 1.2 localised_Schema_2008_6_30" elementFormDefault="qualified" attributeFormDefault="unqualified" xsi:schemaLocation="http://www.imsglobal.org/xsd/imsccauth_v1p0 domainProfile_0\imsccauth_v1p0_localised.xsd http://ltsc.ieee.org/xsd/imscc/LOM domainProfile_1\lomLoose_localised.xsd http://ltsc.ieee.org/xsd/LOM domainProfile_2\lomLoose_localised.xsd http://www.imsglobal.org/xsd/imscp_extensionv1p2 domainProfile_3\imscp_extensionv1p2_localised.xsd">
<xsd:include xmlns:xsd="http://www.w3.org/2001/XMLSchema" schemaLocation="imscc_c1p2maeV0p15_definition.xsd" />
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd" />
<xs:annotation>
<xs:documentation>
XSD Data File Information
-------------------------
Author: CP1.2 Project Team
Date: 31st October, 2006
Version: 2.0
Status: CM/DN Release
Description: This is a normative representation of the IMS CP 1.2 Information Model for binding
purposes. Read the corresponding IMS CP Information Model for the Platform
Independent Model representation.
History: This is version 1 of the IMS CP v1.2 XSD. It directly supercedes IMS CP v1.1.4 XSD.
Note that the target namespace has NOT been changed.
Apart from the functional additions, the main structural changes are:
(1) All of the elements and attributes are defined as local to their host object;
(2) Comments have been added to the complexType definitions.
Copyright: 2006 (c) IMS Global Learning Consortium Inc. All Rights Reserved.
IMS Global Learning Consortium, Inc. (IMS/GLC) is publishing the information
contained in this binding ("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.
Source XSLT File Information
----------------------------
XSL Generator: UMLtoXSDTransformv0p7.xsl
XSLT Processor: Xalan
Release: 1.0 Beta 1
Date: 30th November, 2005
Auto-generation Tool
--------------------
This WSDL/XSD was auto-generated using the IMS WSDL/XSD auto-generation tool. While every attempt
has been made to ensure that this tool auto-generates the XSDs correctly, users should be aware
that this is an experimental tool. Permission is given to make use of this tool. IMS makes no
claim on the materials created by third party users of this tool. Details on how to use this tool
are contained in the IMS document: "IMS General Web Services: WSDL/XSD Binding Auto-generation"
available at the IMS web-site.
Tool Copyright: 2005 (c) IMS Global Learning Consortium Inc. All Rights Reserved.
</xs:documentation>
</xs:annotation>
<!-- Generate Global Attributes *********************************************************************** -->
<!-- ===================================== -->
<!-- Generate Namespaced extension Group ************************************************************* -->
<xs:group name="grpStrict.any">
<xs:annotation>
<xs:documentation>
Any namespaced element from any namespace may be included within an "any" element.
The namespace for the imported element must be defined in the instance, and the schema must be imported.
The extension has a definition of "strict" i.e. they must have their own namespace.
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="0" />
</xs:sequence>
</xs:group>
<xs:group name="grpStrict.any3535">
<xs:annotation>
<xs:documentation>
Any namespaced element from any namespace may be included within an "any" element.
The namespace for the imported element must be defined in the instance, and the schema must be imported.
The extension has a definition of "strict" i.e. they must have their own namespace.
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any namespace=" http://ltsc.ieee.org/xsd/LOM" processContents="strict" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:group>
<xs:group name="grpStrict.any4935">
<xs:annotation>
<xs:documentation>
Any namespaced element from any namespace may be included within an "any" element.
The namespace for the imported element must be defined in the instance, and the schema must be imported.
The extension has a definition of "strict" i.e. they must have their own namespace.
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any namespace=" http://ltsc.ieee.org/xsd/imscc/LOM" processContents="strict" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:group>
<xs:group name="grpStrict.any2939">
<xs:annotation>
<xs:documentation>
Any namespaced element from any namespace may be included within an "any" element.
The namespace for the imported element must be defined in the instance, and the schema must be imported.
The extension has a definition of "strict" i.e. they must have their own namespace.
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any namespace=" http://www.imsglobal.org/xsd/imsccauth_v1p0" processContents="strict" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:group>
<!-- ===================================== -->
<!-- Generate the enumerated simpleType declarations ************************************************** -->
<!-- ===================================== -->
<!-- Generate the simpleType elements based IMS data-types ******************************************* -->
<!-- ===================================== -->
<!-- Generate the derived data-type elements ********************************************************** -->
<!-- ===================================== -->
<!-- Generate the data-type elements ****************************************************************** -->
<xs:complexType name="Manifest.Type">
<xs:annotation>
<xs:documentation>
A manifest element is a container for data structures whose contents describe a
semantically complete instance of the IMS Content Packaging Information Model.
A manifest element may contain and reference child manifest elements
in the same IMS Manifest document. The root manifest element defines an
entire IMS Package. A child manifest element defines a semantically complete
subset of that Package.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents a binding of the kinds of objects defined as children of ims-cp-imManifest : Manifest.[ ManifestMetadata, Organizations, Resources, Manifest, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="metadata" type="ManifestMetadata.Type" minOccurs="1" maxOccurs="1" />
<xs:element name="organizations" type="Organizations.Type" minOccurs="1" maxOccurs="1" />
<xs:element name="resources" type="Resources.Type" minOccurs="1" maxOccurs="1" />
<xs:element name="manifest" type="Manifest.Type" minOccurs="0" maxOccurs="0" />
<xs:group ref="grpStrict.any2939" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="version" use="optional" type="xs:string" />
<xs:attribute ref="xml:base" use="optional" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Metadata.Type">
<xs:annotation>
<xs:documentation>
An instance of the metadata element contains data structures
that declare descriptive information about a metadata element's
parent only.
One or more different metadata models may be declared as
child extensions of a metadata element.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents a binding of the kinds of child objects defined for ims-cp-imMetadata: Metadata.[ Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="schema" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="schemaversion" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any3535" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Organizations.Type">
<xs:annotation>
<xs:documentation>
The organizations element is a container for all data structures
that describe the way or ways that information encapsulated by
its parent manifest element is structured.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents of binding of the child objects of ims-cp-imOrganizations: Organizations.[ Organization, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="organization" type="Organization.Type" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="default" use="prohibited" type="defaultOrganizationProhibited" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Resources.Type">
<xs:annotation>
<xs:documentation>
The Resources element is a container for data structures containing
references to one or more assets. Asset references may be grouped
within a containing resources element in whatever manner seems best.
The scope of referenced assets is specific to a resources element's parent
manifest element only.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents a binding of the kinds of child objects defined for ims-cp-imResources: Resources.[ Resource, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="resource" type="Resource.Type" minOccurs="0" maxOccurs="unbounded" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute ref="xml:base" use="optional" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Organization.Type">
<xs:annotation>
<xs:documentation>
An organization element is a container for all data structures relating
to a particular way or view that information encapsulated by a
grandparent manifest object is structured.
Multiple organization elements within the same parent organizations
element are equivalent in purpose: Each shows a different way for
structuring the same information declared within a grandparent
manifest object.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents a binding of the kinds of child objects defined for ims-cp-Organization: Organization[ Title, Item, Metadata, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="title" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="item" type="Item.Type4333" minOccurs="1" maxOccurs="1" />
<xs:element name="metadata" type="Metadata.Type" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="structure" use="required" type="rootedHierarchy" fixed="rooted-hierarchy" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<!--**Following element's attribute values altered by AP condition processing**-->
<xs:complexType name="Resource.Type">
<xs:annotation>
<xs:documentation>
A resource element is a container for a particular asset
or collection of assets. A resource may contain references
to assets that are all of the same type or different types (i.e., file formats).
The scope or boundary of an IMS Package is defined by the asset
references collected into all resources containers associated with the
root manifest element, whether as a child, direcdt descendant, or externally
linked descendant.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents a binding of the kinds of child objects defined for ims-cp-imResource: Resource.[ Metadata, File, Dependency, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="metadata" type="Metadata.Type" minOccurs="0" maxOccurs="1" />
<xs:element name="file" type="File.Type" minOccurs="0" maxOccurs="unbounded" />
<!--**Following element's attribute values altered by AP condition processing**-->
<xs:element name="dependency" type="Dependency.Type" minOccurs="0" maxOccurs="unbounded" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="type" use="required" type="predefinedContentTypes" />
<xs:attribute ref="xml:base" use="optional" />
<xs:attribute name="href" use="optional" type="xs:anyURI" />
<xs:anyAttribute namespace="http://www.imsglobal.org/xsd/imsccauth_v1p0 http://www.imsglobal.org/xsd/imscp_extensionv1p2" processContents="strict" />
</xs:complexType>
<!--**Following element's attribute values altered by AP condition processing**-->
<xs:complexType name="Item.Type">
<xs:annotation>
<xs:documentation>
An item element represents a structural node in a particular organization.
An item element may be a parent or sibling of other Item elements,
each one representing a unique structural node.
An organization has no meaning unless it has at least one Item element.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents a binding of the kinds of child objects of ims-cp-imItem: Item.[ Title, Item, Metadata, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="title" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="item" type="Item.Type" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="metadata" type="Metadata.Type" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="identifierref" use="optional" type="xs:string" />
<xs:attribute name="isvisible" use="prohibited" type="NoIsVisible" />
<xs:attribute name="parameters" use="prohibited" type="NoParameters" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Item.Type4333">
<xs:annotation>
<xs:documentation>
An item element represents a structural node in a particular organization.
An item element may be a parent or sibling of other Item elements,
each one representing a unique structural node.
An organization has no meaning unless it has at least one Item element.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents a binding of the kinds of child objects of ims-cp-imItem: Item.[ Title, Item, Metadata, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="title" type="xs:string" minOccurs="0" maxOccurs="0" />
<xs:element name="item" type="Item.Type" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="metadata" type="Metadata.Type" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="identifier" use="required" type="xs:ID" />
<xs:attribute name="identifierref" use="prohibited" type="NoIdentifierRef" />
<xs:attribute name="isvisible" use="prohibited" type="NoIsVisible" />
<xs:attribute name="parameters" use="prohibited" type="NoParameter" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="File.Type">
<xs:annotation>
<xs:documentation>
A file element declares a reference to a single asset. The reference may
be relative to the Package containing the file element or absolute
(external to the Package).
A file element may contain child extensions declaring alternative references
to the same asset as that referenced by the file element's href attribute.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents a binding of the kinds of child objects defined for ims-cp-imFile: File.[ Metadata, Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="metadata" type="Metadata.Type" minOccurs="0" maxOccurs="1" />
<xs:group ref="grpStrict.any" />
</xs:sequence>
<xs:attribute name="href" use="required" type="xs:anyURI" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="Dependency.Type">
<xs:annotation>
<xs:documentation>
A dependency element provides a way to associate another collection of
asset references within the scope of the dependency element's parent
resource element.
This element allows the parsimonious declaration of asset references.
Shared asset references can be declared once and associated many
times through a Dependency element.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents a binding of the kinds of child objects defined for ims-cp-imDependency: Dependency.[ Extension ].</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="grpStrict.any" />
</xs:sequence>
<!--**Following element's attribute values altered by AP condition processing**-->
<xs:attribute name="identifierref" use="required" type="xs:string" />
<xs:anyAttribute namespace="##other" processContents="strict" />
</xs:complexType>
<xs:complexType name="ManifestMetadata.Type">
<xs:annotation>
<xs:documentation>
This metadata element contains data structures that declare
descriptive information about an entire Package.
One or more different metadata models may be declared as
child extensions of a metadata element.
The schema and schemaversion children define the kind or collection
of metadata models being used.
<p xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">Represents a binding of the kinds of child objects defined for ims-cp-imManifestMetadata: ManifestMetadata.[ Schema, SchemaVersion, MetadataModel ]..</p>
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="schema" type="schemaFixed" minOccurs="1" maxOccurs="1" fixed="IMS Common Cartridge" />
<xs:element name="schemaversion" type="schemaversionFixed" minOccurs="1" maxOccurs="1" fixed="1.0.0" />
<xs:group ref="grpStrict.any4935" />
</xs:sequence>
</xs:complexType>
<!-- ===================================== -->
<!-- Declaration of the elements ********************************************************************** -->
<!-- ===================================== -->
<!-- Declaration of the root element(s) *************************************************************** -->
<xs:element name="manifest" type="Manifest.Type" />
<!-- ===================================== -->
</xs:schema>
+286
View File
@@ -0,0 +1,286 @@
<?xml version='1.0'?>
<xs:schema targetNamespace="http://www.w3.org/XML/1998/namespace"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns ="http://www.w3.org/1999/xhtml"
xml:lang="en">
<xs:annotation>
<xs:documentation>
<div>
<h1>About the XML namespace</h1>
<div class="bodytext">
<p>
This schema document describes the XML namespace, in a form
suitable for import by other schema documents.
</p>
<p>
See <a href="http://www.w3.org/XML/1998/namespace.html">
http://www.w3.org/XML/1998/namespace.html</a> and
<a href="http://www.w3.org/TR/REC-xml">
http://www.w3.org/TR/REC-xml</a> for information
about this namespace.
</p>
<p>
Note that local names in this namespace are intended to be
defined only by the World Wide Web Consortium or its subgroups.
The names currently defined in this namespace are listed below.
They should not be used with conflicting semantics by any Working
Group, specification, or document instance.
</p>
<p>
See further below in this document for more information about <a
href="#usage">how to refer to this schema document from your own
XSD schema documents</a> and about <a href="#nsversioning">the
namespace-versioning policy governing this schema document</a>.
</p>
</div>
</div>
</xs:documentation>
</xs:annotation>
<xs:attribute name="lang">
<xs:annotation>
<xs:documentation>
<div>
<h3>lang (as an attribute name)</h3>
<p>
denotes an attribute whose value
is a language code for the natural language of the content of
any element; its value is inherited. This name is reserved
by virtue of its definition in the XML specification.</p>
</div>
<div>
<h4>Notes</h4>
<p>
Attempting to install the relevant ISO 2- and 3-letter
codes as the enumerated possible values is probably never
going to be a realistic possibility.
</p>
<p>
See BCP 47 at <a href="http://www.rfc-editor.org/rfc/bcp/bcp47.txt">
http://www.rfc-editor.org/rfc/bcp/bcp47.txt</a>
and the IANA language subtag registry at
<a href="http://www.iana.org/assignments/language-subtag-registry">
http://www.iana.org/assignments/language-subtag-registry</a>
for further information.
</p>
<p>
The union allows for the 'un-declaration' of xml:lang with
the empty string.
</p>
</div>
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:union memberTypes="xs:token">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value=""/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="space">
<xs:annotation>
<xs:documentation>
<div>
<h3>space (as an attribute name)</h3>
<p>
denotes an attribute whose
value is a keyword indicating what whitespace processing
discipline is intended for the content of the element; its
value is inherited. This name is reserved by virtue of its
definition in the XML specification.</p>
</div>
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="default"/>
<xs:enumeration value="preserve"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="base" type="xs:anyURI"> <xs:annotation>
<xs:documentation>
<div>
<h3>base (as an attribute name)</h3>
<p>
denotes an attribute whose value
provides a URI to be used as the base for interpreting any
relative URIs in the scope of the element on which it
appears; its value is inherited. This name is reserved
by virtue of its definition in the XML Base specification.</p>
<p>
See <a
href="http://www.w3.org/TR/xmlbase/">http://www.w3.org/TR/xmlbase/</a>
for information about this attribute.
</p>
</div>
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="id" type="xs:ID">
<xs:annotation>
<xs:documentation>
<div>
<h3>id (as an attribute name)</h3>
<p>
denotes an attribute whose value
should be interpreted as if declared to be of type ID.
This name is reserved by virtue of its definition in the
xml:id specification.</p>
<p>
See <a
href="http://www.w3.org/TR/xml-id/">http://www.w3.org/TR/xml-id/</a>
for information about this attribute.
</p>
</div>
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attributeGroup name="specialAttrs">
<xs:attribute ref="xml:base"/>
<xs:attribute ref="xml:lang"/>
<xs:attribute ref="xml:space"/>
<xs:attribute ref="xml:id"/>
</xs:attributeGroup>
<xs:annotation>
<xs:documentation>
<div>
<h3>Father (in any context at all)</h3>
<div class="bodytext">
<p>
denotes Jon Bosak, the chair of
the original XML Working Group. This name is reserved by
the following decision of the W3C XML Plenary and
XML Coordination groups:
</p>
<blockquote>
<p>
In appreciation for his vision, leadership and
dedication the W3C XML Plenary on this 10th day of
February, 2000, reserves for Jon Bosak in perpetuity
the XML name "xml:Father".
</p>
</blockquote>
</div>
</div>
</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>
<div xml:id="usage" id="usage">
<h2><a name="usage">About this schema document</a></h2>
<div class="bodytext">
<p>
This schema defines attributes and an attribute group suitable
for use by schemas wishing to allow <code>xml:base</code>,
<code>xml:lang</code>, <code>xml:space</code> or
<code>xml:id</code> attributes on elements they define.
</p>
<p>
To enable this, such a schema must import this schema for
the XML namespace, e.g. as follows:
</p>
<pre>
&lt;schema . . .>
. . .
&lt;import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/>
</pre>
<p>
or
</p>
<pre>
&lt;import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2009/01/xml.xsd"/>
</pre>
<p>
Subsequently, qualified reference to any of the attributes or the
group defined below will have the desired effect, e.g.
</p>
<pre>
&lt;type . . .>
. . .
&lt;attributeGroup ref="xml:specialAttrs"/>
</pre>
<p>
will define a type which will schema-validate an instance element
with any of those attributes.
</p>
</div>
</div>
</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>
<div id="nsversioning" xml:id="nsversioning">
<h2><a name="nsversioning">Versioning policy for this schema document</a></h2>
<div class="bodytext">
<p>
In keeping with the XML Schema WG's standard versioning
policy, this schema document will persist at
<a href="http://www.w3.org/2009/01/xml.xsd">
http://www.w3.org/2009/01/xml.xsd</a>.
</p>
<p>
At the date of issue it can also be found at
<a href="http://www.w3.org/2001/xml.xsd">
http://www.w3.org/2001/xml.xsd</a>.
</p>
<p>
The schema document at that URI may however change in the future,
in order to remain compatible with the latest version of XML
Schema itself, or with the XML namespace itself. In other words,
if the XML Schema or XML namespaces change, the version of this
document at <a href="http://www.w3.org/2001/xml.xsd">
http://www.w3.org/2001/xml.xsd
</a>
will change accordingly; the version at
<a href="http://www.w3.org/2009/01/xml.xsd">
http://www.w3.org/2009/01/xml.xsd
</a>
will not change.
</p>
<p>
Previous dated (and unchanging) versions of this schema
document are at:
</p>
<ul>
<li><a href="http://www.w3.org/2009/01/xml.xsd">
http://www.w3.org/2009/01/xml.xsd</a></li>
<li><a href="http://www.w3.org/2007/08/xml.xsd">
http://www.w3.org/2007/08/xml.xsd</a></li>
<li><a href="http://www.w3.org/2004/10/xml.xsd">
http://www.w3.org/2004/10/xml.xsd</a></li>
<li><a href="http://www.w3.org/2001/03/xml.xsd">
http://www.w3.org/2001/03/xml.xsd</a></li>
</ul>
</div>
</div>
</xs:documentation>
</xs:annotation>
</xs:schema>