<?xml version="1.0" encoding="UTF-8"?>
<!-- METS: Metadata Encoding and Transmission Standard -->
<!-- Copyright © 2001, 2002, 2003 Digital Library Federation -->
<!-- Prepared for the Digital Library Federation by Jerome McDonough, New York University,
with the assistance of Michael Alexander (British Library), Rick Beaubien (University of California), Morgan Cundiff (Library of Congress), Susan Dahl (University of Alberta), Markus Enders (State and University Library, Göttingen),  Richard Gartner (Bodleian Library at Oxford), Nancy Hoebelheirich (Stanford University), Mark Kornbluh (Michigan State University), Cecilia Preston (Preston & Lynch), Merrilee Proffitt (Research Libraries Group), Richard Rinehart (Berkeley Art Museum/Pacific Film Archive), Mackenzie Smith (Massachusetts Institute of Technology), Taylor Surface (OCLC), Brian Tingle (California Digital Library) and Robin Wendler (Harvard University).
-->
<!-- May 8, 2003 -->
<!-- Version 1.3 -->
<!-- Change History -->
<!-- April 23, 2001: Alpha Draft completed -->
<!-- June 7, 2001: Beta completed -->
<!-- 6/7/2001 Beta Changes: 
	1. add 'Time' as a possible time code value, as well as TCF.
	2. Make dmdSec ID attribute required; make ID attribute optional on MDRef/MDWrap.
	3. Add 'Label' attribute to StructMap, along with 'Type'.
	4. Add DDI and FGDC as potential metadata schemes to enumeration.
	5. Enable an "otherMDtype" attribute for MDWrap/MDRef and any other element where
	    there's an 'other' in the enumerated possibilities.
	6. Add a "profile" attribute to METS element.
	7. Revised mptr declaration so that it's like FLocat/MDRef (and not like XLink)
	8. Extend internal documentation of <area> attributes.
	9. Add "other" to the possible set of LOCTYPEs.
	10. Change ADMIDS to ADMID on FileGrp.
	11. Change "N" to "Order" on <div> element.
	12. Change "Number" to "order label" on <div> element
	13. Add createdate and lastmoddate attributes to mets element.
	14. Allow <div> and <area> elements to link to administrative metadata sections.
	15. Normalize attribute pointing facilities for file element and mdRef.
	16. Provide a LOCTYPE of "other" and an "otherloctype" attribute for pointing to external files.
	17. Drop PDI from enumeration of LOCTYPES.
	18. Make MDTYPE required in mdRef and mdWrap.
	19. Rename preservationMD to digiprovMD.
	20. Add optional CHECKSUM attribute to FContent element.
	21. Modularize declarations of fileGrpType and mdSecType attributes and enumerations to
		simplify maintenance.
	22. Add TYPE attribute to structMap.
	23. Declare structMap element using structMapType rather than direct declaration.
	24. Add area element as possible subelement to <div>, along with par and seq.
	25. Change mdSec model to ALL, to enable differing order of mdRef/mdWrap elements.
	26. Extend documentation on <par> and <seq> elements.
 -->
<!-- October 22, 2001: Gamma completed -->
<!-- 10/22/2001 Gamma changes:
 	1. Added optional fileSec element beneath METS root element to contain fileGrps.
 	2. Created subsidiary schema file xlink.xsd for XLink attributes, restored XLink attributes
 	to mptr element, and added XLink support to mdRef and FLocat.
 	3. Created new element metsHdr to handle metadata regarding METS document
 	itself (analogous to TEI Header).  Moved CREATEDATE and LASTMODDATE attributes
 	to metsHdr, and added new RECORDSTATUS attribute.  Added new subsidiary elements
 	agent and altRecordID to metsHdr.
 	4. Made CREATEDATE and LASTMODDATE attributes type xsd:dateTime to allow more precise
 	recording of when work was done.
 	5. Changed all attributes using data type of xsd:binary to xsd:base64Binary to conform to final
 	W3C schema recommendations.
 	6. Cleaned up annotations/documentation.
 -->
<!-- December 19, 2001: Epsilon and PROTOFINAL completed-->
<!-- 12/19/2001 Epsilon changes:
 	1. Changed sequence operator for StructMap so that only 1 root div element is permitted.
	2. Add new roles to agent element's role attribute and support for extensible 'other' role.
	3. Add support for extensible 'other' type attribute on agent element.
	4. Yet more documentation clean up.
	5. Relocate CHECKSUM attribute from FContent to File element.
	6. Change the file element's CREATED attribute and fileGroup's VERSDATE attribute to 
	a type of xsd:dateTime
	7. Change attribute name DMD for div element to DMDID for consistency's sake.
	8. Added new behaviorSec for support of referencing executable code from METS object
 -->
<!-- February 8, 2002: Zeta bug fix to final -->
<!-- 2/8/2002 Zeta changes:
 
 	1. Eliminated redundant VRA in metadata type enumeration.
 	2. Changed mdWrap content model, adding xmlData element to eliminate
 		ambiguous content model
 -->
<!-- June 3, 2002: Version 1.1 -->
<!-- 6/3/2002 v1.1 changes:
 
  	1. Add new structLink section for recording hyperlinks between media represented by structMap nodes.
	2. Allow a <par> element to
	contain a <seq> -->
<!-- Dec. 27, 2002: Version 1.2 -->
<!-- 12/27/2002 v1.2 changes:
1. Add "USE" attribute to FileGrp, File, FLocat and FContent;
2. Make FLocat repeatable;
3. Have FContent mimic mdWrap in using separate binData/xmlData sections;
4. Copyright statement added;
5. Allow both FLocat and Fcontent in single file element;
6. Allow behaviorSec elements to group through GROUPID attribute;
7. allow descriptive and administrative metadata sections to be grouped through GROUPID attribute;
8. allow <file> element to point to descriptive metadata via DMDID attribute;
9. allow descriptive metadata and all forms of administrative metadata to point to administrative metadata via ADMID attribute;
10. CREATED and STATUS attributes added to all desc. and adm. metadata sections; and
11. clean up documentation in elements to reflect reality.
-->
<!-- May 8, 2003: Version 1.3 -->
<!-- 05/05/2003 v1.3 changes:
1. Change "2. OBJID: a primary identifier assigned to the original source document" to "2. OBJID: a primary identifier assigned to the METS object."
2. Add MODS to MDTYPEs.
3. Modify <file> attributes so that instead of just CHECKSUM we have CHECKSUM and CHECKSUMTYPE, where CHECKSUMTYPE is a controlled vocabulary as follows:
     HAVAL, MD5, SHA-1, SHA-256, SHA-384, SHA-512, TIGER, WHIRLPOOL
4.Alter BehaviorSec to make it recursive, and add a new behavior element to wrap mechanism and interfaceDef elements.
-->
<xsd:schema targetNamespace="http://www.loc.gov/METS/" xmlns="http://www.loc.gov/METS/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/TR/xlink" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xsd:import namespace="http://www.w3.org/TR/xlink" schemaLocation="xlink.xsd"/>
	<xsd:element name="mets">
		<xsd:annotation>
			<xsd:documentation>METS: Metadata Encoding and Transmission Standard.
			METS is intended to provide a standardized XML format for transmission
			of complex digital library 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.
			</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>mets Complex Type.
			A METS document consists of seven possible subsidiary sections:
			metsHdr (METS document header), dmdSec (descriptive metadata 
			section), amdSec (administrative metadata section), fileGrp (file 
			inventory group), structLink (structural map linking), structMap (structural map) and
			behaviorSec (behaviors section).  It also has five possible attributes:
			1. ID (an XML ID);
			2. OBJID: a primary identifier assigned to the METS document;
			3. LABEL: a title/text string identifying the document for users;
			4. TYPE: a type for the object, e.g., book, journal, stereograph, etc.; and
			5. PROFILE: the registered profile to which  this METS document conforms.
			METS registry information is available from the Library of Congress at
			http://www.loc.gov/mets.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="metsHdr" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>metsHdr: METS Header. 
					Like a TEI Header, the METS Header element records metadata 
					about the METS document itself (not the digital library object 
					that the METS document encodes).  It has two possible subsidiary
					elements, agent (document agent) and altRecordID.
					(alternative Record ID).  It also has the following four
					attributes:
					1. ID (an XML ID);
					2. CREATEDATE: the date/time the METS document was created;
					3. LASTMODDATE: the date/time the METS document was last modified;
					4. RECORDSTATUS: a string indicating the status of the METS document,
					to be used mainly for internal processing purposes.
			</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="agent" minOccurs="0" maxOccurs="unbounded">
							<xsd:annotation>
								<xsd:documentation>agent: METS agent.
								The agent element allows for various parties and their 
								roles with respect to the METS document to be recorded.  
								It has five attributes:
								 1. ID (an XML ID);
								  2. ROLE: one of 7 set roles with respect to the document, 
								  CREATOR, EDITOR, ARCHIVIST, PRESERVATION,  
								  DISSEMINATOR, CUSTODIAN and IPOWNER or the
								  value OTHER to indicate a non-set role;
								  3. OTHERROLE: a string to specify a non-set role if
								  OTHER is indicated in the ROLE attribute; 
								  4. TYPE: either the set values of INDIVIDUAL agent or ORGANIZATION,
								  or the value OTHER to indicate a non-set value; and
								  5. OTHERTYPE: a string to indicate the type of agent
								  if a value of OTHER is indicated in the TYPE attribute.
								  </xsd:documentation>
							</xsd:annotation>
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="name" type="xsd:string"/>
									<xsd:element name="note" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
								</xsd:sequence>
								<xsd:attribute name="ID" type="xsd:ID" use="optional"/>
								<xsd:attribute name="ROLE" use="required">
									<xsd:simpleType>
										<xsd:restriction base="xsd:string">
											<xsd:enumeration value="CREATOR"/>
											<xsd:enumeration value="EDITOR"/>
											<xsd:enumeration value="ARCHIVIST"/>
											<xsd:enumeration value="PRESERVATION"/>
											<xsd:enumeration value="DISSEMINATOR"/>
											<xsd:enumeration value="CUSTODIAN"/>
											<xsd:enumeration value="IPOWNER"/>
											<xsd:enumeration value="OTHER"/>
										</xsd:restriction>
									</xsd:simpleType>
								</xsd:attribute>
								<xsd:attribute name="OTHERROLE" type="xsd:string" use="optional"/>
								<xsd:attribute name="TYPE" use="optional">
									<xsd:simpleType>
										<xsd:restriction base="xsd:string">
											<xsd:enumeration value="INDIVIDUAL"/>
											<xsd:enumeration value="ORGANIZATION"/>
											<xsd:enumeration value="OTHER"/>
										</xsd:restriction>
									</xsd:simpleType>
								</xsd:attribute>
								<xsd:attribute name="OTHERTYPE" type="xsd:string" use="optional"/>
							</xsd:complexType>
						</xsd:element>
						<xsd:element name="altRecordID" minOccurs="0" maxOccurs="unbounded">
							<xsd:annotation>
								<xsd:documentation>altRecordID: Alternative Record ID.  
								This element allows for documentation of alternative ID values for 
								the METS document in addition to the primary ID stored in the 
								OBJID attribute in the root METS element.  It has two attributes: 
								1. ID: an XML ID, and 
								2. TYPE: a description of the identifier type (e.g., OCLC #, LCCN, etc.).									</xsd:documentation>
							</xsd:annotation>
							<xsd:complexType>
								<xsd:simpleContent>
									<xsd:extension base="xsd:string">
										<xsd:attribute name="ID" type="xsd:ID" use="optional"/>
										<xsd:attribute name="TYPE" type="xsd:string" use="optional"/>
									</xsd:extension>
								</xsd:simpleContent>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
					<xsd:attribute name="ID" type="xsd:ID" use="optional"/>
					<xsd:attribute name="CREATEDATE" type="xsd:dateTime" use="optional"/>
					<xsd:attribute name="LASTMODDATE" type="xsd:dateTime" use="optional"/>
					<xsd:attribute name="RECORDSTATUS" type="xsd:string" use="optional"/>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="dmdSec" type="mdSecType" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>dmdSec: Description Metadata Section.
					This section records all of the descriptive metadata for all items in the METS object
					(including both structural map divs and descriptive metadata for data files).
					Metadata can be either included in the METS hub document (mdWrap) or 
					referenced via an identifier/locator (mdRef), a la Warwick Framework.  Multiple
					dmdSec elements are allowed so that descriptive metadata
					can be recorded for each separate item within the METS object.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="amdSec" type="amdSecType" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>amdSec: Administrative Metadata Section.
					This section records all of the administrative metadata for all items in the METS object
					(including structural map divs, data files, descriptive metadata sections
					and adminstrative metadata sections themselves),
					and is divided into four subsections: techMD (technical metadata), rightsMD
					(intellectual property rights metadata), sourceMD (analog/digital source metadata), and 
					digiprovMD (digital provenance metadata).
					Each of these subsections follows the mdSecType model, so that they can 
					either include metadata within the METS hub document (mdWrap) or 
					reference it via an identifier/locator (mdRef).  Multiple
					techMD, rightsMD, sourceMD and digiprovMD elements are allowed so that 
					administrative metadata can be recorded for each separate item within the 
					METS object.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="fileSec" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>fileSec: Content File Section. 
					The content file section records information regarding all of the 
					data files which comprise the digital library object.  
					It has a single attribute, ID.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="fileGrp" maxOccurs="unbounded">
							<xsd:complexType>
								<xsd:complexContent>
									<xsd:extension base="fileGrpType"/>
								</xsd:complexContent>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
					<xsd:attribute name="ID" type="xsd:ID" use="optional"/>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="structMap" type="structMapType" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>structMap: Structural Map.
					The structural map is the heart of a METS document, defining the 
					hierarchical arrangement of a primary source document which has
					been digitized.  This hierarchy is encoded as a tree of 'div' elements.
					Any given 'div' can point to another METS document via the 'mptr'
					element, or to a single file, to a group of files, or to segments of individual 
					files or groups of files through the 'fptr' and subsidiary elements.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="structLink" type="structLinkType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>structLink: Structural Map Linking.
						The Structural Map Linking section allows for the specification 
						of hyperlinks between different components of a METS 
						structure delineated in a structural map.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="behaviorSec" type="behaviorSecType" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>behaviorSec: Behavior Section.  This section records executable 
					behaviors that are associated with content in the METS object.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="ID" type="xsd:ID" use="optional"/>
		<xsd:attribute name="OBJID" type="xsd:string" use="optional"/>
		<xsd:attribute name="LABEL" type="xsd:string" use="optional"/>
		<xsd:attribute name="TYPE" type="xsd:string" use="optional"/>
		<xsd:attribute name="PROFILE" type="xsd:string" use="optional"/>
	</xsd:complexType>
	<xsd:complexType name="amdSecType">
		<xsd:annotation>
			<xsd:documentation>amdSecType: Complex Type for Administrative Metadata.
			The administrative metadata section consists of four possible subsidiary
			sections: techMD (technical metadata for text/image/audio/video files), 
			rightsMD (intellectual property rights metadata), sourceMD (analog/digital source 
			metadata), and digiprovMD (digital provenance metadata, that is, the
			history of migrations/translations performed on a digital library object from
			it's original digital capture/encoding).  amdSecType has a single attribute, ID (XML ID).
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="techMD" type="mdSecType" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>techMD: technical metadata.  
						The techMD element provides a wrapper around a generic metadata section, 
						which should contain technical metadata regarding a file or files.  It has a single 
						attribute, ID, which file/fileGrp elements can use to reference the technical 
						metadata that applies to them.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="rightsMD" type="mdSecType" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>rightsMD: intellectual property rights metadata.  
						The rightsMD element provides a wrapper around a generic metadata section, 
						which should contain IP rights metadata.  It has a single attribute, ID, which 
						other METS elements can use to reference IP Rights metadata that applies to them.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="sourceMD" type="mdSecType" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>sourceMD: source metadata.  
						The sourceMD element provides a wrapper around a  generic metadata section 
						which should contain information regarding the original source.  It has a single attribute, 
						ID, which file/fileGrp elements can use to reference the source metadata which 
						applies to them.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="digiprovMD" type="mdSecType" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>digiprovMD: digital provenance metadata.
						The digiprovMD element provides a wrapper around a generic metadata
						section, which should contain information regarding the ultimate origin of a digital
						object and the derivation of its current elements.  This includes recording 
						master/derivative relationships between various files which currently represent
						the object, as well recording any transformations or migrations undergone
						by files composing the digital object subsequent to the initial digitization of
						an item or, in the case of born digital materials, the files' creation.  In short,
						digiprovMD should be used to record information to allow both archival/library
						staff and scholars to understand what modifications have been performed to
						a digital object during its life cycle in order to judge how those processes
						might have altered or corrupted the object's ability to accurately represent
						the original item.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="ID" type="xsd:ID" use="optional"/>
	</xsd:complexType>
	<xsd:complexType name="fileGrpType">
		<xsd:annotation>
			<xsd:documentation>fileGrp: File Group.
					The file group is used to cluster all of the digital files composing a digital
					library object in a hierarchical arrangement (fileGrp is recursively defined
					to enable the creation of the hierarchy).  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).  A fileGrp element
					may have the following attributes:
					1. ID: an XML ID for the element
					2. VERSDATE: date this version/fileGrp of the digital object was created.
					3. ADMID: IDREFs to administrative metadata sections in the METS document
					that correspond with all files in this file group;
					4. USE: a string to indicate the intended use of files within this file group
					(e.g., master, reference, thumbnails for image files).
				</xsd:documentation>
		</xsd:annotation>
		<xsd:choice>
			<xsd:element name="fileGrp" type="fileGrpType" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="file" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>. ADMID: IDREFS to administrative metadata sections in the METS document 
							that correspond with this file;
							10. DMDID: IDREFS to descriptive metadata sections in the METS document
							that correspond with this file;
							11. GROUPID: an identifier that establishes a correspondence between this file 
							and files in other file groups.  Typically, this will be used to associate a master 
							file in one file group with derivative files in other file groups;
							12. USE: a string indicated the intended use of this file (e.g., master,
							reference, thumbnail for image files).
						</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="FLocat" minOccurs="0" maxOccurs="unbounded" name="behaviorSecType">
		<xsd:annotation>
			<xsd:documentation ref="LOCATION" name="ID" type="xsd:ID" use="optional"/>
			"
					
		
											
										
	
								"
					
			
		
			"
					 
						7. xlink:title: 
					"
						8. xlink:show: "
					"
						9. xlink:actuate: "
	
				"
		
		"
	
					"
	
	
		
			"
		
					
				behaviorType: Complex Type for Behaviors. 
			 A behavior can be used to associate executable behaviors with content in the METS object.  
			 A behavior element has an interface definition element that represents an abstract definition of the set 
			 of behaviors represented by a particular behavior.  A behavior element also has an behavior 
			 mechanism which is a module of executable code that implements and runs the behavior defined 
			 abstractly by the interface definition.  A behavior may have the following attributes: 	
			 1. ID: an XML ID for the element   
			 2. STRUCTID:  IDREFS to structMap sections or divs within a structMap in the METS document. 
			 The content that the STRUCTID attribute points to is considered "
					
					
					
		"
					
					
				
					"
				
		
			
						"
				
			
							"

								"
OTHER.";
						5. LABEL: a label to display to the viewer of the METS document identifying the metadata.
					"
				
	"
							"
							"
					"
								"A wrapper to contain Base64 encoded metadata.											"
								"
								
										9. xlink:show: "
						
		
					
			
							
		
			
								
					
									
						
								"
		
				
								
						"
					
		
									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 screen, 
									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.  See the areaType documentation for more details.
								
						8. xlink:show: "
				
						4. xlink:href: see XLink standard (http://www.w3.org/TR/xlink)
						5. xlink:role: "
			
		"
		"
		""
		
		
		
						9. xlink:actuate: "
		
											
		
										10. xlink:actuate: "
		
		
	
	</xsd:documentation>
							</xsd:annotation>
							<xsd:complexType name="to" type="xsd:IDREF"/>
	<xsd:attribute ref="xlink:arcrole" use="optional" name="from" type="xsd:IDREF"/>
				<xsd:attributeGroup ref="xlink:title" use="optional"/>
			<xsd:attribute ref="xlink:show" use="optional"/>
		<xsd:attributeGroup ref="xlink:actuate" use="optional"/>
	</xsd:complexType>
						</xsd:element>
						<xsd:element>
							<xsd:annotation>
								<xsd:documentation>FContent: file content.  
										The FContent element is used to deliver a content file for a METS 
										document within the METS file itself.  The content file must be 
										either Base 64 	encoded, and contained within the subsidiary
										binData wrapper element, or consist of XML information and
										be contained within the subsidiary xmlData wrapper element.  The
										FContent element has the following attribute:
										1. ID (an XML ID)
										2. USE: a string indicating the intended use of the embedded file.
									</xsd:documentation>
							</xsd:annotation>
							<xsd:complexType>
								<xsd:choice>
									<xsd:element>
										<xsd:annotation>
											<xsd:documentation>A wrapper to contain a Base64 encoded
											file.
											</xsd:documentation>
										</xsd:annotation>
									</xsd:element>
									<xsd:element>
										<xsd:annotation>
											<xsd:documentation>A wrapper to contain an XML encoded
											file.
											</xsd:documentation>
										</xsd:annotation>
										<xsd:complexType>
											<xsd:sequence>
												<xsd:any>
											</xsd:sequence>
										</xsd:complexType>
									</xsd:element>
								</xsd:choice>
								<xsd:attribute>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
						<xsd:simpleType>
							<xsd:restriction>
								<xsd:enumeration>
								<xsd:enumeration>
								<xsd:enumeration>
								<xsd:enumeration>
								<xsd:enumeration>
								<xsd:enumeration>
								<xsd:enumeration>
								<xsd:enumeration>
							</xsd:restriction>
						</xsd:simpleType>
					</xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
				</xsd:complexType>
			</xsd:element>
		</xsd:choice>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
	</xsd:complexType>
	<xsd:complexType>
		<xsd:annotation>
			<xsd:documentation>structMap Complex Type
			The structural map (structMap) outlines a hierarchical structure for the
			original object being encoded, using a series of nested div elements.
			The structMap element has the following attributes:
			1. ID: an XML ID for the element;
			2. TYPE: the type of structural map provided.  Typical values will be
			"PHYSICAL" for a map which describes the physical composition of
			the original work (a series with individual monographs with pages) and
			"LOGICAL" for one which describes the intellectual structure of the work
			(a monograph with TOC, forward, chapters, index., etc.);
			3. LABEL: a string to describe the structMap to users.  This is primarily
			useful where more than one structMap is provided for a single object
			(e.g., both logical and physical structMap).</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element>
				<xsd:annotation>
					<xsd:documentation>div: Division.  
						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.  
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
	</xsd:complexType>
	<xsd:complexType>
		<xsd:annotation>
			<xsd:documentation>Div Complex Type
					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.  
					The div element has the following attributes: 
					1. ID (an XML ID); 
					2. ORDER: an integer representation of this div's order among its siblings 
					(e.g., its sequence); 
					3. ORDERLABEL: a string representation of this div's order among its siblings (e.g., "xii"),
					or a non-integer native numbering system.  It is presumed that this value will still be
					machine-actionable (e.g., supports a page 'go to' function), and is not a replacement/
					substitute for the LABEL attribute.
					4. LABEL: a string label to describe this div to an end user viewing the document, as per 
					a table of contents entry (NB: a div LABEL should be specific to its level in the structural
					map.  In the case of a book with chapters, the book div LABEL should have the book
					title, and the chapter div LABELS should have the individual chapter titles, rather than
					having the chapter div LABELs combine both book title and chapter title).
					NB: to clarify the differences between ORDER, ORDERLABEL, and LABEL, 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".
					5. DMDID:  a set of IDREFs to descriptive metadata sections within this METS document
					applicable to this div.
					6. ADMID: a set of IDREFS to administrative metadata sections within this METS document
					applicable to this div.
					7. TYPE: a type of division (e.g., chapter, article, page, etc.).
				</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element>
				<xsd:annotation>
					<xsd:documentation> 
						7. xlink:title: "
						8. xlink:show: "
						4. xlink:href: see XLink standard (http://www.w3.org/TR/xlink)
						5. xlink:role: "
						9. xlink:actuate: ""
						NOTE: mptr is an empty element.  The location of the resource
						pointed to MUST be stored in the xlink:href element.
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:attribute>
					<xsd:attributeGroup>
					<xsd:attributeGroup>
				</xsd:complexType>
			</xsd:element>
			<xsd:element>
				<xsd:annotation>
					<xsd:documentation>fptr: File Pointer.  
						The fptr element associates a div element with content files that represent that div.  
						It can either point to a file directly itself, via the FILEID attribute, or it can do more 
						complex links to content via the subsidiary area, par and seq elements.  The fptr
						element can have the following attributes:
						1. ID: an XML ID for this element; and
						2. FILEID: an IDREF to a file element which corresponds with the div containing
						this ftpr.
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:choice>
						<xsd:element>
							<xsd:annotation>
								<xsd:documentation>par: Parallel  files.  
									The par element should used to link a div to a set of content files when 
									those files should be played/displayed in unison to deliver the content to the 
									user.  A par element has two possible subsidiary elements,
									which should be used in different cases.  In cases where
									each bytestream to be played in parallel can fit in a single
									file, you should use subsidiary area elements within the
									par element to point to those files.  However, in some cases,
									bytestreams which should be played in parallel are too
									large to fit in a single file (high quality multi-track audio,
									or video).  In those cases, you should use subsidiary
									seq elements, where each seq contains the files comprising
									a particular bytestream in the order they should be played
									back.
									Par has the following attributes:
									1. ID: an XML ID for this element.
								</xsd:documentation>
							</xsd:annotation>
							<xsd:complexType>
								<xsd:choice>
									<xsd:element>
									<xsd:element>
								</xsd:choice>
								<xsd:attribute>
							</xsd:complexType>
						</xsd:element>
						<xsd:element>
						<xsd:element>
							<xsd:annotation>
								<xsd:documentation>
									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 screen, 
									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.  See the areaType documentation for more details.
								</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:choice>
					<xsd:attribute>
					<xsd:attribute>
				</xsd:complexType>
			</xsd:element>
			<xsd:element>
		</xsd:sequence>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
	</xsd:complexType>
	<xsd:complexType>
		<xsd:annotation>
			<xsd:documentation>seq: Sequence 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.  Seq has the following attributes:
					1. ID: an XML ID for this element.
				</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element>
		</xsd:sequence>
		<xsd:attribute>
	</xsd:complexType>
	<xsd:complexType>
		<xsd:annotation>
			<xsd:documentation>nced file; 
				6. END: an ending location in a referenced file; 
				7. BETYPE: the syntax used in specifying the BEGIN and END 
				attributes (byte offset, IDREF value, SMPTE time code, SMIL
				time value, MIDI time code, a simple time code of the form
				HH:MM:SS, or a TCF time code); 
				8. EXTENT: the duration of the segment; and 
				9. EXTTYPE: the syntax used in specifying the extent (byte length 
				or SMPTE time value);
				10. ADMID: IDREFs for administrative metadata regarding this area.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
			<xsd:simpleType>
				<xsd:restriction>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
			<xsd:simpleType>
				<xsd:restriction>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
			<xsd:simpleType>
				<xsd:restriction>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute>
	</xsd:complexType>
	<xsd:complexType>
		<xsd:annotation>
			<xsd:documentation>structLink: Structural Map Linking.
				The Structural Map Linking section allows for the specification 
				of hyperlinks between different components of a METS 
				structure delineated in a structural map.  structLink contains
				a single, repeatable element, smLink.  Each smLink element
				indicates a hyperlink between two nodes in the structMap. 
				The nodes in smLink are identified using their XML ID attributes.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element>
				<xsd:annotation>
					<xsd:documentation>attributes, and not simple strings.
				</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType>
		<xsd:annotation>
			<xsd:documentation>behaviorSecType: Behaviors Section.
			Behaviors are executable code which can be associated with parts of a METS
			object.  The behaviorSec element is used to group individual behaviors within
			a hierarchical structure.  Such grouping can be useful to organize families
			of behaviors together or to indicate other relationships between particular
			behaviors.  The behaviorSec element has three attributes:
			1. ID: an XML ID attribute for a particular behaviorSec;
			2. CREATED: a dateTime of creation for the behaviorSec; and
			3. LABEL: a text description of the behaviorSec.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element>
			<xsd:element>
		</xsd:sequence>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
	</xsd:complexType>
	<xsd:complexType>
		<xsd:annotation>
			<xsd:documentation>behaviorType: Complex Type for Behaviors. 
			 A behavior can be used to associate executable behaviors with content in the METS object.  
			 A behavior element has an interface definition element that represents an abstract definition of the set 
			 of behaviors represented by a particular behavior.  A behavior element also has an behavior 
			 mechanism which is a module of executable code that implements and runs the behavior defined 
			 abstractly by the interface definition.  A behavior may have the following attributes: 	
			 1. ID: an XML ID for the element   
			 2. STRUCTID:  IDREFS to structMap sections or divs within a structMap in the METS document. 
			 The content that the STRUCTID attribute points to is considered "input" to the behavior mechanism 
			 (executable) defined for the behavior.  
			 3. BTYPE: a behavior type identifier for a given set of related behaviors. 	
			 4. CREATED: date this behavior was created.  
			 5. LABEL: a description of the behavior.  
			 6. GROUPID: an identifier that establishes a correspondence between this behavior 				and other behaviors.  Typically, this will be used to facilitate versioning of behaviors. 
			7. ADMID: IDREFS to administrative metadata sections pertaining to this behavior.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element>
				<xsd:annotation>
					<xsd:documentation>interfaceDef: interface definition object. 
					The interface definition element contains a pointer an abstract definition of a set of related behaviors.  
					These abstract behaviors can be associated with the content of a METS object.    The interface 
					definition element will be a pointer to another object (an interface definition object).  An interface 
					definition object could be another METS object, or some other entity (e.g., a WSDL file).  Ideally, 
					an interface definition object should contain metadata that describes a set of behaviors or methods.  
					It may also contain files that describe the intended usage of the behaviors, and possibly files that 
					represent different expressions of the interface definition.  The interfaceDef element is optional to allow 
					for cases where an interface definition can be obtained from a behavior mechanism object (see the 
					mechanism element of the behaviorSec). </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element>
				<xsd:annotation>
					<xsd:documentation>mechanism: executable mechanism.  
					A mechanism element contains a pointer to an executable code module that implements a set 
					of behaviors defined by an interface definition.    The mechanism element will be a pointer to 
					another object (a mechanism object).  A mechanism object could be another METS object, or 
					some other entity (e.g., a WSDL file).  A mechanism object should contain executable code, 
					pointers to executable code, or specifications for binding to network services (e.g., web 
					services).  </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
	</xsd:complexType>
	<xsd:complexType>
		<xsd:annotation>
			<xsd:documentation>  	    
			8. xlink:title: " 	    
			9. xlink:show: "     
			5. xlink:href: see XLink standard (http://www.w3.org/TR/xlink) 	    
			6. xlink:role: " 	    
			10. xlink:actuate: "" 	    
			NOTE: objectType is an empty element.  The location of the resource pointed to MUST be stored in the xlink:href element.     </xsd:documentation>
		</xsd:annotation>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attributeGroup>
		<xsd:attributeGroup>
	</xsd:complexType>
	<xsd:complexType>
		<xsd:annotation>
			<xsd:documentation>ent, etc.).
			</xsd:documentation>
		</xsd:annotation>
		<xsd:all>
			<xsd:element>
				<xsd:annotation>
					<xsd:documentation> 
						7. xlink:title: "
						8. xlink:show: ";
						4. xlink:href: see XLink standard (http://www.w3.org/TR/xlink)
						5. xlink:role: "
						9. xlink:actuate: ""
						10. MIMETYPE: the MIME type for the metadata being pointed at; 
						11. MDType: the type of metadata being pointed at (e.g., MARC, EAD, etc.); 
						12. OTHERMDTYPE: a string indicating an alternative MDTYPE when the MDTYPE
						attribute value is set to "OTHER.";
						13. LABEL: a label to display to the viewer of the METS document identifying the metadata; and 
						14. XPTR: an xptr to a location within the file pointed to by the mdRef element, if applicable.
						NB: mdRef is an empty element.  The location of the metadata must be recorded in
						the xlink:href attribute, supplemented by the XPTR attribute as needed.									</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:attribute>
					<xsd:attributeGroup>
					<xsd:attributeGroup>
					<xsd:attributeGroup>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attribute>
				</xsd:complexType>
			</xsd:element>
			<xsd:element>
				<xsd:annotation>
					<xsd:documentation>mdWrap: metadata wrapper.  
						The mdWrap element is a generic element used throughout the METS schema  to allow 
						the encoder to place arbitrary metadata conforming to other standards/schema within a 
						METS document.  The included metadata can either be encoded in XML, in which case 
						it may be placed directly within the mdWrap element, or it can be Base64 encoded, and 
						placed within a subsidiary binData element.  The mdWrap element can have the following
						attributes:
						1. ID: an XML ID for this element;
						2. MIMETYPE: the MIME type for the metadata contained in the element;
						3. MDType: the type of metadata contained (e.g., MARC, EAD, etc.); 
						4. OTHERMDTYPE: a string indicating an alternative MDTYPE when the MDTYPE
						attribute value is set to "OTHER.";
						5. LABEL: a label to display to the viewer of the METS document identifying the metadata.
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:choice>
						<xsd:element>
							<xsd:annotation>
								<xsd:documentation>A wrapper to contain Base64 encoded metadata.											</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element>
							<xsd:complexType>
								<xsd:sequence>
									<xsd:any>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
					</xsd:choice>
					<xsd:attribute>
					<xsd:attribute>
					<xsd:attributeGroup>
					<xsd:attribute>
				</xsd:complexType>
			</xsd:element>
		</xsd:all>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
		<xsd:attribute>
	</xsd:complexType>
	<xsd:attributeGroup>
		<xsd:attribute>
			<xsd:simpleType>
				<xsd:restriction>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute>
	</xsd:attributeGroup>
	<xsd:attributeGroup>
		<xsd:attribute>
			<xsd:simpleType>
				<xsd:restriction>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
					<xsd:enumeration>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute>
	</xsd:attributeGroup>
</xsd:schema>