<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2005 rel. 3 U (http://www.altova.com) by Andrew Jones (U Glasgow) -->
<!-- 
    Attention: Generated code! Do not modify by hand!
    Generated by: XmlSchema.vsl in andromda-xmlschema-cartridge.
  -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:fuge="http://fuge.org/core" targetNamespace="http://fuge.org/core" elementFormDefault="qualified">
	<xsd:complexType name="FuGE.Common.Protocol.ProtocolApplicationType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The use of a protocol with the requisite Parameters and
 ParameterValues. ProtocolApplications can take Material or Data
 (or both) as input and produce Material or Data (or both) as
 output.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Protocol.ParameterizableApplicationType">
				<xsd:sequence>
					<xsd:element name="outputData" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The data produced by a ProtocolApplication.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Data_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="inputData" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The input data for a ProtocolApplication.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Data_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="outputMaterials" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Association to the Material(s) created as output by this
 ProtocolApplication.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Material_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="inputMaterials" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Association from a ProtocolApplication to a measurement of the
 quantity of the source (input) Material(s) used.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:MaterialMeasurement" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="protocol">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The protocol that is being used.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Protocol_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="actionApplications" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Association to the ActionApplication steps that comprise this
 ProtocolApplication.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:ActionApplication" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="softwareApplications" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The use of software for the application of the protocol.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:SoftwareApplication" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="equipmentApplications" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The use of hardware for the application of the protocol.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:EquipmentApplication" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="protocolDeviation" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Used to define human readable notes for annotating deviations
 to the protocol on a Protocol-wide level, for example, if the
 order of execution of Actions was changed in some
 non-destructive manner.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:Description"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="performers" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The people or organizations who performed the protocol.
 ContactRole could be used to specify the part of the Protocol
 performed by a particular Contact.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:ContactRole" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				<xsd:attribute name="activityDate" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 When the protocol was applied.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Audit.SecurityType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Permission information for an object as to ownership, write and
 read permissions.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="owner" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The owner of the security rights on the object.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Contact_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="securityRights" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Specifies which security groups have permission to view the
 associated object.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:SecurityAccess" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Ontology.OntologyTermType" abstract="true">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A single entry from an ontology or a controlled vocabulary. If
 it is a simple controlled vocabulary, the ontologyURI and
 ontologyTermURI might be undefined and there would be an
 OntologyIndividual whose name was the property and who had a
 single DataProperty whose value was the value for the property.
 For instance, for an OntologyIndividual based on the MO
 ontology the attributes might be: The identifier is some unique
 identifier for individuals, possible a UUID, The name would be
 what is usually called the local name in the Ontology, for
 instance 'Age' The ontologyTermURI could be
 'http://mged.sourceforge.net/ontologies/MGEDOntology.owl#Age',
 The ontologyURI could be
 'http://mged.sourceforge.net/ontologies/MGEDOntology.owl". The
 OntologyTerm subclasses are instances of Ontology classes and
 properties, not the actual terms themselves. An
 OntologyIndividual, if based on an existing Ontology, can be
 considered a statement that can be validated against the
 referenced ontology. The subclasses and their associations are
 based on the Ontology Definition Model, ad/2005-04-13,
 submitted to the OMG as a response to RFP ad/2003-03-40,
 Copyright © 2005 DSTC Pty Ltd. Copyright © 2005 IBM Copyright ©
 2005 Sandpiper Software, Inc under the standard OMG license
 terms.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:attribute name="ontologyURI" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 An optional URI that can be resolved to the definition of an
 Ontology
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="ontologyTermURI" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 An optional URI that can be resolved to the definition of an
 Ontology Class or Property
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.FuGEType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The root container for accessing all objects.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="materialCollection" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The complete set of all Material objects in the FuGE document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:MaterialCollection"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="conceptualMoleculeCollection" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The complete set of ConceptualMolecules
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:ConceptualMoleculeCollection"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="referenceAbleCollection" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The complete set of BibliographicReferences and Databases.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:ReferenceableCollection"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="investigationCollection" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The collection of Investigation and Factor objects in the FuGE
 document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:InvestigationCollection"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="dataCollection" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The complete collection of all Data, Dimension and
 HigherLevelAnalysis objects.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:DataCollection"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="auditCollection" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The collection of Audit objects (Security, SecurityGroup and
 Contacts).
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:AuditCollection"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="protocolCollection" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The complete set of Protocol, Equipment, Software and
 ProtocolApplication objects in the FuGE document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:ProtocolCollection"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="ontologyCollection" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The complete set of OntologyIndividual objects in the FuGE
 document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:OntologyCollection"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Data.ExternalDataType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Data external to the XML instance document. The location of the
 data file is given in the association to the URI class.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Bio.Data.DataType">
				<xsd:sequence>
					<xsd:element name="fileFormat" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: </xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="externalFormatDocumentation" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 A URI to access documentation and tools to interpret the
 external format of the ExternalData instance. For example, XML
 Schema or static libraries (APIs) to access binary formats.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:URI"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.SoftwareType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Software represents the software used. Examples of Software
 include: feature extraction software, clustering software,
 etc...
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Protocol.ParameterizableType">
				<xsd:sequence>
					<xsd:element name="equipment" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Associates Equipment and Software together. Indicates that a
 set of Software run on a single piece of Equipment.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Equipment_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				<xsd:attribute name="version" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The version of software used.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.ConceptualMolecule.SequenceType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A Sequence is a representation of a DNA, RNA, or protein
 sequence.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Bio.ConceptualMolecule.ConceptualMoleculeType">
				<xsd:sequence>
					<xsd:element name="sequenceAnnotations" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Shared annotations for a set of sequences.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="SequenceAnnotation_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				<xsd:attribute name="length" type="xsd:int">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The number of residues in the biosequence.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="isApproximateLength" type="xsd:boolean">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 If length not positively known will be true
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="isCircular" type="xsd:boolean">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 Indicates if the BioSequence is circular in nature.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="sequence" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The actual components of the sequence, for instance, for DNA a
 string consisting of A,T,C and G. The attribute is optional and
 instead of specified here, can be found through the
 DatabaseEntry.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="start" type="xsd:int">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="end" type="xsd:int">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Investigation.FactorValueType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The value for a Factor
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="value" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Allows a value to be specified for a FactorValue using an
 ontology.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="dataPartitions" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Represents a segmentation of the data by indexing existing
 DimensionElements of a Data.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:DataPartition" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Audit.SecurityAccessType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A specification of the access right (e.g. read or write) that a
 specified group (SecurityGroup) has on a particular object.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="accessGroup">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The group of contacts that have the specified access right on
 an object.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="SecurityGroup_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="accessRight" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The type of AccessRight allowed on this object e.g. Read, Write
 etc.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Investigation.InvestigationType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 An Investigation is a self-contained unit of study that
 contains one or more types of 'omics technology.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="investigationComponents" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The association to the techniques that comprise the
 Investigation.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:InvestigationComponent" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="providers" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The providers of the Experiment, its data and annotation.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:ContactRole" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="summaryResults" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: </xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="HigherLevelAnalysis_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="investigationTypes" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The biological design type of the Investigation, such as
 toxicity, drug-response, gene knockout etc.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="sourceMaterials" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Investigationally important materials. These are typically a
 species or set of strains. This might also be a bucket of
 seawater or a pound of dirt. It is expected that these
 Materials are referenced by a ProtocolApplication.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Material_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Ontology.ObjectPropertyType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 An instance of an Ontology object property that restricts the
 parent individual to its child individual. So an Age individual
 may be restricted to an Individual unit of years.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Ontology.OntologyPropertyType">
				<xsd:sequence>
					<xsd:element name="content">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The instance(s) of the child Individual restriction on the
 Parent Individual
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.EquipmentApplicationType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The use of a piece of Equipment with the requisite Parameters
 and ParameterValues.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Protocol.ParameterizableApplicationType">
				<xsd:sequence>
					<xsd:element name="equipment">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The underlying hardware.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Equipment_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				<xsd:attribute name="serialNumber" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 Manufacturer's identifier for the Equipment.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.ParameterizableType" abstract="true">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The Parameterizable interface encapsulates the association of
 Parameters with ParameterValues.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="parameters" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The set of parameters for the Parameterizable class instance.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:Parameter" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="types" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The type of a Protocol, Equipment or Software. Examples of
 types include: RNA extraction, mass spectrometer, image
 analysis etc... Note that the type association can be used for
 annotating complex protocols with terms such as "assay" or
 "phase".
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="provider" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The provider of the Protocol, Equipment or Software.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:ContactRole" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.References.DatabaseEntryType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A reference to a record in a database.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="database">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Reference to the database where the DatabaseEntry instance can
 be found.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Database_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				<xsd:attribute name="accession" type="xsd:string" use="required">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The identifier used to look up the record.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="accessionVersion" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The appropriate version of the accession (if applicable).
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.ParameterValueType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The value of a Parameter.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="parameterType">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The parameter this value is for.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Parameter_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="value" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The value of the parameter. Will have the datatype of its
 associated Parameter.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Data.InternalDataType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Data that is internal to an instance XML document. The storage
 array will typically use pointer arithmatic to access values
 based on the rank (e.g. number of) Dimensions and their
 respective sizes (e.g. the number of contained
 DimensionElements).
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Bio.Data.DataType">
				<xsd:sequence>
					<xsd:element name="storage" type="xsd:anyType">
						<xsd:annotation>
							<xsd:documentation/>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Ontology.OntologyIndividualType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 An instance of an Ontology class.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Ontology.OntologyTermType">
				<xsd:sequence>
					<xsd:element name="properties" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 A list of properties associated with the Individual. If based
 on an external Ontology, the list should be able to be
 validated against that Ontology.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:OntologyProperty" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Material.MaterialType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Material represents any kind of substance used in an
 experimental workflow, such as whole organisms, cells, DNA,
 solutions, compounds and experimental substances (gels, arrays
 etc.). The Material class can be extended by adding subclasses
 to model domain specific properties or the relationships to
 OntologyIndividual can be used to describe the characteristics
 and type of Material. Materials can be related to other
 materials through a directed acyclic graph (represented by
 ProtocolApplication(s)). Sub-component materials can be
 represented by the self-association on Material (e.g. Wells
 within a array)
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="characteristics" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The characteristics of a Material.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="components" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Association from a Material to other Materials that are
 sub-components (such as wells within an array plate). If a
 subcomponent undergoes a ProtocolApplication, then the
 containing Material must also be an input to the
 ProtocolApplication and be output as a new Material or version
 of the Material.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Material_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="materialType" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The type of material used, i.e. RNA, DNA, lipid,
 phosphoprotein, organism etc.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="contacts" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Contact details for the Material. The association to
 ContactRole could specify, for example, the creator or provider
 of the Material.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:ContactRole" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="qualityControlStatistics" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Measures of the quality of the Material.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Collection.AuditCollectionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The collection of Audit objects (Security, SecurityGroup and
 Contacts).
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="securityCollection" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 Reference to the complete set of BibliographicReference objects
 in the FuGE document.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:Security" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="contacts" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 The complete set of Contacts.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:Contact" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="securityGroups" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 Reference to the complete set of SecurityGroup objects in the
 FuGE document.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:SecurityGroup" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Investigation.HigherLevelAnalysisType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A container for domain-specific analyses performed on data.
 Subclasses must be created for different domains.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="supportingData" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Association to the Data on which the HigherLevelAnalysis has
 been performed.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Data_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.IdentifiableType" abstract="true">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Other classes in the model can be specified as sub-classes,
 inheriting from Identifiable. Identifiable gives classes a
 unique identifier within the scope and a name that need not be
 unique. Identifiable also provides a mechanism for annotating
 objects with BibliographicReference(s) and DatabaseEntry(s).
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="databaseReferences" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 References to entries in databases.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:DatabaseEntry" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="bibliographicReferences" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 References to existing literature.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="BibliographicReference_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				<xsd:attribute name="identifier" type="xsd:string" use="required">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 An identifier is an unambiguous string that is unique within
 the scope (i.e. a document, a set of related documents, or a
 repository) of its use.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="name" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The potentially ambiguous common identifier.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Collection.MaterialCollectionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The complete set of all Material objects in the FuGE document.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="materials" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 The complete set of Materials.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:Material" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Collection.ConceptualMoleculeCollectionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The complete set of ConceptualMolecule objects and
 SequenceAnnotation objects.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="conceptualMolecules" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Reference to the complete set of ConceptualMolecule objects in
 the FuGE document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:ConceptualMolecule" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="sequenceAnnotations" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Reference to the complete set of SequenceAnnotation objects in
 the FuGE document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:SequenceAnnotation" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.SoftwareApplicationType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The use of a piece of software with the requisite Parameters
 and ParameterValues.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Protocol.ParameterizableApplicationType">
				<xsd:sequence>
					<xsd:element name="software">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The underlying software.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Software_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.ActionApplicationType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 ActionApplication mirrors the structure of Actions within
 Protocols. This allows ActionDeviations to be reported and it
 can reference sub-ProtocolApplications if they exist.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="action">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Association to the Action that is being performed as recorded
 by this ActionApplication.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Action_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="actionDeviation" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Used to define human readable notes for annotating deviations
 to an Action during the ActionApplication.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:Description"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="protocolApplicationReference" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Association to ProtocolApplication if a hierarchical Protocol
 has been defined representing the child step of the Protocol.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="ProtocolApplication_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Data.DimensionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A single dimension of a coordinate system. The DimensionElement
 class represents the discreet domain values represented in this
 dimension. A dimension with infinite domain values is not
 modeled here, for practical reasons.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="dimensionElements" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
          </xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:DimensionElement" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="dimensionType" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: </xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Material.MaterialMeasurementType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 MaterialMeasurement represents the quantity of a source
 Material used in a MaterialTreatment. The Measurement is
 represented using an ontology to allow complex specifications
 of measurements.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="measurement" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The value of the measured source of material.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="material">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Material that is being measured as the source for a
 ProtocolApplication.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Material_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Audit.PersonType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A person for which the attributes are self describing.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Audit.ContactType">
				<xsd:sequence>
					<xsd:element name="affiliations" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The organization a person belongs to.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Organization_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				<xsd:attribute name="lastName" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="firstName" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="midInitials" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Collection.InvestigationCollectionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The collection of Investigation and Factor objects in the FuGE
 document.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="investigations" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 The set of Investigations.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:Investigation" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="factorCollection" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 Reference to the complete set of Factor objects in the FuGE
 document.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:Factor" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.ParameterType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A Parameter is a replaceable value in a Parameterizable class.
 Examples of Parameters include: scanning wavelength, laser
 power, centrifuge speed, multiplicative errors, the number of
 input nodes to a SOM, and PCR temperatures.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="parameterType" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The type of data generated by the parameter i.e. Boolean,
 float, etc...
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="defaultValue" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The DefaultValue of a Parameter is to be assumed the proper
 value when a Parameterizable object has been applied. It may be
 over-ridden at the time the ParameterizableApplication is
 instantiated.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Audit.AuditType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Tracks information on the contact that creates or modifies an
 object.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="performer" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The contact for creating or changing the instance referred to
 by the Audit.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Contact_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				<xsd:attribute name="date" type="xsd:date" use="required">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The date of a change.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="action" use="required">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 Indicates whether an action is a creation, modification or a
 deletion.
</p>
						</xsd:documentation>
					</xsd:annotation>
					<xsd:simpleType>
						<xsd:restriction base="xsd:string">
							<xsd:enumeration value="creation"/>
							<xsd:enumeration value="modification"/>
							<xsd:enumeration value="deletion"/>
						</xsd:restriction>
					</xsd:simpleType>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.ActionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A Action is one step of a Protocol. Sets of ordered Actions
 define the Protocol.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="protocolReference" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 ProtocolReference,as the name implies, is a reference to an
 existing Protocol. It is used to tie together Protocols into
 complex procedures. For example a "cDNA synthesis" protocol may
 be broken down into two distinct phases, with the first and
 second round having distinct default values for common
 parameters, or defining different sets of parameters, etc.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Protocol_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="actionTerm" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Each Action may be associated with an OntologyTerm that defines
 that Action.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				<xsd:attribute name="actionOrdinal" type="xsd:int">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The order by which this Action should occur with respect to the
 Parent protocol. Note that two Actions with the same
 actionOrdinal are performed in parallel or the order is not
 important.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="actionText" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 Free text to describe this Action.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Investigation.FactorType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Factors are the dependent variables of an experiment (e.g.
 time, glucose concentration, ...). Note that Factors can be
 shared by multiple InvestigationComponents.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="factorValues" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The FactorValues for this Factor e.g. the time points in a time
 course.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:FactorValue" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="factorCategory" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The category of a Factor could be biological (time, [glucose])
 or methodological (differing cDNA preparation protocols).
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Collection.ProtocolCollectionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The complete set of Protocol, Equipment, Software and
 ProtocolApplication objects in the FuGE document.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="protocols" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 Reference to all Protocol objects in the FuGE document.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:Protocol" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="softwares" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 Reference to all Software objects in the FuGE document.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:Software" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="protocolApplications" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 Reference to the complete set of ProtocolApplication objects in
 the FuGE document.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:ProtocolApplication" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="equipment" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 Reference to all Equipment objects in the FuGE document.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:Equipment" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Audit.ContactType" abstract="true">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A contact is either a person or an organization.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:attribute name="address" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="phone" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="email" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="fax" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="tollFreePhone" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.References.BibliographicReferenceType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Represents bibliographic references, including the most common
 attributes. Note that because a BibliographicReference is
 Identifiable, a DatabaseEntry can also be specified.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:attribute name="authors" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="publication" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="publisher" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="editor" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="year" type="xsd:date">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="volume" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="issue" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="pages" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="title" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation/>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Data.DimensionElementType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A single point within a parent dimension.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType"/>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Data.DataType" abstract="true">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Data may have associations to the ProtocolApplication that
 created them. Data may be produced from a Material through the
 DataAcquisition or from another Data object through the
 DataTransformation. Examples of Data are gene expression
 measurements, or phenotypes associated with genetic
 manipulations. Data is abstract and must be subclassed in an
 appropriate domain (i.e. microarray or proteomic experiments).
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="dimension" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The dimensions contained within this Data object.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Dimension_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.ConceptualMolecule.ConceptualMoleculeType" abstract="true">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 An abstract class for describing biological molecules such as
 DNA and protein sequences or metabolites.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType"/>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Data.DataPartitionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Represents a segmentation of the data by indexing existing
 DimensionElements of a Data.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="dimensionElements" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The DimensionElements segmented by this DataPartition.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="DimensionElement_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Ontology.DataPropertyType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 An instance of an Ontology data property. So an individual of
 Age might be restricted to a value of 8.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Ontology.OntologyPropertyType">
				<xsd:attribute name="dataType" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 An optional data type attribute which should be either one of
 the CORBA Any types or one of the XML Schema simple types. If
 the Parent Individual is associated with a has_datatype
 property, instead of stating that property explicity, it could
 be used as the value of the datatype attribute, or the datatype
 can be provided as a hint to applications on how to store the
 value.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="value" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The value associated with the DataProperty instance.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Ontology.OntologyPropertyType" abstract="true">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Base class for instances of Ontology properties
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Ontology.OntologyTermType"/>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Audit.ContactRoleType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The role that a Contact plays in an organization. A Contact may
 have several Roles within scope, and as such, associations to
 ContactRole allow the use of a Contact in a certain manner.
 Examples might include a provider, or a data analyst.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="role">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The roles (lab equipment sales, contractor, etc.) the contact
 fills.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="contact">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 When a ContactRole is used, it specifies which Contact the role
 is associated with.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Contact_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Audit.OrganizationType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Organizations are entities like companies, universities,
 government agencies for which the attributes are self
 describing.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Audit.ContactType">
				<xsd:sequence>
					<xsd:element name="parent" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The containing organization (the university or business which a
 lab belongs to, etc.)
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Organization_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.ProtocolType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A Protocol is a parameterizable description of a method.
 ProtocolApplication is used to specify the ParameterValues of
 its Protocol's Parameters.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Protocol.ParameterizableType">
				<xsd:sequence>
					<xsd:element name="actions" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Each Protocol may be composed of a number of steps, each of
 which is represented by an Action.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:Action" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="equipment" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Hardware used by this protocol.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Equipment_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="software" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Software used by this Protocol.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Software_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="inputTypes" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The types of inputs this Protocol can take e.g. organisms,
 solutions, data formats etc.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="outputTypes" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The types of outputs produced by this Protocol e.g. organisms,
 solutions, data formats etc.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.NameValueTypeType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A tuple designed to store data, keyed by a name and type.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:attribute name="name" type="xsd:string">
			<xsd:annotation>
				<xsd:documentation>
					<p>
 The name of the key.
</p>
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="value" type="xsd:string">
			<xsd:annotation>
				<xsd:documentation>
					<p>
 The value of the name.
</p>
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
		<xsd:attribute name="type" type="xsd:string">
			<xsd:annotation>
				<xsd:documentation>
					<p>
 The type of the key.
</p>
				</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.EquipmentType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The equipment (hardware) used in this Protocol. Examples
 include: computers, scanners, wash stations etc...
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.Protocol.ParameterizableType">
				<xsd:sequence>
					<xsd:element name="softwares" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Associates Equipment and Software together. Indicates that a
 set of Software run on a single piece of Equipment.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Software_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="make" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: </xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="model" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: </xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Collection.ReferenceableCollectionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The collection of objects that allow external references.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="bibliographicReferences" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Reference to the complete set of BibliographicReference objects
 in the FuGE document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:BibliographicReference" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="databases" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Reference to the complete set of Database objects in the FuGE
 document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:Database" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Description.URIType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A URI is short for Uniform Resource Identifier. A URI is a
 compact sequence of characters that identifies an abstract or
 physical resource.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:attribute name="uri" type="xsd:string" use="required">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The Uniform Resource Indicator for this object.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Collection.DataCollectionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The complete collection of all Data, Dimension and
 HigherLevelAnalysis objects.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:sequence>
					<xsd:element name="dimensions" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Reference to the complete set of Dimension objects in the FuGE
 document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:Dimension" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="higherLevelAnalyses" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Reference to the complete set of HigherLevelAnalysis objects in
 the FuGE document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:HigherLevelAnalysis" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="data" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Reference to the complete set of Data objects in the FuGE
 document.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:Data" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Description.DescriptionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 A free text description of an object.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.DescribableType">
				<xsd:attribute name="text" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The description.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Protocol.ParameterizableApplicationType" abstract="true">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The interface that is the use of a Parameterizable class.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="parameterValues" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 The parameter values for this Parameterizable Application.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:ParameterValue" maxOccurs="unbounded"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.References.DatabaseType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 An address to a repository.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="contacts" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Information on the contacts for the database
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Contact_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				<xsd:attribute name="version" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The version for which a DatabaseReference applies.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
				<xsd:attribute name="URI" type="xsd:string">
					<xsd:annotation>
						<xsd:documentation>
							<p>
 The location of the Database.
</p>
						</xsd:documentation>
					</xsd:annotation>
				</xsd:attribute>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.Audit.SecurityGroupType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Groups contacts together based on their security privileges.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="members">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The members of the SecurityGroup.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Contact_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.ConceptualMolecule.SequenceAnnotationType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 This is used to annotate a set of sequences that share the same
 species, type and PolymerType.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="polymerType" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 A choice of protein, RNA, or DNA.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="type" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The type of Sequence, e.g. gene, exon, UniGene cluster,
 fragment, BAC, EST, etc.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="species" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The organism from which this sequence was obtained.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Collection.OntologyCollectionType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 The complete set of OntologyIndividual objects referenced in
 the FuGE document.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ontologyIndividuals" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 The complete set of OntologyIndividuals in the FuGE document.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:OntologyIndividual" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Bio.Investigation.InvestigationComponentType" abstract="false">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 An overview of the design using a single omics technique.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="fuge:FuGE.Common.IdentifiableType">
				<xsd:sequence>
					<xsd:element name="factors" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The description of the factors (TimeCourse, Dosage, etc.) that
 segment the Data. The aggregation of Factors is limited to a
 single Investigation.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Factor_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="replicateDescription" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Description of the replicate strategy of the
 InvestigationComponent.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:Description"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="qualityControlDescription" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Description of the quality control aspects of the
 InvestigationComponent.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:Description"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="normalizationDescription" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>
								<p>
 Description of the normalization strategy of the
 InvestigationComponent.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element ref="fuge:Description"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="componentDesignTypes" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 The design of the investigation with respect to a single
 technique (InvestigationComponent) e.g. dye swap.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="OntologyIndividual_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="allProtocolApplications" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Complete set of all ProtocolApplications for a given
 InvestigationComponent. This allows access to the complete set
 of Materials and Data for the component.
</p>
							</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="ProtocolApplication_ref" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="FuGE.Common.DescribableType" abstract="true">
		<xsd:annotation>
			<xsd:documentation>
				<p>
 Abstract class that allows subclasses to inherit associations
 that enable objects to be given a text description, additional
 annotations as Ontology entries, a URI, associations to Audit
 for tracking changes, and the association to Security for
 indicating permissions.
</p>
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="annotations" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Allows specification of additional ontology entries related to
 the instance being described that are not directly specified
 elsewhere.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="OntologyIndividual_ref" maxOccurs="unbounded">
							<xsd:complexType>
								<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="auditTrail" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 A list of Audit instances that track changes to the instance of
 Describable.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:Audit" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="descriptions" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 Free hand text descriptions.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:Description" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="security" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>This is a reference to an object (or its subclasses) of type: <p>
 Information on the security for the instance of the class.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Security_ref">
							<xsd:complexType>
								<xsd:attribute name="identifier_ref" type="xsd:string" use="required"/>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="uri" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 A URI associated with a Describable object.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:URI"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="propertySets" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>
						<p>
 Allows specification of name, value, type triples. Meant to
 primarily help in-house, pipeline processing of instances by
 providing a place for values that are not part of the
 specification proper.
</p>
					</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="fuge:NameValueType" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:element name="ProtocolApplication" type="fuge:FuGE.Common.Protocol.ProtocolApplicationType" abstract="false" substitutionGroup="fuge:ParameterizableApplication"/>
	<xsd:element name="Security" type="fuge:FuGE.Common.Audit.SecurityType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="OntologyTerm" type="fuge:FuGE.Common.Ontology.OntologyTermType" abstract="true" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="FuGE" type="fuge:FuGE.FuGEType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="ExternalData" type="fuge:FuGE.Bio.Data.ExternalDataType" abstract="false" substitutionGroup="fuge:Data"/>
	<xsd:element name="Software" type="fuge:FuGE.Common.Protocol.SoftwareType" abstract="false" substitutionGroup="fuge:Parameterizable"/>
	<xsd:element name="Sequence" type="fuge:FuGE.Bio.ConceptualMolecule.SequenceType" abstract="false" substitutionGroup="fuge:ConceptualMolecule"/>
	<xsd:element name="FactorValue" type="fuge:FuGE.Bio.Investigation.FactorValueType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="SecurityAccess" type="fuge:FuGE.Common.Audit.SecurityAccessType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="Investigation" type="fuge:FuGE.Bio.Investigation.InvestigationType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="ObjectProperty" type="fuge:FuGE.Common.Ontology.ObjectPropertyType" abstract="false" substitutionGroup="fuge:OntologyProperty"/>
	<xsd:element name="EquipmentApplication" type="fuge:FuGE.Common.Protocol.EquipmentApplicationType" abstract="false" substitutionGroup="fuge:ParameterizableApplication"/>
	<xsd:element name="Parameterizable" type="fuge:FuGE.Common.Protocol.ParameterizableType" abstract="true" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="DatabaseEntry" type="fuge:FuGE.Common.References.DatabaseEntryType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="ParameterValue" type="fuge:FuGE.Common.Protocol.ParameterValueType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="InternalData" type="fuge:FuGE.Bio.Data.InternalDataType" abstract="false" substitutionGroup="fuge:Data"/>
	<xsd:element name="OntologyIndividual" type="fuge:FuGE.Common.Ontology.OntologyIndividualType" abstract="false" substitutionGroup="fuge:OntologyTerm"/>
	<xsd:element name="Material" type="fuge:FuGE.Bio.Material.MaterialType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="AuditCollection" type="fuge:FuGE.Collection.AuditCollectionType" abstract="false"/>
	<xsd:element name="HigherLevelAnalysis" type="fuge:FuGE.Bio.Investigation.HigherLevelAnalysisType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="Identifiable" type="fuge:FuGE.Common.IdentifiableType" abstract="true" substitutionGroup="fuge:Describable"/>
	<xsd:element name="MaterialCollection" type="fuge:FuGE.Collection.MaterialCollectionType" abstract="false"/>
	<xsd:element name="ConceptualMoleculeCollection" type="fuge:FuGE.Collection.ConceptualMoleculeCollectionType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="SoftwareApplication" type="fuge:FuGE.Common.Protocol.SoftwareApplicationType" abstract="false" substitutionGroup="fuge:ParameterizableApplication"/>
	<xsd:element name="ActionApplication" type="fuge:FuGE.Common.Protocol.ActionApplicationType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="Dimension" type="fuge:FuGE.Bio.Data.DimensionType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="MaterialMeasurement" type="fuge:FuGE.Bio.Material.MaterialMeasurementType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="Person" type="fuge:FuGE.Common.Audit.PersonType" abstract="false" substitutionGroup="fuge:Contact"/>
	<xsd:element name="InvestigationCollection" type="fuge:FuGE.Collection.InvestigationCollectionType" abstract="false"/>
	<xsd:element name="Parameter" type="fuge:FuGE.Common.Protocol.ParameterType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="Audit" type="fuge:FuGE.Common.Audit.AuditType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="Action" type="fuge:FuGE.Common.Protocol.ActionType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="Factor" type="fuge:FuGE.Bio.Investigation.FactorType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="ProtocolCollection" type="fuge:FuGE.Collection.ProtocolCollectionType" abstract="false"/>
	<xsd:element name="Contact" type="fuge:FuGE.Common.Audit.ContactType" abstract="true" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="BibliographicReference" type="fuge:FuGE.Common.References.BibliographicReferenceType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="DimensionElement" type="fuge:FuGE.Bio.Data.DimensionElementType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="Data" type="fuge:FuGE.Bio.Data.DataType" abstract="true" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="ConceptualMolecule" type="fuge:FuGE.Bio.ConceptualMolecule.ConceptualMoleculeType" abstract="true" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="DataPartition" type="fuge:FuGE.Bio.Data.DataPartitionType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="DataProperty" type="fuge:FuGE.Common.Ontology.DataPropertyType" abstract="false" substitutionGroup="fuge:OntologyProperty"/>
	<xsd:element name="OntologyProperty" type="fuge:FuGE.Common.Ontology.OntologyPropertyType" abstract="true" substitutionGroup="fuge:OntologyTerm"/>
	<xsd:element name="ContactRole" type="fuge:FuGE.Common.Audit.ContactRoleType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="Organization" type="fuge:FuGE.Common.Audit.OrganizationType" abstract="false" substitutionGroup="fuge:Contact"/>
	<xsd:element name="Protocol" type="fuge:FuGE.Common.Protocol.ProtocolType" abstract="false" substitutionGroup="fuge:Parameterizable"/>
	<xsd:element name="NameValueType" type="fuge:FuGE.Common.NameValueTypeType" abstract="false"/>
	<xsd:element name="Equipment" type="fuge:FuGE.Common.Protocol.EquipmentType" abstract="false" substitutionGroup="fuge:Parameterizable"/>
	<xsd:element name="ReferenceableCollection" type="fuge:FuGE.Collection.ReferenceableCollectionType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="URI" type="fuge:FuGE.Common.Description.URIType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="DataCollection" type="fuge:FuGE.Collection.DataCollectionType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="Description" type="fuge:FuGE.Common.Description.DescriptionType" abstract="false" substitutionGroup="fuge:Describable"/>
	<xsd:element name="ParameterizableApplication" type="fuge:FuGE.Common.Protocol.ParameterizableApplicationType" abstract="true" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="Database" type="fuge:FuGE.Common.References.DatabaseType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="SecurityGroup" type="fuge:FuGE.Common.Audit.SecurityGroupType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="SequenceAnnotation" type="fuge:FuGE.Bio.ConceptualMolecule.SequenceAnnotationType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="OntologyCollection" type="fuge:FuGE.Collection.OntologyCollectionType" abstract="false"/>
	<xsd:element name="InvestigationComponent" type="fuge:FuGE.Bio.Investigation.InvestigationComponentType" abstract="false" substitutionGroup="fuge:Identifiable"/>
	<xsd:element name="Describable" type="fuge:FuGE.Common.DescribableType" abstract="true"/>
</xsd:schema>
