<?xml version="1.0"?>
<!--<!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "XMLSchema.dtd">-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns="http://sobekrepository.org/schemas/sobekcm_template/" targetNamespace="http://sobekrepository.org/schemas/sobekcm_template/" elementFormDefault="qualified" attributeFormDefault="unqualified" xsi:schemaLocation="http://www.w3.org/2001/XMLSchema http://www.w3.org/2001/XMLSchema.xsd" version="1.0">
	<xs:annotation>
		<xs:documentation xml:lang="en">
			Schema defining metadata elements to be used for in the SobekCM/UFDC Template XML configuration files.
			Written by Mark Sullivan ( February 2010)
			3/19/2013 - Changed default visibility to be a token.  Either PUBLIC or PRIVATE.
			3/19/2013 - Also added IR_Rights as an option 
		</xs:documentation>
	</xs:annotation>
	<xs:element name="input_template">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="name" minOccurs="1" maxOccurs="unbounded" >
					<xs:complexType>
						<xs:simpleContent>
							<xs:extension base="xs:string">
								<xs:attribute name="language" type="supportedLanguageCodes" />
							</xs:extension>
						</xs:simpleContent>
					</xs:complexType>
				</xs:element>
				<xs:element name="notes" type="xs:string" minOccurs="0" maxOccurs="1" />
				<xs:element name="permissions" type="xs:string" minOccurs="0" maxOccurs="1" />
				<xs:element name="dateCreated" type="xs:string" minOccurs="0" maxOccurs="1" />
				<xs:element name="lastModified" type="xs:string" minOccurs="0" maxOccurs="1" />
				<xs:element name="creator" type="xs:string" minOccurs="0" maxOccurs="1" />
				<xs:element name="banner" type="xs:string" minOccurs="0" maxOccurs="1" />
				<xs:element name="includeUserAsAuthor" type="xs:boolean" minOccurs="0" maxOccurs="1" />
				<xs:element name="uploads" minOccurs="0" maxOccurs="1">
					<xs:simpleType>
						<xs:restriction base="xs:NMTOKEN">
							<xs:enumeration value="FILE" />
							<xs:enumeration value="URL" />
							<xs:enumeration value="FILE_OR_URL" />
							<xs:enumeration value="NONE" />
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="uploadMandatory" type="xs:boolean" minOccurs="0" maxOccurs="1" />
				<xs:element name="bibidRoot" type="xs:string" minOccurs="0" maxOccurs="1" />
				<xs:element name="defaultVisibility" minOccurs="0" maxOccurs="1">
					<xs:simpleType>
						<xs:restriction base="xs:NMTOKEN">
							<xs:enumeration value="PRIVATE" />
							<xs:enumeration value="PUBLIC" />
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="emailUponSubmit" type="xs:string" minOccurs="0" maxOccurs="1" />
				<xs:element name="inputs" minOccurs="1" maxOccurs="1" >
					<xs:complexType>
						<xs:sequence>
							<xs:element name="page" minOccurs="0" maxOccurs="unbounded" >
								<xs:complexType>
									<xs:sequence>
										<xs:element name="name" minOccurs="0" maxOccurs="unbounded">
											<xs:complexType>
												<xs:simpleContent>
													<xs:extension base="xs:string">
														<xs:attribute name="language" type="supportedLanguageCodes" />
													</xs:extension>
												</xs:simpleContent>
											</xs:complexType>
										</xs:element>
										<xs:element name="instructions" minOccurs="0" maxOccurs="unbounded">
											<xs:complexType>
												<xs:simpleContent>
													<xs:extension base="xs:string">
														<xs:attribute name="language" type="supportedLanguageCodes" />
													</xs:extension>
												</xs:simpleContent>
											</xs:complexType>
										</xs:element>
										<xs:element name="panel" minOccurs="0" maxOccurs="unbounded" >
											<xs:complexType>
												<xs:sequence>
													<xs:element name="name" minOccurs="0" maxOccurs="unbounded">
														<xs:complexType>
															<xs:simpleContent>
																<xs:extension base="xs:string">
																	<xs:attribute name="language" type="supportedLanguageCodes" />
																</xs:extension>
															</xs:simpleContent>
														</xs:complexType>
													</xs:element>
													<xs:element name="element" type="templateElement" minOccurs="0" maxOccurs="unbounded" />
												</xs:sequence>
											</xs:complexType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="constants" minOccurs="0" maxOccurs="1" >
					<xs:complexType>
						<xs:sequence>
							<xs:element name="element" type="templateElement" minOccurs="0" maxOccurs="unbounded" />
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<!-- Element object (used both in the template 'inputs' and the constants ) -->
	<xs:complexType name="templateElement">
		<xs:sequence>
			<xs:element name="acronym" minOccurs="0" maxOccurs="unbounded">
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:string">
							<xs:attribute name="language" type="supportedLanguageCodes" />
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="element_data" minOccurs="0" maxOccurs="1">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="fixed_type" type="xs:string" minOccurs="0" maxOccurs="1" />
						<xs:element name="label" type="xs:string" minOccurs="0" maxOccurs="1" />
						<xs:element name="source_xml" type="xs:string" minOccurs="0" maxOccurs="1" />
						<xs:element name="value" type="xs:string" minOccurs="0" maxOccurs="1" />
						<xs:element name="code" type="xs:string" minOccurs="0" maxOccurs="1" />
						<xs:element name="statement" type="xs:string" minOccurs="0" maxOccurs="1" />
						<xs:element name="options" type="xs:string" minOccurs="0" maxOccurs="1" />
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="type">
			<xs:simpleType>
				<xs:restriction base="xs:NMTOKEN">
					<xs:enumeration value="Abstract" />
					<xs:enumeration value="Acquisition" />
					<xs:enumeration value="Additional_Work_Needed" />
					<xs:enumeration value="Affiliation" />
					<xs:enumeration value="Aggregations" />
					<xs:enumeration value="Attribution" />
					<xs:enumeration value="Bib" />
					<xs:enumeration value="BibID" />
					<xs:enumeration value="Born_Digital" />
					<xs:enumeration value="CatalogRecordNum" />
					<xs:enumeration value="Classification" />
					<xs:enumeration value="Container" />
					<xs:enumeration value="Contributor" />
					<xs:enumeration value="Coordinates" />
					<xs:enumeration value="Creator" />
					<xs:enumeration value="CreatorNotes" />
					<xs:enumeration value="Dark_Flag" />
					<xs:enumeration value="Date" />
					<xs:enumeration value="DateCopyrighted" />
					<xs:enumeration value="DescriptionStandard" />
					<xs:enumeration value="Disposition_Advice" />
					<xs:enumeration value="Donor" />
					<xs:enumeration value="Download" />
					<xs:enumeration value="EAD" />
					<xs:enumeration value="Edition" />
					<xs:enumeration value="EmbeddedVideo" />
					<xs:enumeration value="EncodingLevel" />
					<xs:enumeration value="ETD_CommitteeChair" />
					<xs:enumeration value="ETD_CommitteeCoChair" />
					<xs:enumeration value="ETD_CommitteeMember" />
					<xs:enumeration value="ETD_Degree" />
					<xs:enumeration value="ETD_DegreeDiscipline" />
					<xs:enumeration value="ETD_DegreeGrantor" />
					<xs:enumeration value="ETD_DegreeLevel" />
					<xs:enumeration value="ETD_GraduationDate" />
					<xs:enumeration value="ETD_UMI" />
					<xs:enumeration value="FAST_Subject" />
					<xs:enumeration value="FCLA_Flags" />
					<xs:enumeration value="FDA_Account" />
					<xs:enumeration value="FDA_Project" />
					<xs:enumeration value="FDA_SubAccount" />
					<xs:enumeration value="Format" />
					<xs:enumeration value="Frequency" />
					<xs:enumeration value="Genre" />
					<xs:enumeration value="GroupTitle" />
					<xs:enumeration value="Holding" />
					<xs:enumeration value="Icon" />
					<xs:enumeration value="Identifier" />
					<xs:enumeration value="Interface" />
					<xs:enumeration value="IR_Rights" />
					<xs:enumeration value="Language" />
					<xs:enumeration value="LCCN" />
					<xs:enumeration value="Literal" />
					<xs:enumeration value="LOM_Aggregation_Level" />
					<xs:enumeration value="LOM_Classification_Taxonomy" />
					<xs:enumeration value="LOM_Context" />
					<xs:enumeration value="LOM_Difficulty_Level" />
					<xs:enumeration value="LOM_Intended_End_User_Role" />
					<xs:enumeration value="LOM_Interactivity_Level" />
					<xs:enumeration value="LOM_Interactivity_Type" />
					<xs:enumeration value="LOM_Learning_Resource_Type" />					
					<xs:enumeration value="LOM_Status" />
					<xs:enumeration value="LOM_System_Requirements" />
					<xs:enumeration value="LOM_Typical_Age_Range" />
					<xs:enumeration value="LOM_Typical_Learning_Time" />
					<xs:enumeration value="Manufacturer" />
					<xs:enumeration value="Material_Received_Date" />
					<xs:enumeration value="METS_ObjectID" />
					<xs:enumeration value="Note" />
					<xs:enumeration value="OclcRecordNum" />
					<xs:enumeration value="OtherFiles" />
					<xs:enumeration value="OtherTitle" />
					<xs:enumeration value="OtherURL" />
					<xs:enumeration value="PALMM_Code" />
          			<xs:enumeration value="PrimaryIdentifier" />
					<xs:enumeration value="PublicationPlace" />
					<xs:enumeration value="PublicationStatus" />
					<xs:enumeration value="Publisher" />
					<xs:enumeration value="RecordOrigin" />
					<xs:enumeration value="RecordStatus" />
					<xs:enumeration value="RelatedItem" />
					<xs:enumeration value="Rights" />
					<xs:enumeration value="Rights_Embargo_Date" />
					<xs:enumeration value="Scale" />
					<xs:enumeration value="SerialHierarchy" />
					<xs:enumeration value="Source" />
					<xs:enumeration value="SourceNote" />
					<xs:enumeration value="Spatial" />
					<xs:enumeration value="StructureMap" />
					<xs:enumeration value="Subject" />
					<xs:enumeration value="SuDOC" />
					<xs:enumeration value="TargetAudience" />
					<xs:enumeration value="Temporal" />
					<xs:enumeration value="Thumbnail" />
					<xs:enumeration value="Tickler" />
					<xs:enumeration value="Title" />
					<xs:enumeration value="Tracking_Box" />
					<xs:enumeration value="Type" />
					<xs:enumeration value="VID" />
					<xs:enumeration value="Viewer" />
					<xs:enumeration value="Visibility" />
					<xs:enumeration value="VRA_CulturalContext" />
					<xs:enumeration value="VRA_Inscription" />
					<xs:enumeration value="VRA_Materials" />
					<xs:enumeration value="VRA_Measurements" />
					<xs:enumeration value="VRA_StateEdition" />
					<xs:enumeration value="VRA_StylePeriod" />
					<xs:enumeration value="VRA_Technique" />
					<xs:enumeration value="WebSkin" />
					<xs:enumeration value="Wordmark" />	
					<xs:enumeration value="ZT_Class" />
					<xs:enumeration value="ZT_CommonName" />
					<xs:enumeration value="ZT_Family" />
					<xs:enumeration value="ZT_Genus" />
					<xs:enumeration value="ZT_HigherClassification" />
					<xs:enumeration value="ZT_Kingdom" />
					<xs:enumeration value="ZT_Order" />
					<xs:enumeration value="ZT_Phylum" />
					<xs:enumeration value="ZT_ScientificName" />
					<xs:enumeration value="ZT_SpecificEpithet" />
					<xs:enumeration value="ZT_TaxonRank" />
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
		<xs:attribute name="subtype" type="xs:string" />
		<xs:attribute name="acronym" type="xs:string" />
		<xs:attribute name="repeatable" type="xs:boolean" />
		<xs:attribute name="mandatory" type="xs:boolean" />
		<xs:attribute name="readonly" type="xs:boolean" />
	</xs:complexType>

	<!-- SobekCM UI Languages -->

	<xs:simpleType name="supportedLanguageCodes">
		<xs:restriction base="xs:NMTOKEN">
			<xs:enumeration value="eng" />
			<xs:enumeration value="fre" />
			<xs:enumeration value="spa" />
		</xs:restriction>
	</xs:simpleType>
</xs:schema>