<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2005 sp1 U (http://www.xmlspy.com) by Steve O'Hagan (The University of Manchester) -->
<!-- 
    SCHEMA: footprint.xsd
    AUTHOR: Irena Spasic
    LAST CHANGE: 11-02-2005
    DESCRIPTION: This document provides an XML schema for metabolomic footprinting.
-->
<xs:schema xmlns:PRC="http://www.procedure.com" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.procedure.com" elementFormDefault="unqualified" attributeFormDefault="unqualified">
	<xs:element name="procedure">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="block" maxOccurs="unbounded">
					<xs:complexType>
						<xs:sequence>
							<xs:element ref="PRC:step" maxOccurs="unbounded"/>
							<xs:element ref="PRC:comment" minOccurs="0"/>
						</xs:sequence>
						<xs:attribute name="name"/>
					</xs:complexType>
				</xs:element>
				<xs:element ref="PRC:comment" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="step">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="input" type="PRC:material" maxOccurs="unbounded"/>
				<xs:element name="action" maxOccurs="unbounded">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="operation" type="xs:string"/>
							<xs:element name="tool" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
							<xs:element ref="PRC:measure" minOccurs="0" maxOccurs="unbounded"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="output" type="PRC:material"/>
				<xs:element ref="PRC:comment" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="material">
		<xs:sequence>
			<xs:element name="name" type="xs:string"/>
			<xs:element name="volume" minOccurs="0">
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:double">
							<xs:attribute name="unit" type="xs:string"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element ref="PRC:ingredient" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<xs:attribute name="label" type="xs:string"/>
	</xs:complexType>
	<xs:element name="ingredient">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="name" type="xs:string"/>
				<xs:element name="volume" minOccurs="0">
					<xs:complexType>
						<xs:simpleContent>
							<xs:extension base="xs:double">
								<xs:attribute name="unit" type="xs:string"/>
							</xs:extension>
						</xs:simpleContent>
					</xs:complexType>
				</xs:element>
				<xs:element ref="PRC:ingredient" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="comment" type="xs:string">
		<xs:annotation>
			<xs:documentation>Additional comments.</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="concentration">
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="xs:double">
					<xs:attribute name="unit" type="xs:string"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="measure">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="name" type="xs:string"/>
				<xs:element name="value" minOccurs="0">
					<xs:complexType>
						<xs:simpleContent>
							<xs:extension base="xs:string">
								<xs:attribute name="unit" type="xs:string"/>
							</xs:extension>
						</xs:simpleContent>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>
