<?xml version="1.0" encoding="UTF-8"?>
<!-- First Line is the XML Declaration -->
<!-- W3C Schema Element Follows -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

	<xs:element name="header">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:enumeration value="Reading List for Bouton Jones"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	
	<xs:element name="book">
		<xs:complexType>
			<xs:sequence maxOccurs="unbounded">
				<xs:element ref="title"/>
				<xs:element ref="author"/>
				<xs:element ref="publisher"/>
				<xs:element ref="city"/>
				<xs:element ref="year"/>
				<xs:element ref="category"/>
				<xs:element ref="description"/>
				<xs:element ref="pages"/>
				<xs:element ref="wholesale"/>
				<xs:element ref="retail"/>
				<xs:element ref="isbn"/>
			</xs:sequence>
			<xs:attribute name="rating" use="required">
				<xs:simpleType>
					<xs:restriction base="xs:byte">
						<xs:enumeration value="1"/>
						<xs:enumeration value="2"/>
						<xs:enumeration value="3"/>
						<xs:enumeration value="4"/>
						<xs:enumeration value="5"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="binding" use="required">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="Paperback"/>
						<xs:enumeration value="Hardback"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
	
	<xs:element name="title" type="xs:string"/>
	
	<xs:element name="rootbooks">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="header"/>
				<xs:element ref="book" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	
	<xs:element name="author" type="xs:string"/>
	
	<xs:element name="publisher" type="xs:string"/>

	<xs:element name="city" type="xs:string"/>

	<!--
    <xs:element name="year" type="xs:gYear"/>
	-->
	<xs:element name="year">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:pattern value="[0-9]{4}"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>

	
	<xs:element name="category">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:enumeration value="Web Development"/>
				<xs:enumeration value="History"/>
				<xs:enumeration value="Fiction"/>
				<xs:enumeration value="Literature"/>
				<xs:enumeration value="Romance"/>
				<xs:enumeration value="True Crime"/>
				<xs:whiteSpace value="preserve"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	
	<xs:element name="description" type="xs:string"/>
	
	<!--
	<xs:element name="pages" type="xs:short"/>
	-->
	<xs:element name="pages">
		<xs:simpleType>
			<xs:restriction base="xs:integer">
				<xs:pattern value="[0-9][0-9][0-9]"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	
	<xs:element name="wholesale" type="xs:string"/>
	
	<!--
	<xs:element name="retail" type="xs:decimal"/>
	-->
	
	<xs:element name="retail">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:pattern value="[0-9][0-9].[0-9][0-9]"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>

	
	<xs:element name="isbn">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:pattern value="[0-1][0-9,X]{9}"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	
</xs:schema>
