Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?xml version = "1.0" encoding = "UTF-8"?>
2
<xs:schema xmlns="http://ltsc.ieee.org/xsd/imsccv1p1/LOM/manifest"
3
    targetNamespace="http://ltsc.ieee.org/xsd/imsccv1p1/LOM/manifest"
4
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
5
    xmlns:sch="http://purl.oclc.org/dsdl/schematron"
6
    version="IMS CC MD 1.3 MAN 1.1"
7
    elementFormDefault="qualified"
8
    attributeFormDefault="unqualified">
9
    <xs:annotation>
10
        <xs:documentation>
11
            XSD Data File Information
12
            -------------------------
13
            Author:         Colin Smythe
14
            Date:           31st  January, 2011
15
            Version:        1.1
16
            Status:         Final
17
            Description:    This is the IMS GLC Meta-data v1.3 binding of the IEEE LOMv1.0 for the
18
                            Common Cartridge v1.1 Manifest Metadata.  This is based on the LOM Strict bindings.
19
                            The core changes are:
20
                            a) MetaMetadata complexType is removed;
21
                            b) Annotation complexType is removed;
22
                            c) In the Technical complexType only the format element is permitted;
23
                            d) In the Educational complexType only the 'learningResourceType' element and
24
                            'intendedEndUserRole' are permitted;
25
                            e) In the General complexType the 'structure' and 'aggregationLevel' elements are prohibited;
26
                            f) Only the 'contribute' element in the 'LifeCycle' complexType are permitted;
27
 
28
            History:        Version 1.1: The first usage of this XSD for the CC Manifest Profile.
29
 
30
            License:        IPR, License and Distribution Notices
31
 
32
                            This machine readable file is derived from IMS Global Learning Consortium (GLC) specification IMS Common Cartridge Version 1.1
33
                            found at http://www.imsglobal.org/cc and the original IMS GLC schema binding or code base
34
                            http://www.imsglobal.org/cc.
35
 
36
                            Recipients of this document are requested to submit, with their comments, notification of any
37
                            relevant patent claims or other intellectual property rights of which they may be aware that might be
38
                            infringed by the schema binding contained in this document.
39
 
40
                            IMS GLC takes no position regarding the validity or scope of any intellectual property or other
41
                            rights that might be claimed to pertain to the implementation or use of the technology described in this
42
                            document or the extent to which any license under such rights might or might not be available; neither
43
                            does it represent that it has made any effort to identify any such rights. Information on IMS GLCs
44
                            procedures with respect to rights in IMS GLC specifications can be found at the IMS GLC Intellectual Property
45
                            Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf.
46
 
47
                            Copyright (c) IMS Global Learning Consortium 1999-2011. All Rights Reserved.
48
 
49
                            License Notice for Users
50
 
51
                            Users of products or services that include this document are hereby granted a worldwide, royalty-free,
52
                            non-exclusive license to use this document.
53
 
54
                            Distribution Notice for Developers
55
 
56
                            Developers of products or services that are not original incorporators of this document and
57
                            have not changed this document, that is, are distributing a software product that incorporates this
58
                            document as is from a third-party source other than IMS, are hereby granted permission to copy,
59
                            display and distribute the contents of this document in any medium for any purpose without fee or
60
                            royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL
61
                            copies, or portions thereof.
62
 
63
                            Developers of products or services that are original incorporators of this document and wish
64
                            to provide distribution of this document as is or with modifications and developers of products and
65
                            services that are not original incorporators of this document and have changed this document, are
66
                            required to register with the IMS GLC community on the IMS GLC website as described in the following two
67
                            paragraphs:-
68
 
69
                            *  If you wish to distribute this document as is, with no modifications, you are hereby granted
70
                               permission to copy, display and distribute the contents of this document in any medium for any
71
                               purpose without fee or royalty provided that you include this IPR, License and Distribution notice in
72
                               its entirety on ALL copies, or portions thereof, that you make and you complete a valid license
73
                               registration with IMS and receive an email from IMS granting the license. To register, follow the
74
                               instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once
75
                               registered you are granted permission to transfer unlimited distribution rights of this document for the
76
                               purposes of third-party or other distribution of your product or service that incorporates this
77
                               document as long as this IPR, License and Distribution notice remains in place in its entirety;
78
 
79
                            *  If you wish to create and distribute a derived work from this document, you are hereby
80
                               granted permission to copy, display and distribute the contents of the derived work in any medium for
81
                               any purpose without fee or royalty provided that you include this IPR, License and Distribution
82
                               notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid
83
                               profile registration with IMS GLC and receive an email from IMS GLC granting the license. To register, follow
84
                               the instructions on the IMS GLC website: http://www.imsglobal.org/profile/. Once registered you are
85
                               granted permission to transfer unlimited distribution rights of the derived work for the purposes of
86
                               third-party or other distribution of your product or service that incorporates the derived work as long
87
                               as this IPR, License and Distribution notice remains in place in its entirety.
88
 
89
                            The limited permissions granted above are perpetual and will not be revoked by IMS GLC or its
90
                            successors or assigns.
91
 
92
                            THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS
93
                            EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTERS OWN RISK, AND NEITHER THE CONSORTIUM
94
                            NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF
95
                            ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.
96
 
97
            Source UML File Information
98
            ---------------------------
99
            The source file information must be supplied as an XMI file (without diagram layout information).
100
            The supported UML authoring tools are:
101
            (a) Poseidon – v6 (and later)
102
 
103
            Source XSLT File Information
104
            ----------------------------
105
            XSL Generator:    UMLtoXSDTransformv0p9.xsl
106
            XSLT Processor:   Xalan
107
            Release:          1.0 Beta 3
108
            Date:             31st May, 2009
109
 
110
            IMS GLC Auto-generation Binding Tool-kit (I-BAT)
111
            ------------------------------------------------
112
            This file was auto-generated using the IMS GLC Binding Auto-generation Tool-kit (I-BAT).  While every
113
            attempt has been made to ensure that this tool auto-generates the files correctly, users should be aware
114
            that this is an experimental tool.  Permission is given to make use of this tool.  IMS GLC makes no
115
            claim on the materials created by third party users of this tool.  Details on how to use this tool
116
            are contained in the IMS GLC "I-BAT" Documentation available at the IMS GLC web-site.
117
 
118
            Tool Copyright:  2005-2011 (c) IMS Global Learning Consortium Inc.  All Rights Reserved.
119
        </xs:documentation>
120
    </xs:annotation>
121
 
122
    <xs:annotation>
123
        <xs:documentation>
124
            Schematron Strict Selection Validation Rules
125
            --------------------------------------------
126
            This is the set of Schematron rules that have been created to enforce the use of the "Unordered" stereotype.
127
            These rules ensure that the number of entries in an unordered complexType of an element obey the multiplicity constraints.
128
            This is required so that any-order/any-multiplicity complexTypes can be constructed and validated.
129
        </xs:documentation>
130
        <xs:appinfo>
131
            <sch:ns uri="http://ltsc.ieee.org/xsd/imsccv1p1/LOM/manifest" prefix="lom"/>
132
            <sch:title>Schematron validation rules for the enforcement of the Unordered stereotype.</sch:title>
133
 
134
            <!-- RULESET ******************************************************************* -->
135
            <sch:pattern abstract="false" id="LOM.Type">
136
                <sch:title>[RULESET] For the LOM.Type complexType.</sch:title>
137
 
138
                <sch:rule abstract="false" context="lom:lom">
139
 
140
                    <sch:assert test="count(lom:general) = 0 or count(lom:general) = 1">
141
                        [RULE for Root Class Attribute 1] Invalid number of "general" elements: <sch:value-of select="count(lom:general)"/>.
142
                    </sch:assert>
143
 
144
                    <sch:assert test="count(lom:lifeCycle) = 0 or count(lom:lifeCycle) = 1">
145
                        [RULE for Root Class Attribute 2] Invalid number of "lifeCycle" elements: <sch:value-of select="count(lom:lifeCycle)"/>.
146
                    </sch:assert>
147
 
148
                    <sch:assert test="count(lom:technical) = 0 or count(lom:technical) = 1">
149
                        [RULE for Root Class Attribute 3] Invalid number of "technical" elements: <sch:value-of select="count(lom:technical)"/>.
150
                    </sch:assert>
151
 
152
                    <sch:assert test="count(lom:rights) = 0 or count(lom:rights) = 1">
153
                        [RULE for Root Class Attribute 5] Invalid number of "rights" elements: <sch:value-of select="count(lom:rights)"/>.
154
                    </sch:assert>
155
 
156
                </sch:rule>
157
 
158
            </sch:pattern>
159
            <!-- *************************************************************************** -->
160
 
161
            <!-- RULESET ******************************************************************* -->
162
            <sch:pattern abstract="false" id="Rights.Type">
163
                <sch:title>[RULESET] For the Rights.Type complexType.</sch:title>
164
 
165
                <sch:rule abstract="false" context="lom:lom/lom:rights">
166
 
167
                    <sch:assert test="count(lom:cost) = 0 or count(lom:cost) = 1">
168
                        [RULE for Local Attribute 1] Invalid number of "cost" elements: <sch:value-of select="count(lom:cost)"/>.
169
                    </sch:assert>
170
 
171
                    <sch:assert test="count(lom:copyrightAndOtherRestrictions) = 0 or count(lom:copyrightAndOtherRestrictions) = 1">
172
                        [RULE for Local Attribute 2] Invalid number of "copyrightAndOtherRestrictions" elements: <sch:value-of select="count(lom:copyrightAndOtherRestrictions)"/>.
173
                    </sch:assert>
174
 
175
                    <sch:assert test="count(lom:description) = 0 or count(lom:description) = 1">
176
                        [RULE for Local Attribute 3] Invalid number of "description" elements: <sch:value-of select="count(lom:description)"/>.
177
                    </sch:assert>
178
 
179
                </sch:rule>
180
 
181
            </sch:pattern>
182
            <!-- *************************************************************************** -->
183
 
184
            <!-- RULESET ******************************************************************* -->
185
            <sch:pattern abstract="false" id="General.Type">
186
                <sch:title>[RULESET] For the General.Type complexType.</sch:title>
187
 
188
                <sch:rule abstract="false" context="lom:lom/lom:general">
189
 
190
                    <sch:assert test="count(lom:title) = 0 or count(lom:title) = 1">
191
                        [RULE for Local Attribute 2] Invalid number of "title" elements: <sch:value-of select="count(lom:title)"/>.
192
                    </sch:assert>
193
 
194
                </sch:rule>
195
 
196
            </sch:pattern>
197
            <!-- *************************************************************************** -->
198
 
199
            <!-- RULESET ******************************************************************* -->
200
            <sch:pattern abstract="false" id="ContributeLifeCycle.Type">
201
                <sch:title>[RULESET] For the ContributeLifeCycle.Type complexType.</sch:title>
202
 
203
                <sch:rule abstract="false" context="lom:lom/lom:lifeCycle/lom:contribute">
204
 
205
                    <sch:assert test="count(lom:role) = 0 or count(lom:role) = 1">
206
                        [RULE for Local Attribute 1] Invalid number of "role" elements: <sch:value-of select="count(lom:role)"/>.
207
                    </sch:assert>
208
 
209
                    <sch:assert test="count(lom:date) = 0 or count(lom:date) = 1">
210
                        [RULE for Local Attribute 3] Invalid number of "date" elements: <sch:value-of select="count(lom:date)"/>.
211
                    </sch:assert>
212
 
213
                </sch:rule>
214
 
215
            </sch:pattern>
216
            <!-- *************************************************************************** -->
217
 
218
            <!-- RULESET ******************************************************************* -->
219
            <sch:pattern abstract="false" id="Relation.Type">
220
                <sch:title>[RULESET] For the Relation.Type complexType.</sch:title>
221
 
222
                <sch:rule abstract="false" context="lom:lom/lom:relation">
223
 
224
                    <sch:assert test="count(lom:kind) = 0 or count(lom:kind) = 1">
225
                        [RULE for Local Attribute 1] Invalid number of "kind" elements: <sch:value-of select="count(lom:kind)"/>.
226
                    </sch:assert>
227
 
228
                    <sch:assert test="count(lom:resource) = 0 or count(lom:resource) = 1">
229
                        [RULE for Local Attribute 2] Invalid number of "resource" elements: <sch:value-of select="count(lom:resource)"/>.
230
                    </sch:assert>
231
 
232
                </sch:rule>
233
 
234
            </sch:pattern>
235
            <!-- *************************************************************************** -->
236
 
237
            <!-- RULESET ******************************************************************* -->
238
            <sch:pattern abstract="false" id="Resource.Type">
239
                <sch:title>[RULESET] For the Resource.Type complexType.</sch:title>
240
 
241
                <sch:rule abstract="false" context="lom:lom/lom:relation/lom:resource">
242
 
243
                </sch:rule>
244
 
245
            </sch:pattern>
246
            <!-- *************************************************************************** -->
247
 
248
            <!-- RULESET ******************************************************************* -->
249
            <sch:pattern abstract="false" id="Classification.Type">
250
                <sch:title>[RULESET] For the Classification.Type complexType.</sch:title>
251
 
252
                <sch:rule abstract="false" context="lom:lom/lom:classification">
253
 
254
                    <sch:assert test="count(lom:purpose) = 0 or count(lom:purpose) = 1">
255
                        [RULE for Local Attribute 1] Invalid number of "purpose" elements: <sch:value-of select="count(lom:purpose)"/>.
256
                    </sch:assert>
257
 
258
                    <sch:assert test="count(lom:description) = 0 or count(lom:description) = 1">
259
                        [RULE for Local Attribute 3] Invalid number of "description" elements: <sch:value-of select="count(lom:description)"/>.
260
                    </sch:assert>
261
 
262
                </sch:rule>
263
 
264
            </sch:pattern>
265
            <!-- *************************************************************************** -->
266
 
267
            <!-- RULESET ******************************************************************* -->
268
            <sch:pattern abstract="false" id="Taxon.Type">
269
                <sch:title>[RULESET] For the Taxon.Type complexType.</sch:title>
270
 
271
                <sch:rule abstract="false" context="lom:lom/lom:classification/lom:taxonPath/lom:taxon">
272
 
273
                    <sch:assert test="count(lom:id) = 0 or count(lom:id) = 1">
274
                        [RULE for Local Attribute 1] Invalid number of "id" elements: <sch:value-of select="count(lom:id)"/>.
275
                    </sch:assert>
276
 
277
                    <sch:assert test="count(lom:entry) = 0 or count(lom:entry) = 1">
278
                        [RULE for Local Attribute 2] Invalid number of "entry" elements: <sch:value-of select="count(lom:entry)"/>.
279
                    </sch:assert>
280
 
281
                </sch:rule>
282
 
283
            </sch:pattern>
284
            <!-- *************************************************************************** -->
285
 
286
            <!-- RULESET ******************************************************************* -->
287
            <sch:pattern abstract="false" id="DateTime.Type">
288
                <sch:title>[RULESET] For the DateTime.Type complexType.</sch:title>
289
 
290
                <sch:rule abstract="false" context="lom:lom/lom:lifeCycle/lom:contribute/lom:date">
291
 
292
                    <sch:assert test="count(lom:dateTime) = 0 or count(lom:dateTime) = 1">
293
                        [RULE for Local Attribute 1] Invalid number of "dateTime" elements: <sch:value-of select="count(lom:dateTime)"/>.
294
                    </sch:assert>
295
 
296
                    <sch:assert test="count(lom:description) = 0 or count(lom:description) = 1">
297
                        [RULE for Local Attribute 2] Invalid number of "description" elements: <sch:value-of select="count(lom:description)"/>.
298
                    </sch:assert>
299
 
300
                </sch:rule>
301
 
302
            </sch:pattern>
303
            <!-- *************************************************************************** -->
304
 
305
            <!-- RULESET ******************************************************************* -->
306
            <sch:pattern abstract="false" id="Identifier.Type">
307
                <sch:title>[RULESET] For the Identifier.Type complexType.</sch:title>
308
 
309
                <sch:rule abstract="false" context="lom:lom/lom:general/lom:identifier">
310
 
311
                    <sch:assert test="count(lom:catalog) = 0 or count(lom:catalog) = 1">
312
                        [RULE for Local Attribute 1] Invalid number of "catalog" elements: <sch:value-of select="count(lom:catalog)"/>.
313
                    </sch:assert>
314
 
315
                    <sch:assert test="count(lom:entry) = 0 or count(lom:entry) = 1">
316
                        [RULE for Local Attribute 2] Invalid number of "entry" elements: <sch:value-of select="count(lom:entry)"/>.
317
                    </sch:assert>
318
 
319
                </sch:rule>
320
 
321
                <sch:rule abstract="false" context="lom:lom/lom:relation/lom:resource/lom:identifier">
322
 
323
                    <sch:assert test="count(lom:catalog) = 0 or count(lom:catalog) = 1">
324
                        [RULE for Local Attribute 1] Invalid number of "catalog" elements: <sch:value-of select="count(lom:catalog)"/>.
325
                    </sch:assert>
326
 
327
                    <sch:assert test="count(lom:entry) = 0 or count(lom:entry) = 1">
328
                        [RULE for Local Attribute 2] Invalid number of "entry" elements: <sch:value-of select="count(lom:entry)"/>.
329
                    </sch:assert>
330
 
331
                </sch:rule>
332
 
333
            </sch:pattern>
334
            <!-- *************************************************************************** -->
335
 
336
        </xs:appinfo>
337
    </xs:annotation>
338
 
339
    <!-- Generate Global Attributes *********************************************************************** -->
340
 
341
    <!-- ================================================================================================== -->
342
 
343
    <!-- Generate Global List Types *********************************************************************** -->
344
 
345
    <!-- ================================================================================================== -->
346
 
347
    <!-- Generate Namespaced extension Group  ************************************************************* -->
348
 
349
    <!-- ================================================================================================== -->
350
 
351
    <!-- Generate Special DataTypes  ********************************************************************** -->
352
 
353
    <!-- ================================================================================================== -->
354
 
355
    <!-- Generate the enumerated simpleType declarations ************************************************** -->
356
 
357
    <!-- ================================================================================================== -->
358
 
359
    <!-- Generate the simpleType elements based IMS data-types  ******************************************* -->
360
 
361
    <!-- ================================================================================================== -->
362
 
363
    <!-- Generate the derived data-type elements based upon simpleType ************************************ -->
364
 
365
    <xs:simpleType name="CharacterString.Type">
366
        <xs:restriction base="xs:string"/>
367
    </xs:simpleType>
368
 
369
    <!-- ================================================================================================== -->
370
 
371
    <!-- Generate the derived data-type elements based upon derived simpleType **************************** -->
372
 
373
    <!-- ================================================================================================== -->
374
 
375
    <!-- Generate the data-type ComplexTypes ************************************************************** -->
376
 
377
    <xs:complexType name="Classification.Type" mixed="false">
378
        <xs:annotation>
379
            <xs:documentation source="umldocumentation">
380
                The Classification complexType is the container for information which describes where this learning
381
object falls within a particular classification system.  To define multiple classifications, there may be
382
multiple instances of this category.
383
            </xs:documentation>
384
        </xs:annotation>
385
        <xs:choice minOccurs = "0" maxOccurs = "unbounded">
386
            <xs:element name="purpose" type="Purpose.Type" minOccurs = "0" maxOccurs = "1"/>
387
            <xs:element name="taxonPath" type="TaxonPath.Type" minOccurs = "0" maxOccurs = "unbounded"/>
388
            <xs:element name="description" type="LangString.Type" minOccurs = "0" maxOccurs = "1"/>
389
            <xs:element name="keyword" type="LangString.Type" minOccurs = "0" maxOccurs = "unbounded"/>
390
        </xs:choice>
391
    </xs:complexType>
392
 
393
    <xs:complexType name="Context.Type" mixed="false">
394
        <xs:annotation>
395
            <xs:documentation source="umldocumentation">
396
                The Context complexType is the container for the information about the principal environment within which the learning and use of this learning object is intended to take place. Suggested good practice is to use one of the values of the value space and to use an additional instance of this data element for further refinement.
397
            </xs:documentation>
398
        </xs:annotation>
399
        <xs:sequence>
400
            <xs:element name="source" minOccurs = "1" maxOccurs = "1">
401
                <xs:simpleType>
402
                    <xs:restriction base="xs:string">
403
                        <xs:enumeration value="LOMv1.0"/>
404
                    </xs:restriction>
405
                </xs:simpleType>
406
            </xs:element>
407
            <xs:element name="value" minOccurs = "1" maxOccurs = "1">
408
                <xs:simpleType>
409
                    <xs:restriction base="xs:string">
410
                        <xs:enumeration value="higher education"/>
411
                        <xs:enumeration value="school"/>
412
                        <xs:enumeration value="training"/>
413
                        <xs:enumeration value="other"/>
414
                    </xs:restriction>
415
                </xs:simpleType>
416
            </xs:element>
417
        </xs:sequence>
418
    </xs:complexType>
419
 
420
    <xs:complexType name="ContributeLifeCycle.Type" mixed="false">
421
        <xs:annotation>
422
            <xs:documentation source="umldocumentation">
423
                The Contribute complexType is the container for the entities (i.e. people, organizations) that have
424
contributed to the state of the learning object.
425
            </xs:documentation>
426
        </xs:annotation>
427
        <xs:choice minOccurs = "0" maxOccurs = "unbounded">
428
            <xs:element name="role" type="RoleLifeCycle.Type" minOccurs = "0" maxOccurs = "1"/>
429
            <xs:element name="entity" type="CharacterString.Type" minOccurs = "0" maxOccurs = "unbounded"/>
430
            <xs:element name="date" type="DateTime.Type" minOccurs = "0" maxOccurs = "1"/>
431
        </xs:choice>
432
    </xs:complexType>
433
 
434
    <xs:complexType name="CopyrightAndOtherRestrictions.Type" mixed="false">
435
        <xs:annotation>
436
            <xs:documentation source="umldocumentation">
437
                The CopyrightAndOtherRestrictions complexType defines whether copyright or other restrictions apply
438
to the use of this learning object.
439
            </xs:documentation>
440
        </xs:annotation>
441
        <xs:sequence>
442
            <xs:element name="value" minOccurs = "1" maxOccurs = "1">
443
                <xs:simpleType>
444
                    <xs:restriction base="xs:string">
445
                        <xs:enumeration value="yes"/>
446
                        <xs:enumeration value="no"/>
447
                    </xs:restriction>
448
                </xs:simpleType>
449
            </xs:element>
450
        </xs:sequence>
451
    </xs:complexType>
452
 
453
    <xs:complexType name="Cost.Type" mixed="false">
454
        <xs:annotation>
455
            <xs:documentation source="umldocumentation">
456
                The Cost complexType is the container for whether use of this learning object requires payment.
457
            </xs:documentation>
458
        </xs:annotation>
459
        <xs:sequence>
460
            <xs:element name="value" minOccurs = "1" maxOccurs = "1">
461
                <xs:simpleType>
462
                    <xs:restriction base="xs:string">
463
                        <xs:enumeration value="yes"/>
464
                        <xs:enumeration value="no"/>
465
                    </xs:restriction>
466
                </xs:simpleType>
467
            </xs:element>
468
        </xs:sequence>
469
    </xs:complexType>
470
 
471
    <xs:complexType name="DateTime.Type" mixed="false">
472
        <xs:annotation>
473
            <xs:documentation source="umldocumentation">
474
                The DateTime abstract complexType is the container for the annotated date/time.  An accuracy
475
of at least one second is supported.  The ISO 8601 format is used.  An associated description is also provided.
476
            </xs:documentation>
477
        </xs:annotation>
478
        <xs:choice minOccurs = "0" maxOccurs = "unbounded">
479
            <xs:element name="dateTime" type="CharacterString.Type" minOccurs = "0" maxOccurs = "1"/>
480
            <xs:element name="description" type="LangString.Type" minOccurs = "0" maxOccurs = "1"/>
481
        </xs:choice>
482
    </xs:complexType>
483
 
484
    <xs:complexType name="Educational.Type" mixed="false">
485
        <xs:annotation>
486
            <xs:documentation source="umldocumentation">
487
                The Educational complexType is the container for the information that describes the key educational or pedagogic characteristics of this learning object. This is pedagogical informtion essential to those involved in achieving a quality learning experience. The audience for this metadata includes teachers, managers, authors and learners. CC MANIFEST PROFILE Only a single instance of the 'learningResourceType' and multple instances of the 'ntendedEnduserRole' are permitted.
488
            </xs:documentation>
489
        </xs:annotation>
490
        <xs:sequence>
491
            <xs:element name="learningResourceType" type="LearningResourceType.Type" minOccurs = "1" maxOccurs = "1"/>
492
            <xs:element name="context" type="Context.Type" minOccurs = "0" maxOccurs = "1"/>
493
            <xs:element name="intendedEndUserRole" type="IntendedEndUserRole.Type" minOccurs = "0" maxOccurs = "unbounded"/>
494
        </xs:sequence>
495
    </xs:complexType>
496
 
497
    <xs:complexType name="General.Type" mixed="false">
498
        <xs:annotation>
499
            <xs:documentation source="umldocumentation">
500
                CC AMANIFEST PROFILE
501
 
502
The 'structure' and aggregationLevel' elements are prohibited.
503
            </xs:documentation>
504
        </xs:annotation>
505
        <xs:choice minOccurs = "0" maxOccurs = "unbounded">
506
            <xs:element name="identifier" type="Identifier.Type" minOccurs = "0" maxOccurs = "unbounded"/>
507
            <xs:element name="title" type="LangString.Type" minOccurs = "0" maxOccurs = "1"/>
508
            <xs:element name="language" type="CharacterString.Type" minOccurs = "0" maxOccurs = "unbounded"/>
509
            <xs:element name="description" type="LangString.Type" minOccurs = "0" maxOccurs = "unbounded"/>
510
            <xs:element name="keyword" type="LangString.Type" minOccurs = "0" maxOccurs = "unbounded"/>
511
            <xs:element name="coverage" type="LangString.Type" minOccurs = "0" maxOccurs = "unbounded"/>
512
        </xs:choice>
513
    </xs:complexType>
514
 
515
    <xs:complexType name="Identifier.Type" mixed="false">
516
        <xs:annotation>
517
            <xs:documentation source="umldocumentation">
518
                The Identifier complexType is the container for the globally unique idenitifer that identifies
519
the associated parent object.
520
            </xs:documentation>
521
        </xs:annotation>
522
        <xs:choice minOccurs = "0" maxOccurs = "unbounded">
523
            <xs:element name="catalog" type="CharacterString.Type" minOccurs = "0" maxOccurs = "1"/>
524
            <xs:element name="entry" type="CharacterString.Type" minOccurs = "0" maxOccurs = "1"/>
525
        </xs:choice>
526
    </xs:complexType>
527
 
528
    <xs:complexType name="IntendedEndUserRole.Type" mixed="false">
529
        <xs:annotation>
530
            <xs:documentation source="umldocumentation">
531
                The IntendedEndUserRole complexType is the container for the information about the principal user(s) for which this learning object was designed, most dominant first. For Strict LOM binding this has an enumerated vocabulary. The Classification element can be used to describe the role through the skills the user is intended to master, or the tasks he or she is intended to be able to accomplish. CC Manifest Profile: Only the Iinstructor' 'Mentor' and 'Teacher' vocab values are permitted.
532
            </xs:documentation>
533
        </xs:annotation>
534
        <xs:sequence>
535
            <xs:element name="source" minOccurs = "1" maxOccurs = "1">
536
                <xs:simpleType>
537
                    <xs:restriction base="xs:string">
538
                        <xs:enumeration value="IMSGLC_CC_Rolesv1p1"/>
539
                    </xs:restriction>
540
                </xs:simpleType>
541
            </xs:element>
542
            <xs:element name="value" minOccurs = "1" maxOccurs = "1">
543
                <xs:simpleType>
544
                    <xs:restriction base="xs:string">
545
                        <xs:enumeration value="Instructor"/>
546
                        <xs:enumeration value="Learner"/>
547
                        <xs:enumeration value="Mentor"/>
548
                    </xs:restriction>
549
                </xs:simpleType>
550
            </xs:element>
551
        </xs:sequence>
552
    </xs:complexType>
553
 
554
    <xs:complexType name="Kind.Type" mixed="false">
555
        <xs:annotation>
556
            <xs:documentation source="umldocumentation">
557
                The Kind complexType is the container for the nature of the relationship between this learning object and the
558
target learning object, identified by information in the associated Resource complexType.  In LOMv1.0 (Strict) this is an
559
enumerated vocabulary.
560
 
561
CC MANIFEST PROFILE
562
 
563
Only the 'value' element is permitted.
564
            </xs:documentation>
565
        </xs:annotation>
566
        <xs:sequence>
567
            <xs:element name="value" minOccurs = "1" maxOccurs = "1">
568
                <xs:simpleType>
569
                    <xs:restriction base="xs:string">
570
                        <xs:enumeration value="ispartof"/>
571
                        <xs:enumeration value="haspart"/>
572
                        <xs:enumeration value="isversionof"/>
573
                        <xs:enumeration value="hasversion"/>
574
                        <xs:enumeration value="isformatof"/>
575
                        <xs:enumeration value="hasformat"/>
576
                        <xs:enumeration value="references"/>
577
                        <xs:enumeration value="isreferencedby"/>
578
                        <xs:enumeration value="isbasedon"/>
579
                        <xs:enumeration value="isbasisfor"/>
580
                        <xs:enumeration value="requires"/>
581
                        <xs:enumeration value="isrequiredby"/>
582
                    </xs:restriction>
583
                </xs:simpleType>
584
            </xs:element>
585
        </xs:sequence>
586
    </xs:complexType>
587
 
588
    <xs:complexType name="LangString.Type" mixed="false">
589
        <xs:annotation>
590
            <xs:documentation source="umldocumentation">
591
                The LangString complexType is the container for a group of language specific characterstrings.
592
            </xs:documentation>
593
        </xs:annotation>
594
        <xs:sequence>
595
            <xs:element name="string" type="LanguageString.Type" minOccurs = "0" maxOccurs = "unbounded"/>
596
        </xs:sequence>
597
    </xs:complexType>
598
 
599
    <xs:complexType name="LearningResourceType.Type" mixed="false">
600
        <xs:annotation>
601
            <xs:documentation source="umldocumentation">
602
                The LearningResourceType complexType is the container for the information about the specific kind of learning object. The most dominant kind shall be first. The vocabulary terms are defined as in OED:1989 and as used by any educational communties of practice. CC MANIFEST PROFILE Only 'value' is permited and this is fixed as 'IMS Common Cartridge'.
603
            </xs:documentation>
604
        </xs:annotation>
605
        <xs:sequence>
606
            <xs:element name="value" minOccurs = "1" maxOccurs = "1">
607
                <xs:simpleType>
608
                    <xs:restriction base="xs:string">
609
                        <xs:enumeration value="IMS Common Cartridge"/>
610
                    </xs:restriction>
611
                </xs:simpleType>
612
            </xs:element>
613
        </xs:sequence>
614
    </xs:complexType>
615
 
616
    <xs:complexType name="LifeCycle.Type" mixed="false">
617
        <xs:annotation>
618
            <xs:documentation source="umldocumentation">
619
                The LifeCycle complexType is the container for the history and current state of this
620
learning object and those entities that have affected this learning object during its evolution.
621
 
622
CC MANIFEST PROFILE
623
 
624
Only the 'contribite' element is permitted.
625
            </xs:documentation>
626
        </xs:annotation>
627
        <xs:sequence>
628
            <xs:element name="contribute" type="ContributeLifeCycle.Type" minOccurs = "1" maxOccurs = "unbounded"/>
629
        </xs:sequence>
630
    </xs:complexType>
631
 
632
    <xs:complexType name="LOM.Type" mixed="false">
633
        <xs:annotation>
634
            <xs:documentation source="umldocumentation">
635
                The LOM complexType is the container for the metadata instance.
636
 
637
CC MANIFEST PROFILE
638
 
639
The MetaMetadata and Annotation complexTypes are prohibited.
640
            </xs:documentation>
641
        </xs:annotation>
642
        <xs:choice minOccurs = "0" maxOccurs = "unbounded">
643
            <xs:element name="general" type="General.Type" minOccurs = "0" maxOccurs = "1"/>
644
            <xs:element name="lifeCycle" type="LifeCycle.Type" minOccurs = "0" maxOccurs = "1"/>
645
            <xs:element name="technical" type="Technical.Type" minOccurs = "0" maxOccurs = "1"/>
646
            <xs:element name="educational" type="Educational.Type" minOccurs = "0" maxOccurs = "unbounded"/>
647
            <xs:element name="rights" type="Rights.Type" minOccurs = "0" maxOccurs = "1"/>
648
            <xs:element name="relation" type="Relation.Type" minOccurs = "0" maxOccurs = "unbounded"/>
649
            <xs:element name="classification" type="Classification.Type" minOccurs = "0" maxOccurs = "unbounded"/>
650
        </xs:choice>
651
    </xs:complexType>
652
 
653
    <xs:complexType name="Purpose.Type" mixed="false">
654
        <xs:annotation>
655
            <xs:documentation source="umldocumentation">
656
                The Purpose complexType is the container for the information on the purpose of
657
classifying this learning obect.  For the Strict LOM binding this is an enumerated vocabulary.
658
            </xs:documentation>
659
        </xs:annotation>
660
        <xs:sequence>
661
            <xs:element name="value" minOccurs = "1" maxOccurs = "1">
662
                <xs:simpleType>
663
                    <xs:restriction base="xs:string">
664
                        <xs:enumeration value="discipline"/>
665
                        <xs:enumeration value="idea"/>
666
                        <xs:enumeration value="prerequisite"/>
667
                        <xs:enumeration value="educational objective"/>
668
                        <xs:enumeration value="accessibility restrictions"/>
669
                        <xs:enumeration value="educational level"/>
670
                        <xs:enumeration value="skill level"/>
671
                        <xs:enumeration value="security level"/>
672
                        <xs:enumeration value="competency"/>
673
                    </xs:restriction>
674
                </xs:simpleType>
675
            </xs:element>
676
        </xs:sequence>
677
    </xs:complexType>
678
 
679
    <xs:complexType name="Relation.Type" mixed="false">
680
        <xs:annotation>
681
            <xs:documentation source="umldocumentation">
682
                The Relation complexType is the container for the information that defines the relationship between this
683
learning object and other learning objects, if any.  To define multiple relationships, there may be multiple
684
instances of this category.  If there is more than one target learning object the each object shall have a new
685
relationship instance.
686
            </xs:documentation>
687
        </xs:annotation>
688
        <xs:choice minOccurs = "0" maxOccurs = "unbounded">
689
            <xs:element name="kind" type="Kind.Type" minOccurs = "0" maxOccurs = "1"/>
690
            <xs:element name="resource" type="Resource.Type" minOccurs = "0" maxOccurs = "1"/>
691
        </xs:choice>
692
    </xs:complexType>
693
 
694
    <xs:complexType name="Resource.Type" mixed="false">
695
        <xs:annotation>
696
            <xs:documentation source="umldocumentation">
697
                The Resource complexType is the container for the information about the target learning object that this relationship references.
698
            </xs:documentation>
699
        </xs:annotation>
700
        <xs:choice minOccurs = "0" maxOccurs = "unbounded">
701
            <xs:element name="identifier" type="Identifier.Type" minOccurs = "0" maxOccurs = "unbounded"/>
702
            <xs:element name="description" type="LangString.Type" minOccurs = "0" maxOccurs = "unbounded"/>
703
        </xs:choice>
704
    </xs:complexType>
705
 
706
    <xs:complexType name="Rights.Type" mixed="false">
707
        <xs:annotation>
708
            <xs:documentation source="umldocumentation">
709
                The Rights complexType describes the intellectual property rights and conditions of use for this learning object.
710
NOTE: The intent is to reuse results of ongoing work in the Intellectual Property Rights and e-commerce
711
communities.  This category currently provides the absolute minimum level of detail only.
712
            </xs:documentation>
713
        </xs:annotation>
714
        <xs:choice minOccurs = "0" maxOccurs = "unbounded">
715
            <xs:element name="cost" type="Cost.Type" minOccurs = "0" maxOccurs = "1"/>
716
            <xs:element name="copyrightAndOtherRestrictions" type="CopyrightAndOtherRestrictions.Type" minOccurs = "0" maxOccurs = "1"/>
717
            <xs:element name="description" type="LangString.Type" minOccurs = "0" maxOccurs = "1"/>
718
        </xs:choice>
719
    </xs:complexType>
720
 
721
    <xs:complexType name="RoleLifeCycle.Type" mixed="false">
722
        <xs:annotation>
723
            <xs:documentation source="umldocumentation">
724
                The Role complexType is the container for the kind of contribution.
725
 
726
CC MANIFEST PROFILE
727
 
728
Only the 'value' elemet is permitted.
729
            </xs:documentation>
730
        </xs:annotation>
731
        <xs:sequence>
732
            <xs:element name="value" minOccurs = "1" maxOccurs = "1">
733
                <xs:simpleType>
734
                    <xs:restriction base="xs:string">
735
                        <xs:enumeration value="author"/>
736
                        <xs:enumeration value="publisher"/>
737
                        <xs:enumeration value="unknown"/>
738
                        <xs:enumeration value="initiator"/>
739
                        <xs:enumeration value="terminator"/>
740
                        <xs:enumeration value="validator"/>
741
                        <xs:enumeration value="editor"/>
742
                        <xs:enumeration value="graphical designer"/>
743
                        <xs:enumeration value="technical implementor"/>
744
                        <xs:enumeration value="content provider"/>
745
                        <xs:enumeration value="technical validator"/>
746
                        <xs:enumeration value="educational validator"/>
747
                        <xs:enumeration value="script writer"/>
748
                        <xs:enumeration value="instructional designer"/>
749
                        <xs:enumeration value="subject matter expert"/>
750
                    </xs:restriction>
751
                </xs:simpleType>
752
            </xs:element>
753
        </xs:sequence>
754
    </xs:complexType>
755
 
756
    <xs:complexType name="Taxon.Type" mixed="false">
757
        <xs:annotation>
758
            <xs:documentation source="umldocumentation">
759
                The Taxon complexType is the container for the information about a particular term within a
760
taxonomy.  A taxon is a node that has a defined label or term.  A taxon may also have an alphanumeric
761
designation or identifier for standardized reference.  Either or both the label and the entry may be used
762
to designate a particular taxon.  An ordered list of taxons creates a taxonomic path i.e. 'taxononomic
763
stairway': this is a path from a more general to more specific entry in a classification.
764
            </xs:documentation>
765
        </xs:annotation>
766
        <xs:choice minOccurs = "0" maxOccurs = "unbounded">
767
            <xs:element name="id" type="CharacterString.Type" minOccurs = "0" maxOccurs = "1"/>
768
            <xs:element name="entry" type="LangString.Type" minOccurs = "0" maxOccurs = "1"/>
769
        </xs:choice>
770
    </xs:complexType>
771
 
772
    <xs:complexType name="TaxonPath.Type" mixed="false">
773
        <xs:annotation>
774
            <xs:documentation source="umldocumentation">
775
                The TaxonPath complexType is the container for the information about the taxonomic path in a
776
specific classification system.  Each succeeding level is a refinement in the definition of the
777
preceding level.  There may be different paths in the same or different classifications, which
778
describe the same characteristic.
779
            </xs:documentation>
780
        </xs:annotation>
781
        <xs:sequence>
782
            <xs:element name="taxon" type="Taxon.Type" minOccurs = "1" maxOccurs = "1"/>
783
        </xs:sequence>
784
    </xs:complexType>
785
 
786
    <xs:complexType name="Technical.Type" mixed="false">
787
        <xs:annotation>
788
            <xs:documentation source="umldocumentation">
789
                The Technical complexType is the container for the information that describes the technical requirements and
790
characteristics of this learning object.
791
 
792
CC MANIFEST PROFILE
793
 
794
Only the 'format' element is permitted.
795
            </xs:documentation>
796
        </xs:annotation>
797
        <xs:sequence>
798
            <xs:element name="format" type="CharacterString.Type" minOccurs = "1" maxOccurs = "unbounded"/>
799
        </xs:sequence>
800
    </xs:complexType>
801
 
802
    <xs:complexType name="LanguageString.Type">
803
        <xs:simpleContent>
804
            <xs:extension base="xs:string">
805
                <xs:attribute name="language" use="optional" type="CharacterString.Type"/>
806
            </xs:extension>
807
        </xs:simpleContent>
808
    </xs:complexType>
809
 
810
    <!-- ================================================================================================== -->
811
 
812
    <!-- Declaration of the elements ********************************************************************** -->
813
 
814
    <!-- ================================================================================================== -->
815
 
816
    <!-- Declaration of the root element(s) *************************************************************** -->
817
 
818
    <xs:element name="lom" type="LOM.Type"/>
819
 
820
    <!-- ================================================================================================== -->
821
 
822
</xs:schema>