plugin/conf/xsd/pride.xsd

Code
Comments
Other
Rev Date Author Line
3008 17 Dec 08 olle 1 <?xml version="1.0"?>
3008 17 Dec 08 olle 2 <!-- edited with XMLSpy v2006 sp2 U (http://www.altova.com) by Philip Jones (EMBL Outstation) -->
3008 17 Dec 08 olle 3 <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
3008 17 Dec 08 olle 4   <xsd:element name="ExperimentCollection">
3008 17 Dec 08 olle 5     <xsd:annotation>
3008 17 Dec 08 olle 6       <xsd:documentation>The ExperimentCollection acts as a holder for any number of Experiments.  Allows multiple Experiments to be returned when requested by a search as one XML file.</xsd:documentation>
3008 17 Dec 08 olle 7     </xsd:annotation>
3008 17 Dec 08 olle 8     <xsd:complexType>
3008 17 Dec 08 olle 9       <xsd:complexContent>
3008 17 Dec 08 olle 10         <xsd:extension base="ProjectList">
3008 17 Dec 08 olle 11           <xsd:attribute name="version" type="xsd:string" use="required" fixed="2.1">
3008 17 Dec 08 olle 12             <xsd:annotation>
3008 17 Dec 08 olle 13               <xsd:documentation>The development version of this PRIDE schema.</xsd:documentation>
3008 17 Dec 08 olle 14             </xsd:annotation>
3008 17 Dec 08 olle 15           </xsd:attribute>
3008 17 Dec 08 olle 16         </xsd:extension>
3008 17 Dec 08 olle 17       </xsd:complexContent>
3008 17 Dec 08 olle 18     </xsd:complexType>
3008 17 Dec 08 olle 19   </xsd:element>
3008 17 Dec 08 olle 20   <xsd:complexType name="ProjectList">
3008 17 Dec 08 olle 21     <xsd:sequence>
3008 17 Dec 08 olle 22       <xsd:element name="Experiment" type="ExperimentType" maxOccurs="unbounded">
3008 17 Dec 08 olle 23         <xsd:annotation>
3008 17 Dec 08 olle 24           <xsd:documentation>An experiment encapsulates the peak lists (implemented using MzData) and identifications that form a single experiment submission to PRIDE.</xsd:documentation>
3008 17 Dec 08 olle 25         </xsd:annotation>
3008 17 Dec 08 olle 26       </xsd:element>
3008 17 Dec 08 olle 27     </xsd:sequence>
3008 17 Dec 08 olle 28   </xsd:complexType>
3008 17 Dec 08 olle 29   <xsd:complexType name="ExperimentType">
3008 17 Dec 08 olle 30     <xsd:sequence>
3008 17 Dec 08 olle 31       <xsd:element name="ExperimentAccession" type="xsd:string" minOccurs="0">
3008 17 Dec 08 olle 32         <xsd:annotation>
3008 17 Dec 08 olle 33           <xsd:documentation>The ExperimentAccession element definition; (String).  This value provides the unique identification for the experiment in PRIDE. It is not expected that this value would be provided by the submitter, but would be returned to the submitter on successful completion of their submission. </xsd:documentation>
3008 17 Dec 08 olle 34         </xsd:annotation>
3008 17 Dec 08 olle 35       </xsd:element>
3008 17 Dec 08 olle 36       <xsd:element name="Title" type="xsd:string">
3008 17 Dec 08 olle 37         <xsd:annotation>
3008 17 Dec 08 olle 38           <xsd:documentation>The Title element definition; (String). This value is not a unique key (see ExperimentAccession above). Mandatory, free text.</xsd:documentation>
3008 17 Dec 08 olle 39         </xsd:annotation>
3008 17 Dec 08 olle 40       </xsd:element>
3008 17 Dec 08 olle 41       <xsd:element name="Reference" type="ReferenceType" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 42         <xsd:annotation>
3008 17 Dec 08 olle 43           <xsd:documentation>These elements holds links to any literature citations for which this experiment provides supporting evidence.</xsd:documentation>
3008 17 Dec 08 olle 44         </xsd:annotation>
3008 17 Dec 08 olle 45       </xsd:element>
3008 17 Dec 08 olle 46       <xsd:element name="ShortLabel" type="xsd:string">
3008 17 Dec 08 olle 47         <xsd:annotation>
3008 17 Dec 08 olle 48           <xsd:documentation>The mandatory ShortLabel element definition; (String). This value is not a unique key (see ExperimentAccession above).</xsd:documentation>
3008 17 Dec 08 olle 49         </xsd:annotation>
3008 17 Dec 08 olle 50       </xsd:element>
3008 17 Dec 08 olle 51       <xsd:element name="Protocol">
3008 17 Dec 08 olle 52         <xsd:annotation>
3008 17 Dec 08 olle 53           <xsd:documentation>The protocol element defines the sample processing steps that have been performed.</xsd:documentation>
3008 17 Dec 08 olle 54         </xsd:annotation>
3008 17 Dec 08 olle 55         <xsd:complexType>
3008 17 Dec 08 olle 56           <xsd:sequence>
3008 17 Dec 08 olle 57             <xsd:element name="ProtocolName">
3008 17 Dec 08 olle 58               <xsd:annotation>
3008 17 Dec 08 olle 59                 <xsd:documentation>A descriptive name for the protocol</xsd:documentation>
3008 17 Dec 08 olle 60               </xsd:annotation>
3008 17 Dec 08 olle 61                             <xsd:simpleType>
3008 17 Dec 08 olle 62                               <xsd:restriction base="xsd:string">
3008 17 Dec 08 olle 63                                 <xsd:minLength value="1"/>
3008 17 Dec 08 olle 64                               </xsd:restriction>
3008 17 Dec 08 olle 65                             </xsd:simpleType>
3008 17 Dec 08 olle 66                         </xsd:element>
3008 17 Dec 08 olle 67             <xsd:element name="ProtocolSteps" minOccurs="0">
3008 17 Dec 08 olle 68               <xsd:annotation>
3008 17 Dec 08 olle 69                 <xsd:documentation>Contains an ordered sequence of stepDescription elements that define this protocol.  The order of the stepDescription elements indicates the chronological order of steps in the protocol.</xsd:documentation>
3008 17 Dec 08 olle 70               </xsd:annotation>
3008 17 Dec 08 olle 71               <xsd:complexType>
3008 17 Dec 08 olle 72                 <xsd:sequence>
3008 17 Dec 08 olle 73                   <xsd:element name="StepDescription" type="paramType" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 74                     <xsd:annotation>
3008 17 Dec 08 olle 75                       <xsd:documentation>Expansible description of the step in the protocol.</xsd:documentation>
3008 17 Dec 08 olle 76                     </xsd:annotation>
3008 17 Dec 08 olle 77                   </xsd:element>
3008 17 Dec 08 olle 78                 </xsd:sequence>
3008 17 Dec 08 olle 79               </xsd:complexType>
3008 17 Dec 08 olle 80             </xsd:element>
3008 17 Dec 08 olle 81           </xsd:sequence>
3008 17 Dec 08 olle 82         </xsd:complexType>
3008 17 Dec 08 olle 83       </xsd:element>
3008 17 Dec 08 olle 84       <xsd:element name="mzData">
3008 17 Dec 08 olle 85         <xsd:annotation>
3008 17 Dec 08 olle 86           <xsd:documentation>This schema can capture the use of a mass spectrometer, the data generated, and the initial processing of that data (to the level of the peak list). Peak lists are processed data from a mass spectrometry experiment. There can be multiple peak lists in an mzData file, which might be related via a separation, or  just in sequence from an automated run. Any one peak list (mass spectrum) may also be composed of a number of acquisitions, which can be described individually herein.  NOTE: This mzData element is modified from the PSI mzData schema in one respect:  the spectrumList element is not mandatory.</xsd:documentation>
3008 17 Dec 08 olle 87         </xsd:annotation>
3008 17 Dec 08 olle 88         <xsd:complexType>
3008 17 Dec 08 olle 89           <xsd:sequence>
3008 17 Dec 08 olle 90             <xsd:element name="cvLookup" type="cvLookupType" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 91               <xsd:annotation>
3008 17 Dec 08 olle 92                 <xsd:documentation>This stores the location, name, version and a short, arbitrarily assigned in-file reference label, for one or more controlled vocabulary sources. Short labels are for use elsewhere in the data file, primarily in the cvLabel attribute, to indicate the use of a particular source for an item of controlled vocabulary.</xsd:documentation>
3008 17 Dec 08 olle 93               </xsd:annotation>
3008 17 Dec 08 olle 94             </xsd:element>
3008 17 Dec 08 olle 95             <xsd:element name="description">
3008 17 Dec 08 olle 96               <xsd:annotation>
3008 17 Dec 08 olle 97                 <xsd:documentation>Each data set starts with a description section. This section captures 'general' information; such as the instrument on which the data were generated.</xsd:documentation>
3008 17 Dec 08 olle 98               </xsd:annotation>
3008 17 Dec 08 olle 99               <xsd:complexType>
3008 17 Dec 08 olle 100                 <xsd:sequence>
3008 17 Dec 08 olle 101                   <xsd:element name="admin" type="adminType">
3008 17 Dec 08 olle 102                     <xsd:annotation>
3008 17 Dec 08 olle 103                       <xsd:documentation>Administrative information pertaining to the entire mzData file (i.e. not specific to any part of the data set) is stored here.</xsd:documentation>
3008 17 Dec 08 olle 104                     </xsd:annotation>
3008 17 Dec 08 olle 105                   </xsd:element>
3008 17 Dec 08 olle 106                   <xsd:element name="instrument" type="instrumentDescriptionType">
3008 17 Dec 08 olle 107                     <xsd:annotation>
3008 17 Dec 08 olle 108                       <xsd:documentation>Instrument descripton (not 'run time' parameters, which should properly be captured in spectrumInstrument); these features must be common to all acquisitions.</xsd:documentation>
3008 17 Dec 08 olle 109                     </xsd:annotation>
3008 17 Dec 08 olle 110                   </xsd:element>
3008 17 Dec 08 olle 111                   <xsd:element name="dataProcessing" type="dataProcessingType">
3008 17 Dec 08 olle 112                     <xsd:annotation>
3008 17 Dec 08 olle 113                       <xsd:documentation>Description of the default processing by which the peak list(s) were generated.</xsd:documentation>
3008 17 Dec 08 olle 114                     </xsd:annotation>
3008 17 Dec 08 olle 115                   </xsd:element>
3008 17 Dec 08 olle 116                 </xsd:sequence>
3008 17 Dec 08 olle 117               </xsd:complexType>
3008 17 Dec 08 olle 118             </xsd:element>
3008 17 Dec 08 olle 119             <xsd:element name="spectrumList">
3008 17 Dec 08 olle 120               <xsd:annotation>
3008 17 Dec 08 olle 121                 <xsd:documentation>All mass spectra and the acquisitions underlying them are described and attached here. Subsidiary data arrays are also both described and attached here.</xsd:documentation>
3008 17 Dec 08 olle 122               </xsd:annotation>
3008 17 Dec 08 olle 123               <xsd:complexType>
3008 17 Dec 08 olle 124                 <xsd:sequence>
3008 17 Dec 08 olle 125                   <xsd:element name="spectrum" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 126                     <xsd:annotation>
3008 17 Dec 08 olle 127                       <xsd:documentation>MODIFIED FROM THE ORIGINAL MZDATA SCHEMA - Allowed to be zero of these elements in PRIDE.  This is an individual spectrum.The spectrum is considered to be composed of an array of acquisitions. There are two primary ways of representing data; base64 encoded binary (single or double precision) or arrays of simple data types. All arrays used to describe a single spectrum are the same length, with the same indexing.</xsd:documentation>
3008 17 Dec 08 olle 128                     </xsd:annotation>
3008 17 Dec 08 olle 129                     <xsd:complexType>
3008 17 Dec 08 olle 130                       <xsd:complexContent>
3008 17 Dec 08 olle 131                         <xsd:extension base="spectrumType"/>
3008 17 Dec 08 olle 132                       </xsd:complexContent>
3008 17 Dec 08 olle 133                     </xsd:complexType>
3008 17 Dec 08 olle 134                   </xsd:element>
3008 17 Dec 08 olle 135                 </xsd:sequence>
3008 17 Dec 08 olle 136                 <xsd:attribute name="count" type="xsd:int" use="required">
3008 17 Dec 08 olle 137                   <xsd:annotation>
3008 17 Dec 08 olle 138                     <xsd:documentation>The number of spectra that are to be found in PRIDE.  Note: users may retrieve PRIDE data without including all the spectra, however the count is still given.</xsd:documentation>
3008 17 Dec 08 olle 139                   </xsd:annotation>
3008 17 Dec 08 olle 140                 </xsd:attribute>
3008 17 Dec 08 olle 141               </xsd:complexType>
3008 17 Dec 08 olle 142             </xsd:element>
3008 17 Dec 08 olle 143           </xsd:sequence>
3008 17 Dec 08 olle 144           <xsd:attribute name="version" type="xsd:string" use="required" fixed="1.05">
3008 17 Dec 08 olle 145             <xsd:annotation>
3008 17 Dec 08 olle 146               <xsd:documentation>The development version of this mzData schema.</xsd:documentation>
3008 17 Dec 08 olle 147             </xsd:annotation>
3008 17 Dec 08 olle 148           </xsd:attribute>
3008 17 Dec 08 olle 149           <xsd:attribute name="accessionNumber" type="xsd:string" use="required">
3008 17 Dec 08 olle 150             <xsd:annotation>
3008 17 Dec 08 olle 151               <xsd:documentation>The accession number assigned arbitrarily to a particular mzData instance (i.e. data) file, by the generator of that file. This accession number is intended to serve as a (locally) unique reference by which to identify a particular mzData instance file, and is not intended to be related to any other accession number, such as that for a particular entry in a reference database such as Uniprot, or the element sampleName under the admin branch of mzData.</xsd:documentation>
3008 17 Dec 08 olle 152             </xsd:annotation>
3008 17 Dec 08 olle 153           </xsd:attribute>
3008 17 Dec 08 olle 154         </xsd:complexType>
3008 17 Dec 08 olle 155       </xsd:element>
3008 17 Dec 08 olle 156       <xsd:element name="GelFreeIdentification" type="GelFreeIdentificationType" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 157         <xsd:annotation>
3008 17 Dec 08 olle 158           <xsd:documentation>The GelFreeIdentification element (complex) is a concrete implementation of the abstract IdentificationType element, used to hold details of identifications that have arisen from techniques other than gel eletrophoresis, for example LC-MS/MS. </xsd:documentation>
3008 17 Dec 08 olle 159         </xsd:annotation>
3008 17 Dec 08 olle 160       </xsd:element>
3008 17 Dec 08 olle 161       <xsd:element name="TwoDimensionalIdentification" type="TwoDimensionalIdentificationType" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 162         <xsd:annotation>
3008 17 Dec 08 olle 163           <xsd:documentation>This is a concrete implementation of the abstract Identification element.  This is used to represent identifications based upon 2D Gel Electrophoresis.  Details of the gel, location of the spot, pI and molecular weight are included in this identification element.</xsd:documentation>
3008 17 Dec 08 olle 164         </xsd:annotation>
3008 17 Dec 08 olle 165       </xsd:element>
3008 17 Dec 08 olle 166       <xsd:element name="additional" type="paramType" minOccurs="0">
3008 17 Dec 08 olle 167         <xsd:annotation>
3008 17 Dec 08 olle 168           <xsd:documentation>Subsidiary information about the experiment; a run of additional parameters  captured as name-value pairs</xsd:documentation>
3008 17 Dec 08 olle 169         </xsd:annotation>
3008 17 Dec 08 olle 170       </xsd:element>
3008 17 Dec 08 olle 171     </xsd:sequence>
3008 17 Dec 08 olle 172   </xsd:complexType>
3008 17 Dec 08 olle 173   <xsd:complexType name="IdentificationType" abstract="true">
3008 17 Dec 08 olle 174     <xsd:annotation>
3008 17 Dec 08 olle 175       <xsd:documentation>The abstract Identification element definition; this is a complex type! Also note the different Collections!  There are extended elements based on this one, please see below.</xsd:documentation>
3008 17 Dec 08 olle 176     </xsd:annotation>
3008 17 Dec 08 olle 177     <xsd:sequence>
3008 17 Dec 08 olle 178       <xsd:element name="Accession" type="xsd:string">
3008 17 Dec 08 olle 179         <xsd:annotation>
3008 17 Dec 08 olle 180           <xsd:documentation>The database accession number for the protein.  Note this value must be in conjunction with an appropriate AccessionVersion value (Version of the database) and Database value to unequivocally identify the protein.</xsd:documentation>
3008 17 Dec 08 olle 181         </xsd:annotation>
3008 17 Dec 08 olle 182       </xsd:element>
3008 17 Dec 08 olle 183       <xsd:element name="AccessionVersion" type="xsd:string" minOccurs="0">
3008 17 Dec 08 olle 184         <xsd:annotation>
3008 17 Dec 08 olle 185           <xsd:documentation>The optional version number (String) of the protein.</xsd:documentation>
3008 17 Dec 08 olle 186         </xsd:annotation>
3008 17 Dec 08 olle 187       </xsd:element>
3008 17 Dec 08 olle 188       <xsd:element name="SpliceIsoform" type="xsd:string" minOccurs="0">
3008 17 Dec 08 olle 189         <xsd:annotation>
3008 17 Dec 08 olle 190           <xsd:documentation>An optional identification of the splice isoform (String) of the protein identified.</xsd:documentation>
3008 17 Dec 08 olle 191         </xsd:annotation>
3008 17 Dec 08 olle 192       </xsd:element>
3008 17 Dec 08 olle 193       <xsd:element name="Database" type="xsd:string">
3008 17 Dec 08 olle 194         <xsd:annotation>
3008 17 Dec 08 olle 195           <xsd:documentation>The Name of the Protein Database that this accession number references.</xsd:documentation>
3008 17 Dec 08 olle 196         </xsd:annotation>
3008 17 Dec 08 olle 197       </xsd:element>
3008 17 Dec 08 olle 198       <xsd:element name="DatabaseVersion" type="xsd:string" minOccurs="0">
3008 17 Dec 08 olle 199         <xsd:annotation>
3008 17 Dec 08 olle 200           <xsd:documentation>Optional version number / string for the database searched.</xsd:documentation>
3008 17 Dec 08 olle 201         </xsd:annotation>
3008 17 Dec 08 olle 202       </xsd:element>
3008 17 Dec 08 olle 203       <xsd:element name="PeptideItem" type="Peptide" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 204         <xsd:annotation>
3008 17 Dec 08 olle 205           <xsd:documentation>The collection of peptides that were identified to arrive at this protein identification.  TODO: Note - in this iteration it is therefore mandatory to have identified a protein in order to include a peptide identification.  This clearly limits the ability of PRIDE to hold peptidomics data and therefore may need to be modified.</xsd:documentation>
3008 17 Dec 08 olle 206         </xsd:annotation>
3008 17 Dec 08 olle 207       </xsd:element>
3008 17 Dec 08 olle 208       <xsd:element name="SpectrumReference" type="xsd:nonNegativeInteger" minOccurs="0">
3008 17 Dec 08 olle 209         <xsd:annotation>
3008 17 Dec 08 olle 210           <xsd:documentation>The SpectrumReference (Non-negative Integer) cross references to the id attribute of the Spectrum element that contains the spectra used for this identification.</xsd:documentation>
3008 17 Dec 08 olle 211         </xsd:annotation>
3008 17 Dec 08 olle 212       </xsd:element>
3008 17 Dec 08 olle 213       <xsd:element name="additional" type="paramType" minOccurs="0">
3008 17 Dec 08 olle 214         <xsd:annotation>
3008 17 Dec 08 olle 215           <xsd:documentation>Subsidiary information about the identification; a run of additional parameters  captured as name-value pairs</xsd:documentation>
3008 17 Dec 08 olle 216         </xsd:annotation>
3008 17 Dec 08 olle 217       </xsd:element>
3008 17 Dec 08 olle 218       <xsd:element name="Score" type="xsd:double" minOccurs="0">
3008 17 Dec 08 olle 219         <xsd:annotation>
3008 17 Dec 08 olle 220           <xsd:documentation>The optional score element (double) is used for the score from the search engine used for this identification.  This needs to be interpreted in relation to the contents of the SearchEngine element.</xsd:documentation>
3008 17 Dec 08 olle 221         </xsd:annotation>
3008 17 Dec 08 olle 222       </xsd:element>
3008 17 Dec 08 olle 223       <xsd:element name="Threshold" type="xsd:double" minOccurs="0">
3008 17 Dec 08 olle 224         <xsd:annotation>
3008 17 Dec 08 olle 225           <xsd:documentation>The optional threshold element (double) needs to be interpreted in relation to the contents of the SearchEngine element.</xsd:documentation>
3008 17 Dec 08 olle 226         </xsd:annotation>
3008 17 Dec 08 olle 227       </xsd:element>
3008 17 Dec 08 olle 228       <xsd:element name="SearchEngine" type="xsd:string" minOccurs="0">
3008 17 Dec 08 olle 229         <xsd:annotation>
3008 17 Dec 08 olle 230           <xsd:documentation>The SearchEngine element (String) holds a reference to the search engine used for this identification.</xsd:documentation>
3008 17 Dec 08 olle 231         </xsd:annotation>
3008 17 Dec 08 olle 232       </xsd:element>
3008 17 Dec 08 olle 233       <xsd:element name="SequenceCoverage" type="Coverage" minOccurs="0">
3008 17 Dec 08 olle 234         <xsd:annotation>
3008 17 Dec 08 olle 235           <xsd:documentation>This element describes the sequence coverage achieved for this identification.</xsd:documentation>
3008 17 Dec 08 olle 236         </xsd:annotation>
3008 17 Dec 08 olle 237       </xsd:element>      
3008 17 Dec 08 olle 238     </xsd:sequence>
3008 17 Dec 08 olle 239   </xsd:complexType>
3008 17 Dec 08 olle 240   <xsd:complexType name="ReferenceType">
3008 17 Dec 08 olle 241     <xsd:annotation>
3008 17 Dec 08 olle 242       <xsd:documentation>The ReferenceType element (abstract) provides an implementation of a simple link to n journal publications for which this experiment provides supporting evidence.</xsd:documentation>
3008 17 Dec 08 olle 243     </xsd:annotation>
3008 17 Dec 08 olle 244     <xsd:sequence>
3008 17 Dec 08 olle 245       <xsd:element name="RefLine" type="xsd:string">
3008 17 Dec 08 olle 246         <xsd:annotation>
3008 17 Dec 08 olle 247           <xsd:documentation>The RefLine element (String) is a simple imlpementation of the literature article link, which should just contain the reference line for any supported articles.  If more information is desired (and as PRIDE develops further) the ability to add additional information in a structured format has been added below.</xsd:documentation>
3008 17 Dec 08 olle 248         </xsd:annotation>
3008 17 Dec 08 olle 249       </xsd:element>
3008 17 Dec 08 olle 250       <xsd:element name="additional" type="paramType" minOccurs="0">
3008 17 Dec 08 olle 251         <xsd:annotation>
3008 17 Dec 08 olle 252           <xsd:documentation>Subsidiary information about the reference; a run of additional parameters  captured as name-value pairs</xsd:documentation>
3008 17 Dec 08 olle 253         </xsd:annotation>
3008 17 Dec 08 olle 254       </xsd:element>
3008 17 Dec 08 olle 255     </xsd:sequence>
3008 17 Dec 08 olle 256   </xsd:complexType>
3008 17 Dec 08 olle 257   <!-- The Peptide element definition; complex type again, note the presence of a Modification collection -->
3008 17 Dec 08 olle 258   <xsd:complexType name="Peptide">
3008 17 Dec 08 olle 259     <xsd:annotation>
3008 17 Dec 08 olle 260       <xsd:documentation>The Peptide element (complex) holds details of each peptide that has been used to arrive at the identification above.  In a future version of PRIDE it should be possible to include peptides that have not been linked to a protein.</xsd:documentation>
3008 17 Dec 08 olle 261     </xsd:annotation>
3008 17 Dec 08 olle 262     <xsd:sequence>
3008 17 Dec 08 olle 263       <xsd:element name="Sequence" type="xsd:string">
3008 17 Dec 08 olle 264         <xsd:annotation>
3008 17 Dec 08 olle 265           <xsd:documentation>The sequence element (String) holds the expected sequence of the peptide identification.</xsd:documentation>
3008 17 Dec 08 olle 266         </xsd:annotation>
3008 17 Dec 08 olle 267       </xsd:element>
3008 17 Dec 08 olle 268       <xsd:element name="Start" type="xsd:nonNegativeInteger" minOccurs="0">
3008 17 Dec 08 olle 269         <xsd:annotation>
3008 17 Dec 08 olle 270           <xsd:documentation>The Start element (Non-negative integer) holds the start position of the peptide in relation to the identified protein that this peptide has been used to identifiy.</xsd:documentation>
3008 17 Dec 08 olle 271         </xsd:annotation>
3008 17 Dec 08 olle 272       </xsd:element>
3008 17 Dec 08 olle 273       <xsd:element name="End" type="xsd:nonNegativeInteger" minOccurs="0">
3008 17 Dec 08 olle 274         <xsd:annotation>
3008 17 Dec 08 olle 275           <xsd:documentation>The End element (Non-negative integer) holds the end position of the peptide in relation to the identified protein that this peptide has been used to identifiy.</xsd:documentation>
3008 17 Dec 08 olle 276         </xsd:annotation>
3008 17 Dec 08 olle 277       </xsd:element>
3008 17 Dec 08 olle 278       <xsd:element name="SpectrumReference" type="xsd:nonNegativeInteger" minOccurs="0">
3008 17 Dec 08 olle 279         <xsd:annotation>
3008 17 Dec 08 olle 280           <xsd:documentation>The SpectrumReference (Non-negative Integer) cross references to the id attribute of the Spectrum element that contains the spectra used for this identification.</xsd:documentation>
3008 17 Dec 08 olle 281         </xsd:annotation>
3008 17 Dec 08 olle 282       </xsd:element>
3008 17 Dec 08 olle 283       <xsd:element name="ModificationItem" type="Modification" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 284         <xsd:annotation>
3008 17 Dec 08 olle 285           <xsd:documentation>The ModificationItem is the parent element (complex) that holds details of post transalational modifications.  Any number of PTMs may be associated with a peptide.</xsd:documentation>
3008 17 Dec 08 olle 286         </xsd:annotation>
3008 17 Dec 08 olle 287       </xsd:element>
3008 17 Dec 08 olle 288       <xsd:element name="FragmentIon" type="FragmentIonType" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 289         <xsd:annotation>
3008 17 Dec 08 olle 290           <xsd:documentation>The Peptide element (complex) holds details of each peptide that has been used to arrive at the identification above.  In a future version of PRIDE it should be possible to include peptides that have not been linked to a protein.</xsd:documentation>
3008 17 Dec 08 olle 291         </xsd:annotation>
3008 17 Dec 08 olle 292       </xsd:element>
3008 17 Dec 08 olle 293       <xsd:element name="additional" type="paramType" minOccurs="0">
3008 17 Dec 08 olle 294         <xsd:annotation>
3008 17 Dec 08 olle 295           <xsd:documentation>Subsidiary information about the peptide; a run of additional parameters  captured as name-value pairs</xsd:documentation>
3008 17 Dec 08 olle 296         </xsd:annotation>
3008 17 Dec 08 olle 297       </xsd:element>
3008 17 Dec 08 olle 298     </xsd:sequence>
3008 17 Dec 08 olle 299   </xsd:complexType>
3008 17 Dec 08 olle 300   
3008 17 Dec 08 olle 301   <!-- The fragment ion type used in Peptide -->
3008 17 Dec 08 olle 302   <xsd:complexType name="FragmentIonType">
3008 17 Dec 08 olle 303     <xsd:annotation>
3008 17 Dec 08 olle 304       <xsd:documentation>A placeholder for fragment ion parameters.</xsd:documentation>
3008 17 Dec 08 olle 305     </xsd:annotation>
3008 17 Dec 08 olle 306     <xsd:complexContent>
3008 17 Dec 08 olle 307       <xsd:extension base="paramType"/>
3008 17 Dec 08 olle 308     </xsd:complexContent>
3008 17 Dec 08 olle 309   </xsd:complexType>  
3008 17 Dec 08 olle 310   
3008 17 Dec 08 olle 311   
3008 17 Dec 08 olle 312   <!-- The Start element definition; it is just a positive int -->
3008 17 Dec 08 olle 313   <xsd:complexType name="Modification">
3008 17 Dec 08 olle 314     <xsd:annotation>
3008 17 Dec 08 olle 315       <xsd:documentation>The Modification element definition; complex type again, NOTE the fact that it cannot have a generated marshaller/unmarshaller for its data storage/reading! </xsd:documentation>
3008 17 Dec 08 olle 316     </xsd:annotation>
3008 17 Dec 08 olle 317     <xsd:sequence>
3008 17 Dec 08 olle 318       <xsd:element name="ModLocation" type="xsd:nonNegativeInteger" minOccurs="0">
3008 17 Dec 08 olle 319         <xsd:annotation>
3008 17 Dec 08 olle 320           <xsd:documentation>The ModLocation element (Non-negative integer) indicates the position of the PTM in the peptide (parent element).</xsd:documentation>
3008 17 Dec 08 olle 321         </xsd:annotation>
3008 17 Dec 08 olle 322       </xsd:element>
3008 17 Dec 08 olle 323       <xsd:element name="ModAccession">
3008 17 Dec 08 olle 324         <xsd:annotation>
3008 17 Dec 08 olle 325           <xsd:documentation>The ModAccessionelement definition (String) holds the accession number from the relevant post-translational modification database as indicated by in the ModDatabase element.</xsd:documentation>
3008 17 Dec 08 olle 326         </xsd:annotation>
3008 17 Dec 08 olle 327                 <xsd:simpleType>
3008 17 Dec 08 olle 328                   <xsd:restriction base="xsd:string">
3008 17 Dec 08 olle 329                     <xsd:minLength value="1"/>
3008 17 Dec 08 olle 330                   </xsd:restriction>
3008 17 Dec 08 olle 331                 </xsd:simpleType>                                
3008 17 Dec 08 olle 332             </xsd:element>
3008 17 Dec 08 olle 333       <xsd:element name="ModDatabase" type="xsd:string">
3008 17 Dec 08 olle 334         <xsd:annotation>
3008 17 Dec 08 olle 335           <xsd:documentation>The ModDatabase element definition (String) holds the name of the post-translational modification database used for this PTM.</xsd:documentation>
3008 17 Dec 08 olle 336         </xsd:annotation>
3008 17 Dec 08 olle 337       </xsd:element>
3008 17 Dec 08 olle 338       <xsd:element name="ModDatabaseVersion" type="xsd:string" minOccurs="0">
3008 17 Dec 08 olle 339         <xsd:annotation>
3008 17 Dec 08 olle 340           <xsd:documentation>The ModDatabaseVersion element definition (String) holds version information about the post-translational modification database (if relevant).</xsd:documentation>
3008 17 Dec 08 olle 341         </xsd:annotation>
3008 17 Dec 08 olle 342       </xsd:element>
3008 17 Dec 08 olle 343       <xsd:element name="ModMonoDelta" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 344         <xsd:annotation>
3008 17 Dec 08 olle 345           <xsd:documentation>Any number of ModMonoDelta (String) values can be held as evidence for the post translational modification held in the parent element.</xsd:documentation>
3008 17 Dec 08 olle 346         </xsd:annotation>
3008 17 Dec 08 olle 347       </xsd:element>
3008 17 Dec 08 olle 348       <!-- The ModAvgDelta element definition; it is just a String -->
3008 17 Dec 08 olle 349       <xsd:element name="ModAvgDelta" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 350         <xsd:annotation>
3008 17 Dec 08 olle 351           <xsd:documentation>Any number of ModAvgDelta (String) values can be held as evidence for the post translational modification held in the parent element.</xsd:documentation>
3008 17 Dec 08 olle 352         </xsd:annotation>
3008 17 Dec 08 olle 353       </xsd:element>
3008 17 Dec 08 olle 354       <xsd:element name="additional" type="paramType" minOccurs="0">
3008 17 Dec 08 olle 355         <xsd:annotation>
3008 17 Dec 08 olle 356           <xsd:documentation>Subsidiary information about the post translational modification; a run of additional parameters  captured as name-value pairs</xsd:documentation>
3008 17 Dec 08 olle 357         </xsd:annotation>
3008 17 Dec 08 olle 358       </xsd:element>
3008 17 Dec 08 olle 359       <!-- Note that these elements are not represented 'as is' in the UML diagram
3008 17 Dec 08 olle 360                      (in fact, the mapping is to a Java HashMap, with residues as keys and a double[]
3008 17 Dec 08 olle 361                       for the monoisotopic and average mass delta values, respectively).
3008 17 Dec 08 olle 362                      They are programmatically extracted and their form should be something
3008 17 Dec 08 olle 363                      like 'Xyyy.yy' where 'X' is the single-letter code for the affected residue
3008 17 Dec 08 olle 364                      and 'yyy.yy' is the effective mass difference the modification causes for this
3008 17 Dec 08 olle 365                      residue. -->
3008 17 Dec 08 olle 366     </xsd:sequence>
3008 17 Dec 08 olle 367   </xsd:complexType>
3008 17 Dec 08 olle 368   <xsd:complexType name="SimpleReference">
3008 17 Dec 08 olle 369     <xsd:annotation>
3008 17 Dec 08 olle 370       <xsd:documentation>This is a concrete implementation of the abstract ReferenceType element and provides a very simple implementation of a link to any literature citations.</xsd:documentation>
3008 17 Dec 08 olle 371     </xsd:annotation>
3008 17 Dec 08 olle 372     <xsd:complexContent>
3008 17 Dec 08 olle 373       <xsd:extension base="ReferenceType"/>
3008 17 Dec 08 olle 374     </xsd:complexContent>
3008 17 Dec 08 olle 375   </xsd:complexType>
3008 17 Dec 08 olle 376   <!-- The TwoDimensionalIdentification extension element of the Identification type -->
3008 17 Dec 08 olle 377   <xsd:complexType name="TwoDimensionalIdentificationType">
3008 17 Dec 08 olle 378     <xsd:annotation>
3008 17 Dec 08 olle 379       <xsd:documentation>This is a concrete implementation of the abstract Identification element.  This is used to represent identifications based upon 2D Gel Electrophoresis.  Details of the gel, location of the spot, pI and molecular weight are included in this identification element.</xsd:documentation>
3008 17 Dec 08 olle 380     </xsd:annotation>
3008 17 Dec 08 olle 381     <xsd:complexContent>
3008 17 Dec 08 olle 382       <xsd:extension base="IdentificationType">
3008 17 Dec 08 olle 383         <xsd:sequence>
3008 17 Dec 08 olle 384           <xsd:element name="Gel" type="SimpleGel" minOccurs="0">
3008 17 Dec 08 olle 385             <xsd:annotation>
3008 17 Dec 08 olle 386               <xsd:documentation>The GelType (abstract) element provides a basis for describing the kind of gel used for this identication.</xsd:documentation>
3008 17 Dec 08 olle 387             </xsd:annotation>
3008 17 Dec 08 olle 388           </xsd:element>
3008 17 Dec 08 olle 389           <xsd:element name="GelLocation" type="Point" minOccurs="0">
3008 17 Dec 08 olle 390             <xsd:annotation>
3008 17 Dec 08 olle 391               <xsd:documentation>This element indicates the absolute position of the spot on the 2D gel.  (CLARIFY - Rf value?)</xsd:documentation>
3008 17 Dec 08 olle 392             </xsd:annotation>
3008 17 Dec 08 olle 393           </xsd:element>
3008 17 Dec 08 olle 394           <xsd:element name="MolecularWeight" type="xsd:double" minOccurs="0">
3008 17 Dec 08 olle 395             <xsd:annotation>
3008 17 Dec 08 olle 396               <xsd:documentation>Records the Molecular Weight (double) as estimated from the migration of the spot on the second dimention of the 2D gel.</xsd:documentation>
3008 17 Dec 08 olle 397             </xsd:annotation>
3008 17 Dec 08 olle 398           </xsd:element>
3008 17 Dec 08 olle 399           <xsd:element name="pI" type="xsd:double" minOccurs="0">
3008 17 Dec 08 olle 400             <xsd:annotation>
3008 17 Dec 08 olle 401               <xsd:documentation>Records the pI (double) as estimated from the migration of the spot on the first dimention of the 2D gel.</xsd:documentation>
3008 17 Dec 08 olle 402             </xsd:annotation>
3008 17 Dec 08 olle 403           </xsd:element>
3008 17 Dec 08 olle 404         </xsd:sequence>
3008 17 Dec 08 olle 405       </xsd:extension>
3008 17 Dec 08 olle 406     </xsd:complexContent>
3008 17 Dec 08 olle 407   </xsd:complexType>
3008 17 Dec 08 olle 408   <!-- The Gel element; this is not even a type yet (only an interface, implementations follow)!
3008 17 Dec 08 olle 409              There are extended elements based on this one, please see below. -->
3008 17 Dec 08 olle 410   <xsd:complexType name="GelType" abstract="true">
3008 17 Dec 08 olle 411     <xsd:annotation>
3008 17 Dec 08 olle 412       <xsd:documentation>The GelType (abstract) element provides a basis for describing the kind of gel used for this identication.</xsd:documentation>
3008 17 Dec 08 olle 413     </xsd:annotation>
3008 17 Dec 08 olle 414     <xsd:sequence>
3008 17 Dec 08 olle 415       <xsd:element name="GelLink" type="xsd:string">
3008 17 Dec 08 olle 416         <xsd:annotation>
3008 17 Dec 08 olle 417           <xsd:documentation>This element provides a link (should this be a URI rather than a string?) to an image of the gel.</xsd:documentation>
3008 17 Dec 08 olle 418         </xsd:annotation>
3008 17 Dec 08 olle 419       </xsd:element>
3008 17 Dec 08 olle 420       <xsd:element name="additional" type="paramType" minOccurs="0">
3008 17 Dec 08 olle 421         <xsd:annotation>
3008 17 Dec 08 olle 422           <xsd:documentation>Subsidiary information about the gel; a run of additional parameters  captured as name-value pairs</xsd:documentation>
3008 17 Dec 08 olle 423         </xsd:annotation>
3008 17 Dec 08 olle 424       </xsd:element>
3008 17 Dec 08 olle 425     </xsd:sequence>
3008 17 Dec 08 olle 426   </xsd:complexType>
3008 17 Dec 08 olle 427   <xsd:complexType name="Point">
3008 17 Dec 08 olle 428     <xsd:annotation>
3008 17 Dec 08 olle 429       <xsd:documentation>Defines a coordinate system for describing the position of a spot on a gel.</xsd:documentation>
3008 17 Dec 08 olle 430     </xsd:annotation>
3008 17 Dec 08 olle 431     <xsd:sequence>
3008 17 Dec 08 olle 432       <xsd:element name="XCoordinate" type="xsd:double">
3008 17 Dec 08 olle 433         <xsd:annotation>
3008 17 Dec 08 olle 434           <xsd:documentation>Defines the X coordinate (Double) (i.e. relative to the first dimension of the gel)</xsd:documentation>
3008 17 Dec 08 olle 435         </xsd:annotation>
3008 17 Dec 08 olle 436       </xsd:element>
3008 17 Dec 08 olle 437       <xsd:element name="YCoordinate" type="xsd:double">
3008 17 Dec 08 olle 438         <xsd:annotation>
3008 17 Dec 08 olle 439           <xsd:documentation>Defines the Y coordinate (Double) (i.e. relative to the second dimension of the gel)</xsd:documentation>
3008 17 Dec 08 olle 440         </xsd:annotation>
3008 17 Dec 08 olle 441       </xsd:element>
3008 17 Dec 08 olle 442     </xsd:sequence>
3008 17 Dec 08 olle 443   </xsd:complexType>
3008 17 Dec 08 olle 444   <!-- The MolecularWeight element; it is just a double -->
3008 17 Dec 08 olle 445   <!-- The pI element; it is just a double -->
3008 17 Dec 08 olle 446   <xsd:simpleType name="Coverage">
3008 17 Dec 08 olle 447     <xsd:annotation>
3008 17 Dec 08 olle 448       <xsd:documentation>The Coverage element; it is just a constrained double (between (0.0-1.0), both inclusive) used to indicate the total sequence coverage of the identified protein.</xsd:documentation>
3008 17 Dec 08 olle 449     </xsd:annotation>
3008 17 Dec 08 olle 450     <xsd:restriction base="xsd:double">
3008 17 Dec 08 olle 451       <xsd:minInclusive value="0.0"/>
3008 17 Dec 08 olle 452       <xsd:maxInclusive value="1.0"/>
3008 17 Dec 08 olle 453     </xsd:restriction>
3008 17 Dec 08 olle 454   </xsd:simpleType>
3008 17 Dec 08 olle 455   <!-- The GelFreeIdentification extension element of the Identification type -->
3008 17 Dec 08 olle 456   <xsd:complexType name="GelFreeIdentificationType">
3008 17 Dec 08 olle 457     <xsd:annotation>
3008 17 Dec 08 olle 458       <xsd:documentation>The GelFreeIdentification element (complex) is a concrete implementation of the abstract IdentificationType element, used to hold details of identifications that have arisen from techniques other than gel eletrophoresis, for example LC-MS/MS.</xsd:documentation>
3008 17 Dec 08 olle 459     </xsd:annotation>
3008 17 Dec 08 olle 460     <xsd:complexContent>
3008 17 Dec 08 olle 461       <xsd:extension base="IdentificationType"/>
3008 17 Dec 08 olle 462     </xsd:complexContent>
3008 17 Dec 08 olle 463   </xsd:complexType>
3008 17 Dec 08 olle 464   <!-- The SimpleGel extension element of the Gel type -->
3008 17 Dec 08 olle 465   <xsd:complexType name="SimpleGel">
3008 17 Dec 08 olle 466     <xsd:annotation>
3008 17 Dec 08 olle 467       <xsd:documentation>The SimpleGel element (complex) extends the GelType element to provide a concrete implementation of gel, holding a reference to a gel image (if available).</xsd:documentation>
3008 17 Dec 08 olle 468     </xsd:annotation>
3008 17 Dec 08 olle 469     <xsd:complexContent>
3008 17 Dec 08 olle 470       <xsd:extension base="GelType"/>
3008 17 Dec 08 olle 471     </xsd:complexContent>
3008 17 Dec 08 olle 472   </xsd:complexType>
3008 17 Dec 08 olle 473   <xsd:complexType name="sourceFileType">
3008 17 Dec 08 olle 474     <xsd:annotation>
3008 17 Dec 08 olle 475       <xsd:documentation>Description of the source file, including location and type.</xsd:documentation>
3008 17 Dec 08 olle 476     </xsd:annotation>
3008 17 Dec 08 olle 477     <xsd:sequence>
3008 17 Dec 08 olle 478       <xsd:element name="nameOfFile" type="xsd:string">
3008 17 Dec 08 olle 479         <xsd:annotation>
3008 17 Dec 08 olle 480           <xsd:documentation>Name of the source file, without reference to location (either URI or local path).</xsd:documentation>
3008 17 Dec 08 olle 481         </xsd:annotation>
3008 17 Dec 08 olle 482       </xsd:element>
3008 17 Dec 08 olle 483       <xsd:element name="pathToFile" type="xsd:anyURI">
3008 17 Dec 08 olle 484         <xsd:annotation>
3008 17 Dec 08 olle 485           <xsd:documentation>URI-formatted full path to file, without actual file name appended.</xsd:documentation>
3008 17 Dec 08 olle 486         </xsd:annotation>
3008 17 Dec 08 olle 487       </xsd:element>
3008 17 Dec 08 olle 488       <xsd:element name="fileType" type="xsd:string" minOccurs="0">
3008 17 Dec 08 olle 489         <xsd:annotation>
3008 17 Dec 08 olle 490           <xsd:documentation>Type of the file if appropriate, else a description of the software or reference resource used.</xsd:documentation>
3008 17 Dec 08 olle 491         </xsd:annotation>
3008 17 Dec 08 olle 492       </xsd:element>
3008 17 Dec 08 olle 493     </xsd:sequence>
3008 17 Dec 08 olle 494   </xsd:complexType>
3008 17 Dec 08 olle 495   <xsd:complexType name="supDataType">
3008 17 Dec 08 olle 496     <xsd:annotation>
3008 17 Dec 08 olle 497       <xsd:documentation>Data type for additional data vectors (beyond m/z and intensity).</xsd:documentation>
3008 17 Dec 08 olle 498     </xsd:annotation>
3008 17 Dec 08 olle 499     <xsd:sequence>
3008 17 Dec 08 olle 500       <xsd:element name="arrayName" type="xsd:string">
3008 17 Dec 08 olle 501         <xsd:annotation>
3008 17 Dec 08 olle 502           <xsd:documentation>Name of the supplemental data array.</xsd:documentation>
3008 17 Dec 08 olle 503         </xsd:annotation>
3008 17 Dec 08 olle 504       </xsd:element>
3008 17 Dec 08 olle 505       <xsd:choice>
3008 17 Dec 08 olle 506         <xsd:element name="float" type="xsd:float" maxOccurs="unbounded"/>
3008 17 Dec 08 olle 507         <xsd:element name="double" type="xsd:double" maxOccurs="unbounded"/>
3008 17 Dec 08 olle 508         <xsd:element name="int" type="xsd:int" maxOccurs="unbounded"/>
3008 17 Dec 08 olle 509         <xsd:element name="boolean" type="xsd:boolean" maxOccurs="unbounded"/>
3008 17 Dec 08 olle 510         <xsd:element name="string" type="xsd:string" maxOccurs="unbounded"/>
3008 17 Dec 08 olle 511         <xsd:element name="time" type="xsd:float" maxOccurs="unbounded"/>
3008 17 Dec 08 olle 512         <xsd:element name="URI" type="xsd:anyURI" maxOccurs="unbounded"/>
3008 17 Dec 08 olle 513       </xsd:choice>
3008 17 Dec 08 olle 514     </xsd:sequence>
3008 17 Dec 08 olle 515     <xsd:attribute name="id" type="xsd:int" use="required">
3008 17 Dec 08 olle 516       <xsd:annotation>
3008 17 Dec 08 olle 517         <xsd:documentation>The value to which the supDataArrayRef attribute on suppDesc refers; values should never be shared between binary and non-binary supplemental arrays.</xsd:documentation>
3008 17 Dec 08 olle 518       </xsd:annotation>
3008 17 Dec 08 olle 519     </xsd:attribute>
3008 17 Dec 08 olle 520     <xsd:attribute name="length" type="xsd:int" use="required">
3008 17 Dec 08 olle 521       <xsd:annotation>
3008 17 Dec 08 olle 522         <xsd:documentation>Number of items in the supDataArray.</xsd:documentation>
3008 17 Dec 08 olle 523       </xsd:annotation>
3008 17 Dec 08 olle 524     </xsd:attribute>
3008 17 Dec 08 olle 525     <xsd:attribute name="indexed" type="xsd:boolean" use="required">
3008 17 Dec 08 olle 526       <xsd:annotation>
3008 17 Dec 08 olle 527         <xsd:documentation>Each supDataArray can either be related to the mzArray or not.If the elements are related to the mzArray then this flag is set to 1.</xsd:documentation>
3008 17 Dec 08 olle 528       </xsd:annotation>
3008 17 Dec 08 olle 529     </xsd:attribute>
3008 17 Dec 08 olle 530     <xsd:attribute name="offset" type="xsd:int" use="optional" default="0">
3008 17 Dec 08 olle 531       <xsd:annotation>
3008 17 Dec 08 olle 532         <xsd:documentation>If the indexed flag is set, then this value gives the element count (starting from 1) in the mzArray which aligns with the first element in this supDataArray.</xsd:documentation>
3008 17 Dec 08 olle 533       </xsd:annotation>
3008 17 Dec 08 olle 534     </xsd:attribute>
3008 17 Dec 08 olle 535   </xsd:complexType>
3008 17 Dec 08 olle 536   <xsd:complexType name="cvLookupType">
3008 17 Dec 08 olle 537     <xsd:annotation>
3008 17 Dec 08 olle 538       <xsd:documentation>Information about an ontology/CV source and a short 'lookup' tag to
3008 17 Dec 08 olle 539                 refer to.</xsd:documentation>
3008 17 Dec 08 olle 540     </xsd:annotation>
3008 17 Dec 08 olle 541     <xsd:attribute name="cvLabel" type="xsd:string" use="required">
3008 17 Dec 08 olle 542       <xsd:annotation>
3008 17 Dec 08 olle 543         <xsd:documentation>The short label to be used as a reference tag with which to refer to this particulart Controlled Vocabulary source description, from an instance of the cvLabel attribute, where it appears (i.e. in things of type paramType).</xsd:documentation>
3008 17 Dec 08 olle 544       </xsd:annotation>
3008 17 Dec 08 olle 545     </xsd:attribute>
3008 17 Dec 08 olle 546     <xsd:attribute name="fullName" type="xsd:string" use="optional">
3008 17 Dec 08 olle 547       <xsd:annotation>
3008 17 Dec 08 olle 548         <xsd:documentation>The usual name for the resource (e.g. The MGED Ontology).</xsd:documentation>
3008 17 Dec 08 olle 549       </xsd:annotation>
3008 17 Dec 08 olle 550     </xsd:attribute>
3008 17 Dec 08 olle 551     <xsd:attribute name="version" type="xsd:string" use="required">
3008 17 Dec 08 olle 552       <xsd:annotation>
3008 17 Dec 08 olle 553         <xsd:documentation>The version of the CV from which the referred-to terms are drawn.</xsd:documentation>
3008 17 Dec 08 olle 554       </xsd:annotation>
3008 17 Dec 08 olle 555     </xsd:attribute>
3008 17 Dec 08 olle 556     <xsd:attribute name="address" type="xsd:anyURI" use="required">
3008 17 Dec 08 olle 557       <xsd:annotation>
3008 17 Dec 08 olle 558         <xsd:documentation>The URI for the resource.</xsd:documentation>
3008 17 Dec 08 olle 559       </xsd:annotation>
3008 17 Dec 08 olle 560     </xsd:attribute>
3008 17 Dec 08 olle 561   </xsd:complexType>
3008 17 Dec 08 olle 562   <xsd:complexType name="cvParamType">
3008 17 Dec 08 olle 563     <xsd:annotation>
3008 17 Dec 08 olle 564       <xsd:documentation>Parameters from a controlled vocbulary.</xsd:documentation>
3008 17 Dec 08 olle 565     </xsd:annotation>
3008 17 Dec 08 olle 566     <xsd:attribute name="cvLabel" type="xsd:string" use="required">
3008 17 Dec 08 olle 567       <xsd:annotation>
3008 17 Dec 08 olle 568         <xsd:documentation>The short tag for the resource as defined in cvLookupType.</xsd:documentation>
3008 17 Dec 08 olle 569       </xsd:annotation>
3008 17 Dec 08 olle 570     </xsd:attribute>
3008 17 Dec 08 olle 571     <xsd:attribute name="accession" type="xsd:string" use="required">
3008 17 Dec 08 olle 572       <xsd:annotation>
3008 17 Dec 08 olle 573         <xsd:documentation>The accession number of the referred-to term in the named resource.</xsd:documentation>
3008 17 Dec 08 olle 574       </xsd:annotation>
3008 17 Dec 08 olle 575     </xsd:attribute>
3008 17 Dec 08 olle 576     <xsd:attribute name="name" type="xsd:string" use="required">
3008 17 Dec 08 olle 577       <xsd:annotation>
3008 17 Dec 08 olle 578         <xsd:documentation>The actual name for the parameter, from the referred-to controlled vocabulary.</xsd:documentation>
3008 17 Dec 08 olle 579       </xsd:annotation>
3008 17 Dec 08 olle 580     </xsd:attribute>
3008 17 Dec 08 olle 581     <xsd:attribute name="value" type="xsd:string" use="optional">
3008 17 Dec 08 olle 582       <xsd:annotation>
3008 17 Dec 08 olle 583         <xsd:documentation>The value for the parameter; may be absent if not appropriate, or a numeric or symbolic value, or may itself be CV (legal values for a parameter should be enumerated and defined in the ontology).</xsd:documentation>
3008 17 Dec 08 olle 584       </xsd:annotation>
3008 17 Dec 08 olle 585     </xsd:attribute>
3008 17 Dec 08 olle 586   </xsd:complexType>
3008 17 Dec 08 olle 587   <xsd:complexType name="personType">
3008 17 Dec 08 olle 588     <xsd:annotation>
3008 17 Dec 08 olle 589       <xsd:documentation>Data type for operator identification information.</xsd:documentation>
3008 17 Dec 08 olle 590     </xsd:annotation>
3008 17 Dec 08 olle 591     <xsd:sequence>
3008 17 Dec 08 olle 592       <xsd:element name="name" type="xsd:string">
3008 17 Dec 08 olle 593         <xsd:annotation>
3008 17 Dec 08 olle 594           <xsd:documentation>Contact person name, or role name (e.g. "Group leader of team 42") of the individual responsible for this dataset.</xsd:documentation>
3008 17 Dec 08 olle 595         </xsd:annotation>
3008 17 Dec 08 olle 596       </xsd:element>
3008 17 Dec 08 olle 597       <xsd:element name="institution" type="xsd:string">
3008 17 Dec 08 olle 598         <xsd:annotation>
3008 17 Dec 08 olle 599           <xsd:documentation>Academic or corporate organisation with which the contact person or role is associated.</xsd:documentation>
3008 17 Dec 08 olle 600         </xsd:annotation>
3008 17 Dec 08 olle 601       </xsd:element>
3008 17 Dec 08 olle 602       <xsd:element name="contactInfo" type="xsd:string" minOccurs="0">
3008 17 Dec 08 olle 603         <xsd:annotation>
3008 17 Dec 08 olle 604           <xsd:documentation>Phone number, email, postal address or other appropriate means of contact.</xsd:documentation>
3008 17 Dec 08 olle 605         </xsd:annotation>
3008 17 Dec 08 olle 606       </xsd:element>
3008 17 Dec 08 olle 607     </xsd:sequence>
3008 17 Dec 08 olle 608   </xsd:complexType>
3008 17 Dec 08 olle 609   <xsd:complexType name="softwareType">
3008 17 Dec 08 olle 610     <xsd:annotation>
3008 17 Dec 08 olle 611       <xsd:documentation>Software information (the software that produced the peak list).</xsd:documentation>
3008 17 Dec 08 olle 612     </xsd:annotation>
3008 17 Dec 08 olle 613     <xsd:sequence>
3008 17 Dec 08 olle 614       <xsd:element name="name" type="xsd:string">
3008 17 Dec 08 olle 615         <xsd:annotation>
3008 17 Dec 08 olle 616           <xsd:documentation>The official name for the software package used.</xsd:documentation>
3008 17 Dec 08 olle 617         </xsd:annotation>
3008 17 Dec 08 olle 618       </xsd:element>
3008 17 Dec 08 olle 619       <xsd:element name="version" type="xsd:string">
3008 17 Dec 08 olle 620         <xsd:annotation>
3008 17 Dec 08 olle 621           <xsd:documentation>The version number of the software package.</xsd:documentation>
3008 17 Dec 08 olle 622         </xsd:annotation>
3008 17 Dec 08 olle 623       </xsd:element>
3008 17 Dec 08 olle 624       <xsd:element name="comments" type="xsd:string" minOccurs="0">
3008 17 Dec 08 olle 625         <xsd:annotation>
3008 17 Dec 08 olle 626           <xsd:documentation>Additional comments on the use of the software.</xsd:documentation>
3008 17 Dec 08 olle 627         </xsd:annotation>
3008 17 Dec 08 olle 628       </xsd:element>
3008 17 Dec 08 olle 629     </xsd:sequence>
3008 17 Dec 08 olle 630     <xsd:attribute name="completionTime" type="xsd:dateTime" use="optional">
3008 17 Dec 08 olle 631       <xsd:annotation>
3008 17 Dec 08 olle 632         <xsd:documentation>The time to complete the processing that resulted in this mzData file, if the mzData file was generated in a single use of the software (i.e. if the software was not used with more than one parameter set, not whether the job was completed in several phases).</xsd:documentation>
3008 17 Dec 08 olle 633       </xsd:annotation>
3008 17 Dec 08 olle 634     </xsd:attribute>
3008 17 Dec 08 olle 635   </xsd:complexType>
3008 17 Dec 08 olle 636   <xsd:complexType name="dataProcessingType">
3008 17 Dec 08 olle 637     <xsd:annotation>
3008 17 Dec 08 olle 638       <xsd:documentation>Description of the software, and the way in which it was used to generate the peak list.</xsd:documentation>
3008 17 Dec 08 olle 639     </xsd:annotation>
3008 17 Dec 08 olle 640     <xsd:sequence>
3008 17 Dec 08 olle 641       <xsd:element name="software">
3008 17 Dec 08 olle 642         <xsd:annotation>
3008 17 Dec 08 olle 643           <xsd:documentation>Specific information on the conversion or processing software.</xsd:documentation>
3008 17 Dec 08 olle 644         </xsd:annotation>
3008 17 Dec 08 olle 645         <xsd:complexType>
3008 17 Dec 08 olle 646           <xsd:complexContent>
3008 17 Dec 08 olle 647             <xsd:extension base="softwareType"/>
3008 17 Dec 08 olle 648           </xsd:complexContent>
3008 17 Dec 08 olle 649         </xsd:complexType>
3008 17 Dec 08 olle 650       </xsd:element>
3008 17 Dec 08 olle 651       <xsd:element name="processingMethod" type="paramType" minOccurs="0">
3008 17 Dec 08 olle 652         <xsd:annotation>
3008 17 Dec 08 olle 653           <xsd:documentation>Description of the default peak processing method.This element describes the base method used in the generation of a particular mzData file. Variable methods should be described in the appropriate acquisition section -- if no acquisition-specific details are found, then this information serves as the default.</xsd:documentation>
3008 17 Dec 08 olle 654         </xsd:annotation>
3008 17 Dec 08 olle 655       </xsd:element>
3008 17 Dec 08 olle 656     </xsd:sequence>
3008 17 Dec 08 olle 657   </xsd:complexType>
3008 17 Dec 08 olle 658   <xsd:complexType name="spectrumType">
3008 17 Dec 08 olle 659     <xsd:annotation>
3008 17 Dec 08 olle 660       <xsd:documentation>The structure tha captures the generation of a peak list (including
3008 17 Dec 08 olle 661  the underlying acquisitions)</xsd:documentation>
3008 17 Dec 08 olle 662     </xsd:annotation>
3008 17 Dec 08 olle 663     <xsd:sequence>
3008 17 Dec 08 olle 664       <xsd:element name="spectrumDesc" type="spectrumDescType">
3008 17 Dec 08 olle 665         <xsd:annotation>
3008 17 Dec 08 olle 666           <xsd:documentation>There is one spectrumDesc per spectrum. It captures both the instance-specific parameters for the underlying acquisitions, and where applicable, the postion of this spectrum in a possible hierarchy of spectra. For example, for 'tandem' mass spectrometry; the id attribute on the spectrum element allows the survey scan to be identified from which the parent ion was selected that gave rise to this MSMS spectrum -- note that these identifying numbers can be given, in a list if necessary, whether or not the actual referred-to spectra are present in the file -- they are the 'family tree' of this spectrum.</xsd:documentation>
3008 17 Dec 08 olle 667         </xsd:annotation>
3008 17 Dec 08 olle 668       </xsd:element>
3008 17 Dec 08 olle 669       <xsd:element name="supDesc" type="supDescType" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 670         <xsd:annotation>
3008 17 Dec 08 olle 671           <xsd:documentation>There is one supDesc for each supDataArray (binary or otherwise) found under this particular spectrum element.</xsd:documentation>
3008 17 Dec 08 olle 672         </xsd:annotation>
3008 17 Dec 08 olle 673       </xsd:element>
3008 17 Dec 08 olle 674       <xsd:element name="mzArrayBinary" type="peakListBinaryType">
3008 17 Dec 08 olle 675         <xsd:annotation>
3008 17 Dec 08 olle 676           <xsd:documentation>The list of m/z values (for any type of spectrum). The array is stored as a base64 encoded binary.The only type allowed is IEEE-754 floating point; the precision must be specified as either 32- or 64-bit; endianess must also be specified.</xsd:documentation>
3008 17 Dec 08 olle 677         </xsd:annotation>
3008 17 Dec 08 olle 678       </xsd:element>
3008 17 Dec 08 olle 679       <xsd:element name="intenArrayBinary" type="peakListBinaryType">
3008 17 Dec 08 olle 680         <xsd:annotation>
3008 17 Dec 08 olle 681           <xsd:documentation>The intensities for each member of the m/z array, also in base64 encoded binary as IEEE-754 floating point, with specified precision and endianess.</xsd:documentation>
3008 17 Dec 08 olle 682         </xsd:annotation>
3008 17 Dec 08 olle 683       </xsd:element>
3008 17 Dec 08 olle 684       <xsd:choice minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 685         <xsd:annotation>
3008 17 Dec 08 olle 686           <xsd:documentation>For each acquisition, there can be a mixture of binary and other data arrays. This is mostly to allow string and other data not conveniently handled by base64 to be associated with binary data. This [0..n] choice allows the number of arrays to be arbitrary.</xsd:documentation>
3008 17 Dec 08 olle 687         </xsd:annotation>
3008 17 Dec 08 olle 688         <xsd:element name="supDataArrayBinary" type="supDataBinaryType">
3008 17 Dec 08 olle 689           <xsd:annotation>
3008 17 Dec 08 olle 690             <xsd:documentation>In addition to the m/z and intensity arrays, an arbitrary number of other arrays can be stored using the same indexing. For each array stored as base64 binary, precision and endianess must be specified.The only type allowed is IEEE-754 floating point (even booleans must be re-encoded this way).</xsd:documentation>
3008 17 Dec 08 olle 691           </xsd:annotation>
3008 17 Dec 08 olle 692         </xsd:element>
3008 17 Dec 08 olle 693         <xsd:element name="supDataArray" type="supDataType">
3008 17 Dec 08 olle 694           <xsd:annotation>
3008 17 Dec 08 olle 695             <xsd:documentation>If the raw data representation method was not binary, or if the supplemental data array was a string or other non-binary type, then it can be represented in the supDataArray element (again with the same indexing).</xsd:documentation>
3008 17 Dec 08 olle 696           </xsd:annotation>
3008 17 Dec 08 olle 697         </xsd:element>
3008 17 Dec 08 olle 698       </xsd:choice>
3008 17 Dec 08 olle 699     </xsd:sequence>
3008 17 Dec 08 olle 700     <xsd:attribute name="id" type="xsd:int" use="required">
3008 17 Dec 08 olle 701       <xsd:annotation>
3008 17 Dec 08 olle 702         <xsd:documentation>The identifier for a particular spectrum; to serve as both an internal (to the file) reference with which to order spectra and also to as a means to associate them with each other (e.g. parent and child soectra from a tandem experiment). This number should be provided whether it legitmately comes from the source data, or has to be generated. In the absence of a parent spectrum for an MS</xsd:documentation>
3008 17 Dec 08 olle 703       </xsd:annotation>
3008 17 Dec 08 olle 704     </xsd:attribute>
3008 17 Dec 08 olle 705   </xsd:complexType>
3008 17 Dec 08 olle 706   <xsd:complexType name="supDataBinaryType">
3008 17 Dec 08 olle 707     <xsd:annotation>
3008 17 Dec 08 olle 708       <xsd:documentation>Extension of binary data group for supplemental data</xsd:documentation>
3008 17 Dec 08 olle 709     </xsd:annotation>
3008 17 Dec 08 olle 710     <xsd:sequence>
3008 17 Dec 08 olle 711       <xsd:element name="arrayName" type="xsd:string">
3008 17 Dec 08 olle 712         <xsd:annotation>
3008 17 Dec 08 olle 713           <xsd:documentation>Name of the supplemental data array.</xsd:documentation>
3008 17 Dec 08 olle 714         </xsd:annotation>
3008 17 Dec 08 olle 715       </xsd:element>
3008 17 Dec 08 olle 716       <xsd:group ref="binaryDataGroup"/>
3008 17 Dec 08 olle 717     </xsd:sequence>
3008 17 Dec 08 olle 718     <xsd:attribute name="id" type="xsd:int" use="required">
3008 17 Dec 08 olle 719       <xsd:annotation>
3008 17 Dec 08 olle 720         <xsd:documentation>The value to which the supDataArrayRef attribute on suppDesc refers; values should never be shared between binary and non-binary supplemental arrays.</xsd:documentation>
3008 17 Dec 08 olle 721       </xsd:annotation>
3008 17 Dec 08 olle 722     </xsd:attribute>
3008 17 Dec 08 olle 723   </xsd:complexType>
3008 17 Dec 08 olle 724   <xsd:complexType name="peakListBinaryType">
3008 17 Dec 08 olle 725     <xsd:annotation>
3008 17 Dec 08 olle 726       <xsd:documentation>Extension of binary data group for m/z and intensity values</xsd:documentation>
3008 17 Dec 08 olle 727     </xsd:annotation>
3008 17 Dec 08 olle 728     <xsd:group ref="binaryDataGroup"/>
3008 17 Dec 08 olle 729   </xsd:complexType>
3008 17 Dec 08 olle 730   <xsd:group name="binaryDataGroup">
3008 17 Dec 08 olle 731     <xsd:annotation>
3008 17 Dec 08 olle 732       <xsd:documentation>The structure into which base64-encoded binary data go</xsd:documentation>
3008 17 Dec 08 olle 733     </xsd:annotation>
3008 17 Dec 08 olle 734     <xsd:sequence>
3008 17 Dec 08 olle 735       <xsd:element name="data">
3008 17 Dec 08 olle 736         <xsd:complexType>
3008 17 Dec 08 olle 737           <xsd:simpleContent>
3008 17 Dec 08 olle 738             <xsd:extension base="xsd:base64Binary">
3008 17 Dec 08 olle 739               <xsd:attribute name="precision" use="required">
3008 17 Dec 08 olle 740                 <xsd:simpleType>
3008 17 Dec 08 olle 741                   <xsd:restriction base="xsd:string">
3008 17 Dec 08 olle 742                     <xsd:enumeration value="32"/>
3008 17 Dec 08 olle 743                     <xsd:enumeration value="64"/>
3008 17 Dec 08 olle 744                   </xsd:restriction>
3008 17 Dec 08 olle 745                 </xsd:simpleType>
3008 17 Dec 08 olle 746               </xsd:attribute>
3008 17 Dec 08 olle 747               <xsd:attribute name="endian" use="required">
3008 17 Dec 08 olle 748                 <xsd:simpleType>
3008 17 Dec 08 olle 749                   <xsd:restriction base="xsd:string">
3008 17 Dec 08 olle 750                     <xsd:enumeration value="big"/>
3008 17 Dec 08 olle 751                     <xsd:enumeration value="little"/>
3008 17 Dec 08 olle 752                   </xsd:restriction>
3008 17 Dec 08 olle 753                 </xsd:simpleType>
3008 17 Dec 08 olle 754               </xsd:attribute>
3008 17 Dec 08 olle 755               <xsd:attribute name="length" type="xsd:int" use="required"/>
3008 17 Dec 08 olle 756             </xsd:extension>
3008 17 Dec 08 olle 757           </xsd:simpleContent>
3008 17 Dec 08 olle 758         </xsd:complexType>
3008 17 Dec 08 olle 759       </xsd:element>
3008 17 Dec 08 olle 760     </xsd:sequence>
3008 17 Dec 08 olle 761   </xsd:group>
3008 17 Dec 08 olle 762   <xsd:complexType name="adminType">
3008 17 Dec 08 olle 763     <xsd:annotation>
3008 17 Dec 08 olle 764       <xsd:documentation>'Header' information -- sample description, contact details, comments</xsd:documentation>
3008 17 Dec 08 olle 765     </xsd:annotation>
3008 17 Dec 08 olle 766     <xsd:sequence>
3008 17 Dec 08 olle 767       <xsd:element name="sampleName">
3008 17 Dec 08 olle 768         <xsd:annotation>
3008 17 Dec 08 olle 769           <xsd:documentation>A short label that is referable to the sample used to generate the dataset. This will often be a copy of the internal (lab) reference code for the sample being analysed.</xsd:documentation>
3008 17 Dec 08 olle 770         </xsd:annotation>
3008 17 Dec 08 olle 771                 <xsd:simpleType>
3008 17 Dec 08 olle 772                   <xsd:restriction base="xsd:string">
3008 17 Dec 08 olle 773                     <xsd:minLength value="1"/>
3008 17 Dec 08 olle 774                   </xsd:restriction>
3008 17 Dec 08 olle 775                 </xsd:simpleType>                
3008 17 Dec 08 olle 776             </xsd:element>
3008 17 Dec 08 olle 777       <xsd:element name="sampleDescription" type="descriptionType" minOccurs="0">
3008 17 Dec 08 olle 778         <xsd:annotation>
3008 17 Dec 08 olle 779           <xsd:documentation>Expansible description of the sample used to generate the dataset, named in sampleName.</xsd:documentation>
3008 17 Dec 08 olle 780         </xsd:annotation>
3008 17 Dec 08 olle 781       </xsd:element>
3008 17 Dec 08 olle 782       <xsd:element name="sourceFile" type="sourceFileType" minOccurs="0">
3008 17 Dec 08 olle 783         <xsd:annotation>
3008 17 Dec 08 olle 784           <xsd:documentation>Information about the original source file (i.e. that generated by the instrument) used in generating the instance document.</xsd:documentation>
3008 17 Dec 08 olle 785         </xsd:annotation>
3008 17 Dec 08 olle 786       </xsd:element>
3008 17 Dec 08 olle 787       <xsd:element name="contact" type="personType" maxOccurs="unbounded">
3008 17 Dec 08 olle 788         <xsd:annotation>
3008 17 Dec 08 olle 789           <xsd:documentation>Audit information concerning the means by which the originator/owner of this mzData file can be identified, and contacted if necessary.</xsd:documentation>
3008 17 Dec 08 olle 790         </xsd:annotation>
3008 17 Dec 08 olle 791       </xsd:element>
3008 17 Dec 08 olle 792     </xsd:sequence>
3008 17 Dec 08 olle 793   </xsd:complexType>
3008 17 Dec 08 olle 794   <xsd:complexType name="spectrumSettingsType">
3008 17 Dec 08 olle 795     <xsd:annotation>
3008 17 Dec 08 olle 796       <xsd:documentation>Description of the parameters for the mass spectrometer for a given acquisition (or list of)</xsd:documentation>
3008 17 Dec 08 olle 797     </xsd:annotation>
3008 17 Dec 08 olle 798     <xsd:sequence>
3008 17 Dec 08 olle 799       <xsd:element name="acqSpecification" minOccurs="0">
3008 17 Dec 08 olle 800         <xsd:annotation>
3008 17 Dec 08 olle 801           <xsd:documentation>Specification for combining raw scans/acquisitions into a single peak list or spectrum. A list of acquisitions from the original raw file can be specified. Software parameters specified in the cv/userParams under acquisition automatically override the default parameters given in dataProcessing.</xsd:documentation>
3008 17 Dec 08 olle 802         </xsd:annotation>
3008 17 Dec 08 olle 803         <xsd:complexType>
3008 17 Dec 08 olle 804           <xsd:sequence>
3008 17 Dec 08 olle 805             <xsd:element name="acquisition" maxOccurs="unbounded">
3008 17 Dec 08 olle 806               <xsd:annotation>
3008 17 Dec 08 olle 807                 <xsd:documentation>Scan or acquisition from original raw file used to create this peak list, as specified in sourceFile.</xsd:documentation>
3008 17 Dec 08 olle 808               </xsd:annotation>
3008 17 Dec 08 olle 809               <xsd:complexType>
3008 17 Dec 08 olle 810                 <xsd:complexContent>
3008 17 Dec 08 olle 811                   <xsd:extension base="paramType">
3008 17 Dec 08 olle 812                     <xsd:attribute name="acqNumber" type="xsd:int" use="required">
3008 17 Dec 08 olle 813                       <xsd:annotation>
3008 17 Dec 08 olle 814                         <xsd:documentation>The actual acquisition number taken directly from the raw file.</xsd:documentation>
3008 17 Dec 08 olle 815                       </xsd:annotation>
3008 17 Dec 08 olle 816                     </xsd:attribute>
3008 17 Dec 08 olle 817                   </xsd:extension>
3008 17 Dec 08 olle 818                 </xsd:complexContent>
3008 17 Dec 08 olle 819               </xsd:complexType>
3008 17 Dec 08 olle 820             </xsd:element>
3008 17 Dec 08 olle 821           </xsd:sequence>
3008 17 Dec 08 olle 822           <xsd:attribute name="spectrumType" use="required">
3008 17 Dec 08 olle 823             <xsd:annotation>
3008 17 Dec 08 olle 824               <xsd:documentation>Whether these are discrete or continuous spectra.</xsd:documentation>
3008 17 Dec 08 olle 825             </xsd:annotation>
3008 17 Dec 08 olle 826             <xsd:simpleType>
3008 17 Dec 08 olle 827               <xsd:restriction base="xsd:string">
3008 17 Dec 08 olle 828                 <xsd:enumeration value="discrete"/>
3008 17 Dec 08 olle 829                 <xsd:enumeration value="continuous"/>
3008 17 Dec 08 olle 830               </xsd:restriction>
3008 17 Dec 08 olle 831             </xsd:simpleType>
3008 17 Dec 08 olle 832           </xsd:attribute>
3008 17 Dec 08 olle 833           <xsd:attribute name="methodOfCombination" type="xsd:string" use="required">
3008 17 Dec 08 olle 834             <xsd:annotation>
3008 17 Dec 08 olle 835               <xsd:documentation>The method (most usually summing or some form of averaging) by which the acquisitions were combined to make the spectrum.</xsd:documentation>
3008 17 Dec 08 olle 836             </xsd:annotation>
3008 17 Dec 08 olle 837           </xsd:attribute>
3008 17 Dec 08 olle 838           <xsd:attribute name="count" type="xsd:int" use="required">
3008 17 Dec 08 olle 839             <xsd:annotation>
3008 17 Dec 08 olle 840               <xsd:documentation>The total number of acquisitions attached (as a simple data integrity check).</xsd:documentation>
3008 17 Dec 08 olle 841             </xsd:annotation>
3008 17 Dec 08 olle 842           </xsd:attribute>
3008 17 Dec 08 olle 843         </xsd:complexType>
3008 17 Dec 08 olle 844       </xsd:element>
3008 17 Dec 08 olle 845       <xsd:element name="spectrumInstrument">
3008 17 Dec 08 olle 846         <xsd:annotation>
3008 17 Dec 08 olle 847           <xsd:documentation>The instrument's 'run time' parameters; common to the whole of this spectrum.</xsd:documentation>
3008 17 Dec 08 olle 848         </xsd:annotation>
3008 17 Dec 08 olle 849         <xsd:complexType>
3008 17 Dec 08 olle 850           <xsd:complexContent>
3008 17 Dec 08 olle 851             <xsd:extension base="paramType">
3008 17 Dec 08 olle 852               <xsd:attribute name="msLevel" type="xsd:int" use="required"/>
3008 17 Dec 08 olle 853               <xsd:attribute name="mzRangeStart" type="xsd:float" use="optional"/>
3008 17 Dec 08 olle 854               <xsd:attribute name="mzRangeStop" type="xsd:float" use="optional"/>
3008 17 Dec 08 olle 855             </xsd:extension>
3008 17 Dec 08 olle 856           </xsd:complexContent>
3008 17 Dec 08 olle 857         </xsd:complexType>
3008 17 Dec 08 olle 858       </xsd:element>
3008 17 Dec 08 olle 859     </xsd:sequence>
3008 17 Dec 08 olle 860   </xsd:complexType>
3008 17 Dec 08 olle 861   <xsd:complexType name="precursorType">
3008 17 Dec 08 olle 862     <xsd:annotation>
3008 17 Dec 08 olle 863       <xsd:documentation>The method of precursor ion selection and activation</xsd:documentation>
3008 17 Dec 08 olle 864     </xsd:annotation>
3008 17 Dec 08 olle 865     <xsd:sequence>
3008 17 Dec 08 olle 866       <xsd:element name="ionSelection" type="paramType">
3008 17 Dec 08 olle 867         <xsd:annotation>
3008 17 Dec 08 olle 868           <xsd:documentation>This captures the type of ion selection being performed, and  trigger m/z (or m/z's), neutral loss criteria etc. for tandem MS or data dependent scans.</xsd:documentation>
3008 17 Dec 08 olle 869         </xsd:annotation>
3008 17 Dec 08 olle 870       </xsd:element>
3008 17 Dec 08 olle 871       <xsd:element name="activation" type="paramType">
3008 17 Dec 08 olle 872         <xsd:annotation>
3008 17 Dec 08 olle 873           <xsd:documentation>The type and energy level used for activation.</xsd:documentation>
3008 17 Dec 08 olle 874         </xsd:annotation>
3008 17 Dec 08 olle 875       </xsd:element>
3008 17 Dec 08 olle 876     </xsd:sequence>
3008 17 Dec 08 olle 877     <xsd:attribute name="msLevel" type="xsd:int" use="required"/>
3008 17 Dec 08 olle 878     <xsd:attribute name="spectrumRef" type="xsd:int" use="required">
3008 17 Dec 08 olle 879       <xsd:annotation>
3008 17 Dec 08 olle 880         <xsd:documentation>Reference to the id attribute of the spectrum from which the precursor was selected.</xsd:documentation>
3008 17 Dec 08 olle 881       </xsd:annotation>
3008 17 Dec 08 olle 882     </xsd:attribute>
3008 17 Dec 08 olle 883   </xsd:complexType>
3008 17 Dec 08 olle 884   <xsd:complexType name="spectrumDescType">
3008 17 Dec 08 olle 885     <xsd:annotation>
3008 17 Dec 08 olle 886       <xsd:documentation>Description of the process of performing an acquisition</xsd:documentation>
3008 17 Dec 08 olle 887     </xsd:annotation>
3008 17 Dec 08 olle 888     <xsd:sequence>
3008 17 Dec 08 olle 889       <xsd:element name="spectrumSettings" type="spectrumSettingsType">
3008 17 Dec 08 olle 890         <xsd:annotation>
3008 17 Dec 08 olle 891           <xsd:documentation>Both run time instrument settings and variations in software parameters all leading to the generation of the specific spectrum being described.</xsd:documentation>
3008 17 Dec 08 olle 892         </xsd:annotation>
3008 17 Dec 08 olle 893       </xsd:element>
3008 17 Dec 08 olle 894       <xsd:element name="precursorList" minOccurs="0">
3008 17 Dec 08 olle 895         <xsd:annotation>
3008 17 Dec 08 olle 896           <xsd:documentation>List and descriptions of precursors to the spectrum currently being described.</xsd:documentation>
3008 17 Dec 08 olle 897         </xsd:annotation>
3008 17 Dec 08 olle 898         <xsd:complexType>
3008 17 Dec 08 olle 899           <xsd:sequence>
3008 17 Dec 08 olle 900             <xsd:element name="precursor" type="precursorType" maxOccurs="unbounded">
3008 17 Dec 08 olle 901               <xsd:annotation>
3008 17 Dec 08 olle 902                 <xsd:documentation>This is the precursor step. If source activation is used then both msLevel and  spectrumRef have the value 0. The spectrumRef holds the value of the id attrubute of the spectrum from which the precursor ion was selected. An ordered list of these precursors can be given; the referred-to id numbers my not represent spectra present in the mzData file, but this should not present a bar to providing the history of this scan. Example (trivially); MS survey scan has id = 1 and the first MSMS spectrum has id= 2, with the spectrumRef attribute on precursor for the MSMS spectrum having the value 1.</xsd:documentation>
3008 17 Dec 08 olle 903               </xsd:annotation>
3008 17 Dec 08 olle 904             </xsd:element>
3008 17 Dec 08 olle 905           </xsd:sequence>
3008 17 Dec 08 olle 906           <xsd:attribute name="count" type="xsd:int" use="required">
3008 17 Dec 08 olle 907             <xsd:annotation>
3008 17 Dec 08 olle 908               <xsd:documentation>The number of precursor selection processes described in the attached list.</xsd:documentation>
3008 17 Dec 08 olle 909             </xsd:annotation>
3008 17 Dec 08 olle 910           </xsd:attribute>
3008 17 Dec 08 olle 911         </xsd:complexType>
3008 17 Dec 08 olle 912       </xsd:element>
3008 17 Dec 08 olle 913       <xsd:element name="comments" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 914         <xsd:annotation>
3008 17 Dec 08 olle 915           <xsd:documentation>Additional comments regarding the acquisition are captured here as free text. This should only be used as a lifeboat for when the cv/userParams are inappropriate; or as a 'scratch' comment space.</xsd:documentation>
3008 17 Dec 08 olle 916         </xsd:annotation>
3008 17 Dec 08 olle 917       </xsd:element>
3008 17 Dec 08 olle 918     </xsd:sequence>
3008 17 Dec 08 olle 919   </xsd:complexType>
3008 17 Dec 08 olle 920   <xsd:complexType name="supDescType">
3008 17 Dec 08 olle 921     <xsd:annotation>
3008 17 Dec 08 olle 922       <xsd:documentation>Description of a supplemental data array</xsd:documentation>
3008 17 Dec 08 olle 923     </xsd:annotation>
3008 17 Dec 08 olle 924     <xsd:sequence>
3008 17 Dec 08 olle 925       <xsd:element name="supDataDesc" type="descriptionType" minOccurs="0">
3008 17 Dec 08 olle 926         <xsd:annotation>
3008 17 Dec 08 olle 927           <xsd:documentation>Description of the supplemental dataset, in both CV and free-text.</xsd:documentation>
3008 17 Dec 08 olle 928         </xsd:annotation>
3008 17 Dec 08 olle 929       </xsd:element>
3008 17 Dec 08 olle 930       <xsd:element name="supSourceFile" type="sourceFileType" minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 931         <xsd:annotation>
3008 17 Dec 08 olle 932           <xsd:documentation>Information about the original source file used to generate the supDataArray.</xsd:documentation>
3008 17 Dec 08 olle 933         </xsd:annotation>
3008 17 Dec 08 olle 934       </xsd:element>
3008 17 Dec 08 olle 935     </xsd:sequence>
3008 17 Dec 08 olle 936     <xsd:attribute name="supDataArrayRef" type="xsd:int" use="required">
3008 17 Dec 08 olle 937       <xsd:annotation>
3008 17 Dec 08 olle 938         <xsd:documentation>Reference to the id attribute of the supplemental data array/binary.</xsd:documentation>
3008 17 Dec 08 olle 939       </xsd:annotation>
3008 17 Dec 08 olle 940     </xsd:attribute>
3008 17 Dec 08 olle 941   </xsd:complexType>
3008 17 Dec 08 olle 942   <xsd:complexType name="instrumentDescriptionType">
3008 17 Dec 08 olle 943     <xsd:annotation>
3008 17 Dec 08 olle 944       <xsd:documentation>Description of the components of the mass spectrometer used</xsd:documentation>
3008 17 Dec 08 olle 945     </xsd:annotation>
3008 17 Dec 08 olle 946     <xsd:sequence>
3008 17 Dec 08 olle 947       <xsd:element name="instrumentName">
3008 17 Dec 08 olle 948         <xsd:annotation>
3008 17 Dec 08 olle 949           <xsd:documentation>Descriptive name of the instrument (make, model, significant customisations).</xsd:documentation>
3008 17 Dec 08 olle 950         </xsd:annotation>
3008 17 Dec 08 olle 951                 <xsd:simpleType>
3008 17 Dec 08 olle 952                   <xsd:restriction base="xsd:string">
3008 17 Dec 08 olle 953                     <xsd:minLength value="1"/>
3008 17 Dec 08 olle 954                   </xsd:restriction>
3008 17 Dec 08 olle 955                 </xsd:simpleType>
3008 17 Dec 08 olle 956             </xsd:element>
3008 17 Dec 08 olle 957       <xsd:element name="source" type="paramType">
3008 17 Dec 08 olle 958         <xsd:annotation>
3008 17 Dec 08 olle 959           <xsd:documentation>Invariant ion source (e.g. MALDI) information, as a run of name-value pairs.</xsd:documentation>
3008 17 Dec 08 olle 960         </xsd:annotation>
3008 17 Dec 08 olle 961       </xsd:element>
3008 17 Dec 08 olle 962       <xsd:element name="analyzerList">
3008 17 Dec 08 olle 963         <xsd:annotation>
3008 17 Dec 08 olle 964           <xsd:documentation>Mass analyzer component list; ordered so as to reflect the physical order of the desribed components in the mass spectrometer.</xsd:documentation>
3008 17 Dec 08 olle 965         </xsd:annotation>
3008 17 Dec 08 olle 966         <xsd:complexType>
3008 17 Dec 08 olle 967           <xsd:sequence>
3008 17 Dec 08 olle 968             <xsd:element name="analyzer" type="paramType" minOccurs="1" maxOccurs="unbounded">
3008 17 Dec 08 olle 969               <xsd:annotation>
3008 17 Dec 08 olle 970                 <xsd:documentation>A single component of the mass analyzer (e.g. quadrupole, collision cell), decribed with a run of name-value pairs.</xsd:documentation>
3008 17 Dec 08 olle 971               </xsd:annotation>
3008 17 Dec 08 olle 972             </xsd:element>
3008 17 Dec 08 olle 973           </xsd:sequence>
3008 17 Dec 08 olle 974           <xsd:attribute name="count" type="xsd:int" use="required">
3008 17 Dec 08 olle 975             <xsd:annotation>
3008 17 Dec 08 olle 976               <xsd:documentation>The number of analyzers that are described in the attached list.</xsd:documentation>
3008 17 Dec 08 olle 977             </xsd:annotation>
3008 17 Dec 08 olle 978           </xsd:attribute>
3008 17 Dec 08 olle 979         </xsd:complexType>
3008 17 Dec 08 olle 980       </xsd:element>
3008 17 Dec 08 olle 981       <xsd:element name="detector" type="paramType">
3008 17 Dec 08 olle 982         <xsd:annotation>
3008 17 Dec 08 olle 983           <xsd:documentation>Ion detector information, as a run of name-value pairs.</xsd:documentation>
3008 17 Dec 08 olle 984         </xsd:annotation>
3008 17 Dec 08 olle 985       </xsd:element>
3008 17 Dec 08 olle 986       <xsd:element name="additional" type="paramType" minOccurs="0">
3008 17 Dec 08 olle 987         <xsd:annotation>
3008 17 Dec 08 olle 988           <xsd:documentation>Subsidiary information about the instrument; a run of additional parameters  captured as name-value pairs</xsd:documentation>
3008 17 Dec 08 olle 989         </xsd:annotation>
3008 17 Dec 08 olle 990       </xsd:element>
3008 17 Dec 08 olle 991     </xsd:sequence>
3008 17 Dec 08 olle 992   </xsd:complexType>
3008 17 Dec 08 olle 993   <xsd:complexType name="paramType">
3008 17 Dec 08 olle 994     <xsd:annotation>
3008 17 Dec 08 olle 995       <xsd:documentation>Structure allowing the use of controlled or uncontrolled vocabulary</xsd:documentation>
3008 17 Dec 08 olle 996     </xsd:annotation>
3008 17 Dec 08 olle 997     <xsd:choice minOccurs="0" maxOccurs="unbounded">
3008 17 Dec 08 olle 998       <xsd:element name="cvParam" type="cvParamType">
3008 17 Dec 08 olle 999         <xsd:annotation>
3008 17 Dec 08 olle 1000           <xsd:documentation>This element holds additional data or annotation. Only controlled values are allowed here.</xsd:documentation>
3008 17 Dec 08 olle 1001         </xsd:annotation>
3008 17 Dec 08 olle 1002       </xsd:element>
3008 17 Dec 08 olle 1003       <xsd:element name="userParam" type="userParamType">
3008 17 Dec 08 olle 1004         <xsd:annotation>
3008 17 Dec 08 olle 1005           <xsd:documentation>This element holds additional data or annotation. Uncontrolled, or user controlled values are allowed here.</xsd:documentation>
3008 17 Dec 08 olle 1006         </xsd:annotation>
3008 17 Dec 08 olle 1007       </xsd:element>
3008 17 Dec 08 olle 1008     </xsd:choice>
3008 17 Dec 08 olle 1009   </xsd:complexType>
3008 17 Dec 08 olle 1010   <xsd:complexType name="userParamType">
3008 17 Dec 08 olle 1011     <xsd:annotation>
3008 17 Dec 08 olle 1012       <xsd:documentation>Uncontrolled user parameters (vocabulary).</xsd:documentation>
3008 17 Dec 08 olle 1013     </xsd:annotation>
3008 17 Dec 08 olle 1014     <xsd:attribute name="name" type="xsd:string" use="required">
3008 17 Dec 08 olle 1015       <xsd:annotation>
3008 17 Dec 08 olle 1016         <xsd:documentation>The actual name for the parameter.</xsd:documentation>
3008 17 Dec 08 olle 1017       </xsd:annotation>
3008 17 Dec 08 olle 1018     </xsd:attribute>
3008 17 Dec 08 olle 1019     <xsd:attribute name="value" type="xsd:string" use="optional">
3008 17 Dec 08 olle 1020       <xsd:annotation>
3008 17 Dec 08 olle 1021         <xsd:documentation>The value for the parameter, where appropriate.</xsd:documentation>
3008 17 Dec 08 olle 1022       </xsd:annotation>
3008 17 Dec 08 olle 1023     </xsd:attribute>
3008 17 Dec 08 olle 1024   </xsd:complexType>
3008 17 Dec 08 olle 1025   <xsd:complexType name="descriptionType">
3008 17 Dec 08 olle 1026     <xsd:annotation>
3008 17 Dec 08 olle 1027       <xsd:documentation>Extension of 'paramType' with an added free-text comment attribute.</xsd:documentation>
3008 17 Dec 08 olle 1028     </xsd:annotation>
3008 17 Dec 08 olle 1029     <xsd:complexContent>
3008 17 Dec 08 olle 1030       <xsd:extension base="paramType">
3008 17 Dec 08 olle 1031         <xsd:attribute name="comment" type="xsd:string" use="optional">
3008 17 Dec 08 olle 1032           <xsd:annotation>
3008 17 Dec 08 olle 1033             <xsd:documentation>Free text opportunity to supplement, but not to replace, to the main CV-based description.</xsd:documentation>
3008 17 Dec 08 olle 1034           </xsd:annotation>
3008 17 Dec 08 olle 1035         </xsd:attribute>
3008 17 Dec 08 olle 1036       </xsd:extension>
3008 17 Dec 08 olle 1037     </xsd:complexContent>
3008 17 Dec 08 olle 1038   </xsd:complexType>
3008 17 Dec 08 olle 1039 </xsd:schema>