<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- last modified on July 16, 2009 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
	attributeFormDefault="unqualified">
	<xs:element name="sequence">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="sequenceID" type="xs:unsignedLong"/>
				<xs:element name="markercode" type="xs:string"/>
				<xs:element name="genbank_accession" minOccurs="0" type="xs:string"/>
				<xs:element name="nucleotides" type="xs:string"/>
				<xs:element name="last_updated" type="xs:dateTime" />
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="taxon">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="taxID" type="xs:unsignedLong"/>
				<xs:element name="name" type="xs:string"/>
				<xs:element name="reference" minOccurs="0" type="xs:string"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="read">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="readID" type="xs:unsignedLong"/>
				<xs:element name="run_date" type="xs:dateTime"/>
				<xs:element name="sequencing_center" type="xs:string"/>
				<xs:element name="direction" type="xs:string"/>
				<xs:element name="fwd_pcr_primer" minOccurs="0" type="xs:string"/>
				<xs:element name="rev_pcr_primer" minOccurs="0" type="xs:string"/>
				<xs:element name="seq_primer" minOccurs="0" type="xs:string"/>
				<xs:choice>
					<xs:sequence>
						<xs:element name="tracename" type="xs:string"/>
					</xs:sequence>
					<xs:sequence>
						<xs:element name="trace_link" type="xs:anyURI"/>
						<xs:element name="score_link" minOccurs="0" type="xs:anyURI"/>
					</xs:sequence>
				</xs:choice>
				<xs:element name="markercode" type="xs:string"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="record">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="recordID" type="xs:unsignedLong"/>
				<xs:element name="processid" type="xs:string"/>
				<xs:element name="barcode_index_number" minOccurs="0" type="xs:string"/>
				<xs:element name="specimen_identifiers">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="sampleid" type="xs:string"/>
							<xs:element name="catalognum" minOccurs="0" type="xs:string"/>
							<xs:element name="fieldnum" minOccurs="0" type="xs:string"/>
							<xs:element name="institution_storing" type="xs:string"/>
							<xs:element name="collectioncode" minOccurs="0" type="xs:string"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="taxonomy">
					<xs:annotation>
						<xs:documentation>Full heirarchy is required</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element name="identification_provided_by" minOccurs="0"
								type="xs:string"/>
							<xs:choice>
								<xs:element name="phylum">
									<xs:complexType>
										<xs:sequence>
											<xs:element ref="taxon"/>
										</xs:sequence>
									</xs:complexType>
								</xs:element>
								<xs:element name="division">
									<xs:complexType>
										<xs:sequence>
											<xs:element ref="taxon"/>
										</xs:sequence>
									</xs:complexType>
								</xs:element>
							</xs:choice>
							<xs:element name="class" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element ref="taxon"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="order" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element ref="taxon"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="family" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element ref="taxon"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="subfamily" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element ref="taxon"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="genus" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element ref="taxon"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="species" minOccurs="0">
								<xs:annotation>
									<xs:documentation>Binomial including genus</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:element ref="taxon"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="subspecies" minOccurs="0">
								<xs:annotation>
									<xs:documentation>Trinomial including genus and species</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:element ref="taxon"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="specimen_details" minOccurs="0">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="voucher_type" minOccurs="1" type="xs:string"/>
							<xs:element name="voucher_desc" minOccurs="1" type="xs:string"/>
							<xs:element name="reproduction" minOccurs="0" type="xs:string"/>
							<xs:element name="sex" minOccurs="0" type="xs:string"/>
							<xs:element name="lifestage" minOccurs="0" type="xs:string"/>
							<xs:element name="tissue_type" minOccurs="0" type="xs:string">
								<xs:annotation>
									<xs:documentation>Tissue used to generate barcode (blood, leg, feces, etc)</xs:documentation>
								</xs:annotation>
							</xs:element>
							<xs:element name="plant_specific" minOccurs="0">
								<xs:complexType>
									<xs:sequence/>
								</xs:complexType>
							</xs:element>
							<xs:element name="fungi_specific" minOccurs="0">
								<xs:complexType>
									<xs:sequence/>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="collection_event">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="collectors" minOccurs="1" type="xs:string"/>
							<xs:element name="collectiondate" minOccurs="0" type="xs:date"/>
							<xs:element name="coordinates" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="lat" type="xs:float"/>
										<xs:element name="lon" type="xs:float"/>
										<xs:element name="coordsource" type="xs:string">
											<xs:annotation>
												<xs:documentation>Can be datum, gazetteer, or map reference</xs:documentation>
											</xs:annotation>
										</xs:element>
										<xs:element name="accuracy" type="xs:string">
											<xs:annotation>
												<xs:documentation>Radius in degrees, km, or miles</xs:documentation>
											</xs:annotation>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="region" minOccurs="0" default="xs:string"/>
							<xs:element name="exactsite" minOccurs="0" type="xs:string"/>
							<xs:choice>
								<xs:sequence>
									<xs:element name="country" type="xs:string"/>
									<xs:element name="province" minOccurs="0" type="xs:string">
										<xs:annotation>
											<xs:documentation>province or state</xs:documentation>
										</xs:annotation>
									</xs:element>
								</xs:sequence>
								<xs:element name="ocean" type="xs:string" minOccurs="0"/>
							</xs:choice>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="specimen_imagery" minOccurs="0">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="media" minOccurs="1" maxOccurs="unbounded">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="mediaID" type="xs:unsignedLong"/>
										<xs:element name="caption" minOccurs="0" default=""/>
										<xs:element name="metatags" minOccurs="0" type="xs:string"/>
										<xs:element name="copyright" minOccurs="0"
											default="Creative Commons Attribution-Noncommercial-No Derivative Works 3.0">
											<xs:annotation>
												<xs:documentation>default is Creative Commons Attribution-Noncommercial-No Derivative Works 3.0</xs:documentation>
											</xs:annotation>
										</xs:element>
										<xs:choice>
											<xs:element name="video_file" type="xs:anyURI"/>
											<xs:element name="image_file" type="xs:anyURI"/>
											<xs:element name="image_link" type="xs:anyURI"/>
											<xs:element name="photosynth" type="xs:anyURI"/>
											<xs:element name="youtube" type="xs:anyURI"/>
											<xs:element name="gigapan" type="xs:anyURI"/>
										</xs:choice>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="sequences" minOccurs="0">
					<xs:complexType>
						<xs:sequence>
							<xs:element ref="sequence" maxOccurs="unbounded"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element minOccurs="0" name="tracefiles">
					<xs:complexType>
						<xs:sequence>
							<xs:element maxOccurs="unbounded" ref="read"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="last_updated" type="xs:dateTime"/>
				<xs:element name="notes" type="xs:string"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="bold_records">
		<xs:annotation>
			<xs:documentation>List of records</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="record" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>

