-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmets.xsd
1134 lines (1106 loc) · 86.3 KB
/
mets.xsd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns="http://www.loc.gov/METS/v2" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.loc.gov/METS/v2" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xsd:annotation>
<xsd:documentation xml:lang="en">
METS: Metadata Encoding and Transmission Standard, version 2
This document is available under the Creative Commons CC0 1.0 Universal Public Domain Dedication (http://creativecommons.org/publicdomain/zero/1.0/).
The METS Editorial Board, as creator of this document, has waived all rights to it worldwide under copyright law, including
all related and neighboring rights, to the extent allowed by law. For the full text see http://creativecommons.org/publicdomain/zero/1.0/legalcode.
Prepared by the METS Editorial Board
Karin Bredenberg (Sydarkivera, Sweden)
Bertrand Caron (Bibliothèque nationale de France)
Aaron Elkiss (HathiTrust / University of Michigan)
Inge Hofsink (KB National Library of the Netherlands)
Juha Lehtonen (CSC – IT Center for Science, Finland)
Andreas Nef (Docuteam GmbH, Baden, Switzerland)
Tobias Steinke (German National Library)
Robin Wendler (Harvard University)
August, 2023
Version 2.0 beta
For version 1.x credits, change log, and documentation, see https://www.loc.gov/standards/mets/mets.xsd
</xsd:documentation>
<xsd:documentation xml:lang="en">
This schema is a major revision of the METS schema. A white paper describing the new version and the rationale for the differences between the two is available: https://github.com/mets/METS-schema/blob/mets2/METS2.md.
The latest draft of this schema is available at https://github.com/mets/METS-schema/blob/mets2/v2/mets.xsd.
METS 2 will live alongside METS 1; METS 1 will continue to be supported and maintained.
</xsd:documentation>
<xsd:documentation xml:lang="en">
Change Log
2.0 alpha - August 17, 2022
Initial public draft
2.0 beta - Nov 15, 2022
* Add links to recommended schema attributes
* Remove transformfile references to behaviorSec; transformfile@TRANSFORMBEHAVIOR
2.0 final - DATE TBD, 2024
* Edit documentation elements to clarify usage and remove references to the METS 1 Primer
</xsd:documentation>
</xsd:annotation>
<xsd:element name="mets">
<xsd:annotation>
<xsd:documentation xml:lang="en">METS: Metadata Encoding and Transmission Standard.
METS is intended to provide a standardized XML format for transmission of complex digital objects between systems. As such, it can be seen as filling a role similar to that defined for the Submission Information Package (SIP), Archival Information Package (AIP) and Dissemination Information Package (DIP) in the Reference Model for an Open Archival Information System. The root element <mets> establishes the container for the information being stored and/or transmitted by the standard.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="metsType"/>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="metsType">
<xsd:annotation>
<xsd:documentation xml:lang="en">metsType: Complex Type for METS Sections
A METS document consists of four possible subsidiary sections: metsHdr (METS document header), mdSec (metadata section), fileSec (file section) and structMap (structural map)
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="metsHdr" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The mets header element <metsHdr> captures metadata about the METS document itself, not the digital object the METS document encodes.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="agent" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">agent:
The agent element <agent> provides for various parties and their roles with respect to the METS document to be documented.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="name" type="xsd:string">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The element <name> can be used to record the full name of the METS document agent.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="note" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The <note> element can be used to record any additional information regarding the agent's activities with respect to the METS document.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="ROLE" use="required" type="xsd:string">
<xsd:annotation>
<xsd:documentation xml:lang="en">ROLE (string/R): Specifies the function of the agent with respect to the METS document.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#agentrole
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="TYPE" use="optional" type="xsd:string">
<xsd:annotation>
<xsd:documentation xml:lang="en">TYPE (string/O): is used to specify the type of AGENT.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#agenttype
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="altRecordID" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The alternative record identifier element <altRecordID> allows one to use alternative record identifier values for the digital object represented by the METS document; the primary record identifier is stored in the OBJID attribute in the root <mets> element.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="TYPE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">TYPE (string/O): A description of the identifier type.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#altrecordidtype
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="metsDocumentID" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The metsDocument identifier element <metsDocumentID> allows a unique identifier to be assigned to the METS document itself. This may be different from the OBJID attribute value in the root <mets> element, which uniquely identifies the entire digital object represented by the METS document.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="TYPE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">TYPE (string/O): A description of the identifier type.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#metsdocumentidtype
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="MDID" type="xsd:IDREFS" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">MDID (IDREFS/O): Contains the ID attribute values of the <md> elements within the <mdSec> of the METS document that contain metadata pertaining to the METS document itself.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="CREATEDATE" type="xsd:dateTime" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">CREATEDATE (dateTime/O): Records the date/time the METS document was created.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="LASTMODDATE" type="xsd:dateTime" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">LASTMODDATE (dateTime/O): Is used to indicate the date/time the METS document was last modified.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="RECORDSTATUS" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">RECORDSTATUS (string/O): Specifies the status of the METS document. It is used for internal processing purposes.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="mdSec" type="mdSecType" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The metadata section <mdSec> contains the metadata pertaining to the digital object, its components and any original source material from which the digital object is derived. The <mdSec> is separated into sub-sections that accommodate any kind of metadata such as descriptive, technical, intellectual property rights, analog/digital source metadata, and digital provenance metadata. Each of these subsections can either wrap the metadata (mdWrap) or reference it in an external location (mdRef) or both. Multiple instances of the <mdSec> element can occur within a METS document and multiple instances of its subsections can occur in one <mdSec> element. This allows considerable flexibility in the structuring of the metadata. METS does not define a vocabulary or syntax for encoding metadata. Metadata can be expressed within the mdSec sub-elements according to many current community defined standards or locally produced XML schemas. </xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="fileSec" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The overall purpose of the content file section element <fileSec> is to provide an inventory of and the location for the content files that comprise the digital object being described in the METS document.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:choice>
<xsd:element name="fileGrp" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A sequence of file group elements <fileGrp> can be used to group the digital files comprising the content of a METS object. In the case where the content files are images of different formats and resolutions, for example, one could group the image content files by format and create a separate <fileGrp> for each image format/resolution such as:
-- one <fileGrp> for the thumbnails of the images
-- one <fileGrp> for the higher resolution JPEGs of the image
-- one <fileGrp> for the master archival TIFFs of the images
A <fileGrp> may contain zero or more <file> elements.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="fileGrpType"/>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="file" maxOccurs="unbounded" type="fileType">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The file element <file> provides access to the content files for the digital object being described by the METS document. A <file> element may contain one or more <FLocat> elements which provide pointers to a content file and/or a <FContent> element which wraps an encoded version of the file. Embedding files using <FContent> can be a valuable feature for exchanging digital objects between repositories or for archiving versions of digital objects for off-site storage. All <FLocat> and <FContent> elements should identify and/or contain identical copies of a single file. The <file> element is recursive, thus allowing sub-files or component files of a larger file to be listed in the inventory. Alternatively, by using the <stream> element, a smaller component of a file or of a related file can be placed within a <file> element. Finally, by using the <transformFile> element, it is possible to include within a <file> element a different version of a file that has undergone a transformation for some reason, such as format migration.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="structSec" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">The <structSec> section contains the <structMap> elements that provide hierarchical organizations of the components of the digital object described by the METS document.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="structMap" type="structMapType" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The structural map section <structMap> provides a means for organizing the digital content represented by the <file> elements in the <fileSec> of the METS document into a coherent hierarchical structure. Such a hierarchical structure can be presented to users to facilitate their comprehension and navigation of the digital content. It can further be applied to any purpose requiring an understanding of the structural relationship of the content files or parts of the content files. The organization may be specified to any level of granularity (intellectual and or physical) that is desired. Since the <structMap> element is repeatable, more than one organization can be applied to the digital content represented by the METS document. The hierarchical structure specified by a <structMap> is encoded as a tree of nested <div> elements. A <div> element may directly point to content via child file pointer <fptr> elements (if the content is represented in the <fileSec<) or child METS pointer <mptr> elements (if the content is represented by an external METS document). The <fptr> element may point to a single whole <file> element that manifests its parent <div<, or to part of a <file> that manifests its <div<. It can also point to multiple files or parts of files that must be played/displayed either in sequence or in parallel to reveal its structural division. In addition to providing a means for organizing content, the <structMap> provides a mechanism for linking content at any hierarchical level with relevant metadata.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="OBJID" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">OBJID (string/O): Is the primary identifier assigned to the METS object as a whole. Although this attribute is not required, it is strongly recommended. This identifier is used to tag the entire METS object to external systems, in contrast with the ID identifier.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="LABEL" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">LABEL (string/O): Is a simple title string used to identify the object/entity being described in the METS document for the user.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="TYPE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">TYPE (string/O): Specifies the class or type of the object.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#metstype
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="PROFILE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">PROFILE (string/O): Indicates the URI of the METS Profile this METS document conforms to.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
<xsd:complexType name="mdSecType">
<xsd:annotation>
<xsd:documentation xml:lang="en">mdSecType: Complex Type for Metadata Sections
The metadata section consists of elements that can contain any kind of metdata, included but not limited to technical metadata technical metadata for text/image/audio/video files, intellectual property rights metadata, analog/digital source metadata, and digital provenance metadata, that is, the history of migrations/translations performed on a digital library object from it's original digital capture/encoding.
</xsd:documentation>
</xsd:annotation>
<xsd:choice>
<xsd:element name="mdGrp" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>The <mdGrp> element allows grouping related kinds of metadata. This could be all metadata of a particular type, all metadata coming from a particular source, all metadata pertaining to a certain file or set of files, or any other relevant grouping.</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="md" type="mdType" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A <md> element records any kind of metadata about the METS object or a component thereof. The <md> element can either wrap the metadata (mdWrap), reference it in an external location (<mdRef>), or both. METS allows multiple <md> elements; and metadata can be associated with any METS element that supports an MDID attribute. Metadata can be expressed according to many current technical description standards or a locally produced XML schema.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation>ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="USE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">USE (string/O): Specifies the purpose of the metadata contained in this group.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#mduse-mdgrpuse
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="STATUS" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">STATUS (string/O): Indicates the status of this metadata
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#status-md-mdgrp
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="md" type="mdType" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A <md> element records any kind of metadata about the METS object or a component thereof. The <md> element can either wrap the metadata (mdWrap), reference it in an external location (<mdRef>), or both. METS allows multiple <md> elements; and metadata can be associated with any METS element that supports an MDID attribute. Metadata can be expressed according to many current technical description standards or a locally produced XML schema.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
<xsd:complexType name="fileGrpType">
<xsd:annotation>
<xsd:documentation xml:lang="en">fileGrpType: Complex Type for File Groups
The file group is used to cluster all of the digital files composing a digital library object. Any file group may contain zero or more file elements. File elements in turn can contain one or more FLocat elements (a pointer to a file containing content for this object) and/or a FContent element (the contents of the file, in either XML or Base64 encoding).
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="file" maxOccurs="unbounded" type="fileType">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The file element <file> provides access to the content files for the digital object being described by the METS document. A <file> element may contain one or more <FLocat> elements which provide pointers to a content file and/or a <FContent> element which wraps an encoded version of the file. Embedding files using <FContent> can be a valuable feature for exchanging digital objects between repositories or for archiving versions of digital objects for off-site storage. All <FLocat> and <FContent> elements should identify and/or contain identical copies of a single file. The <file> element is recursive, thus allowing sub-files or component files of a larger file to be listed in the inventory. Alternatively, by using the <stream> element, a smaller component of a file or of a related file can be placed within a <file> element. Finally, by using the <transformFile> element, it is possible to include within a <file> element a different version of a file that has undergone a transformation for some reason, such as format migration.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="VERSDATE" type="xsd:dateTime" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">VERSDATE (dateTime/O): An optional dateTime attribute specifying the date this version/fileGrp of the digital object was created.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="MDID" type="xsd:IDREFS" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">MDID (IDREF/O): Contains the ID attribute values of the <md> elements within the <mdSec> of the METS document applicable to all of the files in a particular file group.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="USE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">USE (string/O): A tagging attribute to indicate the intended use of files within this file group. A USE attribute can be expressed at the<fileGrp> level, the <file> level, the <FLocat> level and/or the <FContent> level. A USE attribute value at the <fileGrp> level should pertain to all of the files in the <fileGrp>. A USE attribute at the <file> level should pertain to all copies of the file as represented by subsidiary <FLocat> and/or <FContent> elements. A USE attribute at the <FLocat> or <FContent> level pertains to the particular copy of the file that is either referenced (<FLocat>) or wrapped (<FContent>).
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#filegrpuse-fileuse
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
<xsd:complexType name="structMapType">
<xsd:annotation>
<xsd:documentation xml:lang="en">structMapType: Complex Type for Structural Maps
The structural map (structMap) outlines a hierarchical structure for the original object being encoded, using a series of nested div elements.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="div" type="divType">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The structural divisions of the hierarchical organization provided by a <structMap> are represented by division <div> elements, which can be nested to any depth. Each <div> element can represent either an intellectual (logical) division or a physical division. Every <div> node in the structural map hierarchy may be connected (via subsidiary <mptr> or <fptr> elements) to content files which represent that div's portion of the whole document.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="TYPE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">TYPE (string/O): Identifies the type of structure represented by the <structMap>. For example, a <structMap> that represented a purely logical or intellectual structure could be assigned a TYPE value of “logical” whereas a <structMap> that represented a purely physical structure could be assigned a TYPE value of “physical”. However, the METS schema neither defines nor requires a common vocabulary for this attribute. A METS profile, however, may well constrain the values for the <structMap> TYPE.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#structmaptype
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="LABEL" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">LABEL (string/O): Describes the <structMap> to viewers of the METS document. This would be useful primarily where more than one <structMap> is provided for a single object. A descriptive LABEL value, in that case, could clarify to users the purpose of each of the available structMaps.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
<xsd:complexType name="divType">
<xsd:annotation>
<xsd:documentation xml:lang="en">divType: Complex Type for Divisions
The METS standard represents a document structurally as a series of nested div elements, that is, as a hierarchy (e.g., a book, which is composed of chapters, which are composed of subchapters, which are composed of text). Every div node in the structural map hierarchy may be connected (via subsidiary mptr or fptr elements) to content files which represent that div's portion of the whole document.
SPECIAL NOTE REGARDING DIV ATTRIBUTE VALUES:
to clarify the differences between the ORDER, ORDERLABEL, and LABEL attributes for the <div> element, imagine a text with 10 roman numbered pages followed by 10 arabic numbered pages. Page iii would have an ORDER of "3", an ORDERLABEL of "iii" and a LABEL of "Page iii", while page 3 would have an ORDER of "13", an ORDERLABEL of "3" and a LABEL of "Page 3".
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="mptr" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
Like the <fptr> element, the METS pointer element <mptr> represents digital content that manifests its parent <div> element. Unlike the <fptr>, which either directly or indirectly points to content represented in the <fileSec> of the parent METS document, the <mptr> element points to content represented by an external METS document. Thus, this element allows multiple discrete and separate METS documents to be organized at a higher level by a separate METS document. For example, METS documents representing the individual issues in the series of a journal could be grouped together and organized by a higher level METS document that represents the entire journal series. Each of the <div> elements in the <structMap> of the METS document representing the journal series would point to a METS document representing an issue. It would do so via a child <mptr> element. Thus the <mptr> element gives METS users considerable flexibility in managing the depth of the <structMap> hierarchy of individual METS documents. The <mptr> element points to an external METS document.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attributeGroup ref="LOCATION"/>
<xsd:attribute name="CONTENTIDS" type="URIs" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">CONTENTIDS (URI/O): Content IDs for the content represented by the <mptr> (equivalent to DIDL DII or Digital Item Identifier, a unique external ID).
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="fptr" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The <fptr> or file pointer element represents digital content that manifests its parent <div> element. The content represented by an <fptr> element must consist of integral files or parts of files that are represented by <file> elements in the <fileSec>. Via its FILEID attribute, an <fptr> may point directly to a single integral <file> element that manifests a structural division. However, an <fptr> element may also govern an <area> element, a <par>, or a <seq> which in turn would point to the relevant file or files. A child <area> element can point to part of a <file> that manifests a division, while the <par> and <seq> elements can point to multiple files or parts of files that together manifest a division. More than one <fptr> element can be associated with a <div> element. Typically sibling <fptr> elements represent alternative versions, or manifestations, of the same content
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:choice>
<xsd:element name="par" type="parType" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The <par> or parallel files element aggregates pointers to files, parts of files, and/or sequences of files or parts of files that must be played or displayed simultaneously to manifest a block of digital content represented by an <fptr> element. This might be the case, for example, with multi-media content, where a still image might have an accompanying audio track that comments on the still image. In this case, a <par> element would aggregate two <area> elements, one of which pointed to the image file and one of which pointed to the audio file that must be played in conjunction with the image. The <area> element associated with the image could be further qualified with SHAPE and COORDS attributes if only a portion of the image file was pertinent and the <area> element associated with the audio file could be further qualified with BETYPE, BEGIN, EXTTYPE, and EXTENT attributes if only a portion of the associated audio file should be played in conjunction with the image.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="seq" type="seqType" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The sequence of files element <seq> aggregates pointers to files, parts of files and/or parallel sets of files or parts of files that must be played or displayed sequentially to manifest a block of digital content. This might be the case, for example, if the parent <div> element represented a logical division, such as a diary entry, that spanned multiple pages of a diary and, hence, multiple page image files. In this case, a <seq> element would aggregate multiple, sequentially arranged <area> elements, each of which pointed to one of the image files that must be presented sequentially to manifest the entire diary entry. If the diary entry started in the middle of a page, then the first <area> element (representing the page on which the diary entry starts) might be further qualified, via its SHAPE and COORDS attributes, to specify the specific, pertinent area of the associated image file.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="area" type="areaType" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The area element <area> typically points to content consisting of just a portion or area of a file represented by a <file> element in the <fileSec>. In some contexts, however, the <area> element can also point to content represented by an integral file. A single <area> element would appear as the direct child of a <fptr> element when only a portion of a <file>, rather than an integral <file>, manifested the digital content represented by the <fptr>. Multiple <area> elements would appear as the direct children of a <par> element or a <seq> element when multiple files or parts of files manifested the digital content represented by an <fptr> element. When used in the context of a <par> or <seq> element an <area> element can point either to an integral file or to a segment of a file as necessary.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="FILEID" type="xsd:IDREF" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">FILEID (IDREF/O): An optional attribute that provides the XML ID identifying the <file> element that links to and/or contains the digital content represented by the <fptr>. A <fptr> element should only have a FILEID attribute value if it does not have a child <area>, <par> or <seq> element. If it has a child element, then the responsibility for pointing to the relevant content falls to this child element or its descendants.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="CONTENTIDS" type="URIs" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">CONTENTIDS (URI/O): Content IDs for the content represented by the <fptr> (equivalent to DIDL DII or Digital Item Identifier, a unique external ID).
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="div" type="divType" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attributeGroup ref="ORDERLABELS"/>
<xsd:attribute name="MDID" type="xsd:IDREFS" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">MDID (IDREFS/O): Contains the ID attribute values identifying the <md> elements within the <mdSec> of the METS document that contain or link to metadata pertaining to the structural division represented by the <div> element.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="TYPE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">TYPE (string/O): An attribute that specifies the type of structural division that the <div> element represents.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#divtype
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="CONTENTIDS" type="URIs" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">CONTENTIDS (URI/O): Content IDs for the content represented by the <div> (equivalent to DIDL DII or Digital Item Identifier, a unique external ID).
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
<xsd:complexType name="parType">
<xsd:annotation>
<xsd:documentation xml:lang="en">parType: Complex Type for Parallel Files
The <par> or parallel files element aggregates pointers to files, parts of files, and/or sequences of files or parts of files that must be played or displayed simultaneously to manifest a block of digital content represented by an <fptr> element.
</xsd:documentation>
</xsd:annotation>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="area" type="areaType" minOccurs="0"/>
<xsd:element name="seq" type="seqType" minOccurs="0"/>
</xsd:choice>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attributeGroup ref="ORDERLABELS"/>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
<xsd:complexType name="seqType">
<xsd:annotation>
<xsd:documentation xml:lang="en">seqType: Complex Type for Sequences of Files
The seq element should be used to link a div to a set of content files when those files should be played/displayed sequentially to deliver content to a user. Individual <area> subelements within the seq element provide the links to the files or portions thereof.
</xsd:documentation>
</xsd:annotation>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="area" type="areaType" minOccurs="0"/>
<xsd:element name="par" type="parType" minOccurs="0"/>
</xsd:choice>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attributeGroup ref="ORDERLABELS"/>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
<xsd:complexType name="areaType">
<xsd:annotation>
<xsd:documentation xml:lang="en">areaType: Complex Type for Area Linking
The area element provides for more sophisticated linking between a div element and content files representing that div, be they text, image, audio, or video files. An area element can link a div to a point within a file, to a one-dimension segment of a file (e.g., text segment, image line, audio/video clip), or a two-dimensional section of a file (e.g, subsection of an image, or a subsection of the video display of a video file. The area element has no content; all information is recorded within its various attributes.
</xsd:documentation>
</xsd:annotation>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="FILEID" type="xsd:IDREF" use="required">
<xsd:annotation>
<xsd:documentation xml:lang="en">FILEID (IDREF/R): An attribute which provides the XML ID value that identifies the <file> element in the <fileSec> that then points to and/or contains the digital content represented by the <area> element. It must contain an ID value represented in an ID attribute associated with a <file> element in the <fileSec> element in the same METS document.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="SHAPE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">SHAPE (string/O): An attribute that can be used as in HTML to define the shape of the relevant area within the content file pointed to by the <area> element. Typically this would be used with image content (still image or video frame) when only a portion of an image pertains. If SHAPE is specified then COORDS must also be present. SHAPE should be used in conjunction with COORDS in the manner defined for the shape and coords attributes on an HTML5 <area> element. Recommended attribute values are those allowed by HTML5; see also https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#areashape
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="COORDS" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">COORDS (string/O): Specifies the coordinates in an image map for the shape of the pertinent area as specified in the SHAPE attribute. While technically optional, SHAPE and COORDS must both appear together to define the relevant area of image content. COORDS should be used in conjunction with SHAPE in the manner defined for the COORDs and SHAPE attributes on an HTML5 <area> element. COORDS must be a comma delimited string of integer value pairs representing coordinates (plus radius in the case of CIRCLE) within an image. Number of coordinates pairs depends on shape: RECT: x1, y1, x2, y2; CIRC: x1, y1; POLY: x1, y1, x2, y2, x3, y3 . . .
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="BEGIN" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">BEGIN (string/O): An attribute that specifies the point in the content file where the relevant section of content begins. It can be used in conjunction with either the END attribute or the EXTENT attribute as a means of defining the relevant portion of the referenced file precisely. It can only be interpreted meaningfully in conjunction with the BETYPE or EXTTYPE, which specify the kind of beginning/ending point values or beginning/extent values that are being used. The BEGIN attribute can be used with or without a companion END or EXTENT element. In this case, the end of the content file is assumed to be the end point.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="END" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">END (string/O): An attribute that specifies the point in the content file where the relevant section of content ends. It can only be interpreted meaningfully in conjunction with the BETYPE, which specifies the kind of ending point values being used. Typically the END attribute would only appear in conjunction with a BEGIN element.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="BETYPE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">BETYPE: Begin/End Type.
BETYPE (string/O): An attribute that specifies the kind of BEGIN and/or END values that are being used. For example, if BYTE is specified, then the BEGIN and END point values represent the byte offsets into a file. If IDREF is specified, then the BEGIN element specifies the ID value that identifies the element in a structured text file where the relevant section of the file begins; and the END value (if present) would specify the ID value that identifies the element with which the relevant section of the file ends.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#areabetype
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="EXTENT" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">EXTENT (string/O): An attribute that specifies the extent of the relevant section of the content file. Can only be interpreted meaningfully in conjunction with the EXTTYPE which specifies the kind of value that is being used. Typically the EXTENT attribute would only appear in conjunction with a BEGIN element and would not be used if the BEGIN point represents an IDREF.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="EXTTYPE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">EXTTYPE (string/O): An attribute that specifies the kind of EXTENT values that are being used. For example if BYTE is specified then EXTENT would represent a byte count. If TIME is specified the EXTENT would represent a duration of time.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#areaexttype.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="MDID" type="xsd:IDREFS" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">MDID (IDREFS/O): Contains the ID attribute values identifying the <md> elements within the <mdSec> of the METS document that contain or link to metadata pertaining to the content represented by the <area> element.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="CONTENTIDS" type="URIs" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">CONTENTIDS (URI/O): Content IDs for the content represented by the <area> (equivalent to DIDL DII or Digital Item Identifier, a unique external ID).
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attributeGroup ref="ORDERLABELS"/>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
<xsd:complexType name="mdType">
<xsd:annotation>
<xsd:documentation xml:lang="en">mdType: Complex Type for Metadata Sections
A generic framework for pointing to/including metadata within a METS document.
</xsd:documentation>
</xsd:annotation>
<xsd:all>
<xsd:element name="mdRef" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The metadata reference element <mdRef> element is a generic element used throughout the METS schema to provide a pointer to metadata which resides outside the METS document. NB: <mdRef> is an empty element.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attributeGroup ref="LOCATION"/>
<xsd:attributeGroup ref="METADATA"/>
<xsd:attributeGroup ref="FILECORE"/>
<xsd:attribute name="LABEL" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">LABEL (string/O): Provides a label to display to the viewer of the METS document that identifies the associated metadata.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="mdWrap" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A metadata wrapper element <mdWrap> provides a wrapper around metadata embedded within a METS document. The element is repeatable. Such metadata can be in one of two forms: 1) XML-encoded metadata, with the XML-encoding identifying itself as belonging to a namespace other than the METS document namespace. 2) Any arbitrary binary or textual form, PROVIDED that the metadata is Base64 encoded and wrapped in a <binData> element within the internal metadata element.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:choice>
<xsd:element name="binData" type="xsd:base64Binary" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The binary data wrapper element <binData> is used to contain Base64 encoded metadata. </xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="xmlData" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The xml data wrapper element <xmlData> is used to contain XML encoded metadata. The content of an <xmlData> element can be in any namespace or in no namespace. As permitted by the XML Schema Standard, the processContents attribute value for the metadata in an <xmlData> is set to “lax”. Therefore, if the source schema and its location are identified by means of an XML schemaLocation attribute, then an XML processor will validate the elements for which it can find declarations. If a source schema is not identified, or cannot be found at the specified schemaLocation, then an XML validator will check for well-formedness, but otherwise skip over the elements appearing in the <xmlData> element.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##any" maxOccurs="unbounded" processContents="lax"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:choice>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attributeGroup ref="METADATA"/>
<xsd:attributeGroup ref="FILECORE"/>
<xsd:attribute name="LABEL" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">LABEL: an optional string attribute providing a label to display to the viewer of the METS document identifying the metadata.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
</xsd:all>
<xsd:attribute name="ID" type="xsd:ID" use="required">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/R): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR. The ID attribute on the <md> element is required, and its value should be referenced from one or more MDID attributes that are associated with other elements in the METS document. The following elements support references to a <md> element via a MDID attribute: <file>, <fileGrp> <stream>, <div>, <metsHdr>, <md>.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="USE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">USE: Specifies the purpose of metadata in this section.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#mduse-mdgrpuse
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="GROUPID" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">GROUPID (string/O): This identifier is used to indicate that different metadata sections may be considered as part of a group. Two metadata sections with the same GROUPID value are to be considered part of the same group. For example this facility might be used to group changed versions of the same metadata if previous versions are maintained in a file for tracking purposes.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="MDID" type="xsd:IDREFS" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">MDID (IDREFS/O): Contains the ID attribute values of the <md> elements within the <mdSec> of the METS document that contain metadata pertaining to the current <md> element. Typically used in this context to reference preservation metadata (use="DIGIPROV") which applies to the current metadata.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="CREATED" type="xsd:dateTime" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">CREATED (dateTime/O): Specifies the date and time of creation for the metadata.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="STATUS" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">STATUS (string/O): Indicates the status of this metadata
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#status-md-mdgrp
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
<xsd:complexType name="fileType">
<xsd:annotation>
<xsd:documentation xml:lang="en">fileType: Complex Type for Files
The file element provides access to content files for a METS object. A file element may contain one or more FLocat elements, which provide pointers to a content file, and/or an FContent element, which wraps an encoded version of the file. Note that ALL FLocat and FContent elements underneath a single file element should identify/contain identical copies of a single file.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="FLocat" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The file location element <FLocat> provides a pointer to the location of a content file. NOTE: <FLocat> is an empty element.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="USE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">USE (string/O): A tagging attribute to indicate the intended use of the specific copy of the file represented by the <FLocat> element. A USE attribute can be expressed at the<fileGrp> level, the <file> level, the <FLocat> level and/or the <FContent> level. A USE attribute value at the <fileGrp> level should pertain to all of the files in the <fileGrp>. A USE attribute at the <file> level should pertain to all copies of the file as represented by subsidiary <FLocat> and/or <FContent> elements. A USE attribute at the <FLocat> or <FContent> level pertains to the particular copy of the file that is either referenced (<FLocat>) or wrapped (<FContent>).
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#flocatuse-fcontentuse
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attributeGroup ref="LOCATION"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="FContent" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The file content element <FContent> is used to identify a content file contained internally within a METS document. The content file must be either Base64 encoded and contained within the subsidiary <binData> wrapper element, or consist of XML information and be contained within the subsidiary <xmlData> wrapper element.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:choice>
<xsd:element name="binData" type="xsd:base64Binary" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A binary data wrapper element <binData> is used to contain a Base64 encoded file.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="xmlData" minOccurs="0">
<xsd:annotation>
<xsd:documentation xml:lang="en">
An xml data wrapper element <xmlData> is used to contain an XML encoded file. The content of an <xmlData> element can be in any namespace or in no namespace. As permitted by the XML Schema Standard, the processContents attribute value for the metadata in an <xmlData> element is set to “lax”. Therefore, if the source schema and its location are identified by means of an xsi:schemaLocation attribute, then an XML processor will validate the elements for which it can find declarations. If a source schema is not identified, or cannot be found at the specified schemaLocation, then an XML validator will check for well-formedness, but otherwise skip over the elements appearing in the <xmlData> element.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##any" maxOccurs="unbounded" processContents="lax"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:choice>
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="USE" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">USE (string/O): A tagging attribute to indicate the intended use of the specific copy of the file represented by the <FContent> element. A USE attribute can be expressed at the<fileGrp> level, the <file> level, the <FLocat> level and/or the <FContent> level. A USE attribute value at the <fileGrp> level should pertain to all of the files in the <fileGrp>. A USE attribute at the <file> level should pertain to all copies of the file as represented by subsidiary <FLocat> and/or <FContent> elements. A USE attribute at the <FLocat> or <FContent> level pertains to the particular copy of the file that is either referenced (<FLocat>) or wrapped (<FContent>).
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#flocatuse-fcontentuse
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="stream" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
A component byte stream element <stream> may be composed of one or more subsidiary streams. An MPEG4 file, for example, might contain separate audio and video streams, each of which is associated with technical metadata. The repeatable <stream> element provides a mechanism to record the existence of separate data streams within a particular file, and the opportunity to <mdSec> elements with those subsidiary data streams if desired. </xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:restriction base="xsd:anyType">
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="streamType" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">streamType (string/O): The IANA MIME media type for the bytestream.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="OWNERID" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">OWNERID (string/O): Used to provide a unique identifier (which could include a URI) assigned to the file. This identifier may differ from the URI used to retrieve the file.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="MDID" type="xsd:IDREFS" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">MDID (IDREFS/O): Contains the ID attribute values of the <md> elements within the <mdSec> of the METS document that contain metadata pertaining to the bytestream.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="BEGIN" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">BEGIN (string/O): An attribute that specifies the point in the parent <file> where the current <stream> begins. It can be used in conjunction with the END attribute as a means of defining the location of the stream within its parent file. However, the BEGIN attribute can be used with or without a companion END attribute. When no END attribute is specified, the end of the parent file is assumed also to be the end point of the stream. The BEGIN and END attributes can only be interpreted meaningfully in conjunction with a BETYPE attribute, which specifies the kind of beginning/ending point values that are being used.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="END" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">END (string/O): An attribute that specifies the point in the parent <file> where the <stream> ends. It can only be interpreted meaningfully in conjunction with the BETYPE, which specifies the kind of ending point values being used. Typically the END attribute would only appear in conjunction with a BEGIN attribute.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="BETYPE" use="optional" type="xsd:string">
<xsd:annotation>
<xsd:documentation xml:lang="en">BETYPE: Begin/End Type.
BETYPE (string/O): An attribute that specifies the kind of BEGIN and/or END values that are being used.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#filebetype-streambetype
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="transformFile" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation xml:lang="en">
The transform file element <transformFile> provides a means to access any subsidiary files listed below a <file> element by indicating the steps required to "unpack" or transform the subsidiary files. This element is repeatable.</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:restriction base="xsd:anyType">
<xsd:attribute name="ID" type="xsd:ID" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/O): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="TRANSFORMTYPE" use="required" type="xsd:string">
<xsd:annotation>
<xsd:documentation xml:lang="en">TRANSFORMTYPE (string/R): Is used to indicate the type of transformation needed to render content of a file accessible. This may include unpacking a file into subsidiary files/streams.
Suggested attribute values: https://github.com/mets/METS-schema/wiki/METS2-Suggested-Attribute-Values#transformfiletransformtype
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="TRANSFORMALGORITHM" type="xsd:string" use="required">
<xsd:annotation>
<xsd:documentation xml:lang="en">TRANSFORMALGORITHM (string/R): Specifies the decompression or decryption routine used to access the contents of the file. Algorithms for compression can be either loss-less or lossy.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="TRANSFORMKEY" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">TRANSFORMKEY (string/O): A key to be used with the transform algorithm for accessing the file’s contents.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="TRANSFORMORDER" type="xsd:positiveInteger" use="required">
<xsd:annotation>
<xsd:documentation xml:lang="en">TRANSFORMORDER (postive-integer/R): The order in which the instructions must be followed in order to unpack or transform the container file.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="file" type="fileType" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="ID" type="xsd:ID" use="required">
<xsd:annotation>
<xsd:documentation xml:lang="en">ID (ID/R): This attribute uniquely identifies the element within the METS document, and would allow the element to be referenced unambiguously from another element or document via an IDREF or an XPTR. Typically, the ID attribute value on a <file> element would be referenced from one or more FILEID attributes (which are of type IDREF) on <fptr>and/or <area> elements within the <structMap>. Such references establish links between structural divisions (<div> elements) and the specific content files or parts of content files that manifest them.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="SEQ" type="xsd:int" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">SEQ (integer/O): Indicates the sequence of this <file> relative to the others in its <fileGrp>.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attributeGroup ref="FILECORE"/>
<xsd:attribute name="OWNERID" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation xml:lang="en">OWNERID (string/O): A unique identifier assigned to the file by its owner. This may be a URI which differs from the URI used to retrieve the file.
</xsd:documentation>