<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- *****************************************************************************
	UniParc
	Version: 	$Revision: 1.2 $
	Date:		$Date: 2010/04/13 08:55:55 $
*******************************************************************************-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
 targetNamespace="http://uniprot.org/uniparc"  xmlns="http://uniprot.org/uniparc">
	<xs:element name="uniparc">
		<xs:complexType>
			<xs:sequence>
			        <xs:element ref="entry" minOccurs="0" maxOccurs="unbounded"/>
	                        <xs:element name="copyright"  type="xs:string"/>
	                 </xs:sequence>
			<xs:attribute name="checkpoint" type="xs:int" use="optional"/>
			<xs:attribute name="version" type="xs:string" use="optional"/>
		</xs:complexType>
	</xs:element>
	
	<xs:element name="entry">
		<xs:complexType>
			<xs:sequence>
			    <xs:element name="accession" type="xs:string" minOccurs="1" maxOccurs="1"/>
				<xs:element ref="dbReference" minOccurs="1" maxOccurs="unbounded"/>
				<xs:element ref="sequence" minOccurs="1" maxOccurs="1"/>
			</xs:sequence>
			<xs:attribute name="dataset" type="xs:string" use="required"/>
			<xs:attribute name="UniProtKB_exclusion" type="xs:string"/>
		</xs:complexType>
	</xs:element>
	
	<xs:element name="dbReference">
	    <xs:complexType>
	        <xs:sequence>
	            <xs:element ref="property" minOccurs="0" maxOccurs="unbounded"/>
	        </xs:sequence>
	        <xs:attribute name="type" type="xs:string" use="required"/>
	        <xs:attribute name="id" type="xs:string" use="required"/>
			<xs:attribute name="version_i" type="xs:int" use="required"/>
			<xs:attribute name="active" type="xs:string" use="required"/>
			<xs:attribute name="version" type="xs:int"/>
			<xs:attribute name="created" type="xs:date"/>
			<xs:attribute name="last" type="xs:date"/>
			<!-- Note: The following attribute will be implemented as properties.
			<xs:attribute name="chain" type="xs:string"/>
			<xs:attribute name="NCBI_GI" type="xs:string"/>
			<xs:attribute name="NCBI_taxonomy_id" type="xs:int"/>
			<xs:attribute name="UniProtKB_accession" type="xs:string"/>
			Note End -->
	    </xs:complexType>
	</xs:element>

	<xs:element name="sequence">
		 <xs:complexType mixed="true">
			<xs:attribute name="length" type="xs:int" use="required"/>
			<xs:attribute name="checksum" type="xs:string" use="required"/>
		 </xs:complexType>
	</xs:element>
	
	<xs:element name="property">
		<xs:complexType>
			<xs:attribute name="type" type="xs:string" use="required"/>
			<xs:attribute name="value" type="xs:string" use="required"/>
		</xs:complexType>
	</xs:element>
</xs:schema>
