plugin/conf/xsd/mzdata.xsd

Code
Comments
Other
Rev Date Author Line
362 01 Aug 06 olle 1 <?xml version="1.0" encoding="UTF-8"?>
362 01 Aug 06 olle 2 <!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Chris Taylor (EMBL OUTSTATION THE EBI) -->
362 01 Aug 06 olle 3 <!--
362 01 Aug 06 olle 4  Authors:
362 01 Aug 06 olle 5   Randy K Julian (Eli Lilly)
362 01 Aug 06 olle 6   Andreas Wilke, Kai Runte (Bielefeld University)
362 01 Aug 06 olle 7   Weimin Zhu, Chris Taylor (EBI)
362 01 Aug 06 olle 8  Tested with:
362 01 Aug 06 olle 9   SQC (Schema Quality Checker, IBM), MSV (Multi Schema Validator, Sun), XMLSPY (Altova)
362 01 Aug 06 olle 10 -->
362 01 Aug 06 olle 11 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
362 01 Aug 06 olle 12   <xs:element name="mzData">
362 01 Aug 06 olle 13     <xs:annotation>
362 01 Aug 06 olle 14       <xs: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.</xs:documentation>
362 01 Aug 06 olle 15     </xs:annotation>
362 01 Aug 06 olle 16     <xs:complexType>
362 01 Aug 06 olle 17       <xs:sequence>
362 01 Aug 06 olle 18         <xs:element name="cvLookup" type="cvLookupType" minOccurs="0" maxOccurs="unbounded">
362 01 Aug 06 olle 19           <xs:annotation>
362 01 Aug 06 olle 20             <xs: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.</xs:documentation>
362 01 Aug 06 olle 21           </xs:annotation>
362 01 Aug 06 olle 22         </xs:element>
362 01 Aug 06 olle 23         <xs:element name="description">
362 01 Aug 06 olle 24           <xs:annotation>
362 01 Aug 06 olle 25             <xs:documentation>Each data set starts with a description section. This section captures 'general' information; such as the instrument on which the data were generated.</xs:documentation>
362 01 Aug 06 olle 26           </xs:annotation>
362 01 Aug 06 olle 27           <xs:complexType>
362 01 Aug 06 olle 28             <xs:sequence>
362 01 Aug 06 olle 29               <xs:element name="admin" type="adminType">
362 01 Aug 06 olle 30                 <xs:annotation>
362 01 Aug 06 olle 31                   <xs:documentation>Administrative information pertaining to the entire mzData file (i.e. not specific to any part of the data set) is stored here.</xs:documentation>
362 01 Aug 06 olle 32                 </xs:annotation>
362 01 Aug 06 olle 33               </xs:element>
362 01 Aug 06 olle 34               <xs:element name="instrument" type="instrumentDescriptionType">
362 01 Aug 06 olle 35                 <xs:annotation>
362 01 Aug 06 olle 36                   <xs:documentation>Instrument descripton (not 'run time' parameters, which should properly be captured in spectrumInstrument); these features must be common to all acquisitions.</xs:documentation>
362 01 Aug 06 olle 37                 </xs:annotation>
362 01 Aug 06 olle 38               </xs:element>
362 01 Aug 06 olle 39               <xs:element name="dataProcessing" type="dataProcessingType">
362 01 Aug 06 olle 40                 <xs:annotation>
362 01 Aug 06 olle 41                   <xs:documentation>Description of the default processing by which the peak list(s) were generated.</xs:documentation>
362 01 Aug 06 olle 42                 </xs:annotation>
362 01 Aug 06 olle 43               </xs:element>
362 01 Aug 06 olle 44             </xs:sequence>
362 01 Aug 06 olle 45           </xs:complexType>
362 01 Aug 06 olle 46         </xs:element>
362 01 Aug 06 olle 47         <xs:element name="spectrumList">
362 01 Aug 06 olle 48           <xs:annotation>
362 01 Aug 06 olle 49             <xs:documentation>All mass spectra and the acquisitions underlying them are described and attached here. Subsidiary data arrays are also both described and attached here.</xs:documentation>
362 01 Aug 06 olle 50           </xs:annotation>
362 01 Aug 06 olle 51           <xs:complexType>
362 01 Aug 06 olle 52             <xs:sequence>
362 01 Aug 06 olle 53               <xs:element name="spectrum" maxOccurs="unbounded">
362 01 Aug 06 olle 54                 <xs:annotation>
362 01 Aug 06 olle 55                   <xs:documentation>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.</xs:documentation>
362 01 Aug 06 olle 56                 </xs:annotation>
362 01 Aug 06 olle 57                 <xs:complexType>
362 01 Aug 06 olle 58                   <xs:complexContent>
362 01 Aug 06 olle 59                     <xs:extension base="spectrumType"/>
362 01 Aug 06 olle 60                   </xs:complexContent>
362 01 Aug 06 olle 61                 </xs:complexType>
362 01 Aug 06 olle 62               </xs:element>
362 01 Aug 06 olle 63             </xs:sequence>
362 01 Aug 06 olle 64             <xs:attribute name="count" type="xs:int" use="required">
362 01 Aug 06 olle 65               <xs:annotation>
362 01 Aug 06 olle 66                 <xs:documentation>The number of spectra that are to be found in the attached list.</xs:documentation>
362 01 Aug 06 olle 67               </xs:annotation>
362 01 Aug 06 olle 68             </xs:attribute>
362 01 Aug 06 olle 69           </xs:complexType>
362 01 Aug 06 olle 70         </xs:element>
362 01 Aug 06 olle 71       </xs:sequence>
362 01 Aug 06 olle 72       <xs:attribute name="version" type="xs:string" use="required" fixed="1.05">
362 01 Aug 06 olle 73         <xs:annotation>
362 01 Aug 06 olle 74           <xs:documentation>The development version of this mzData schema.</xs:documentation>
362 01 Aug 06 olle 75         </xs:annotation>
362 01 Aug 06 olle 76       </xs:attribute>
362 01 Aug 06 olle 77       <xs:attribute name="accessionNumber" type="xs:string" use="required">
362 01 Aug 06 olle 78         <xs:annotation>
362 01 Aug 06 olle 79           <xs: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.</xs:documentation>
362 01 Aug 06 olle 80         </xs:annotation>
362 01 Aug 06 olle 81       </xs:attribute>
362 01 Aug 06 olle 82     </xs:complexType>
362 01 Aug 06 olle 83   </xs:element>
362 01 Aug 06 olle 84   <xs:complexType name="sourceFileType">
362 01 Aug 06 olle 85     <xs:annotation>
362 01 Aug 06 olle 86       <xs:documentation>Description of the source file, including location and type.</xs:documentation>
362 01 Aug 06 olle 87     </xs:annotation>
362 01 Aug 06 olle 88     <xs:sequence>
362 01 Aug 06 olle 89       <xs:element name="nameOfFile" type="xs:string">
362 01 Aug 06 olle 90         <xs:annotation>
362 01 Aug 06 olle 91           <xs:documentation>Name of the source file, without reference to location (either URI or local path).</xs:documentation>
362 01 Aug 06 olle 92         </xs:annotation>
362 01 Aug 06 olle 93       </xs:element>
362 01 Aug 06 olle 94       <xs:element name="pathToFile" type="xs:anyURI">
362 01 Aug 06 olle 95         <xs:annotation>
362 01 Aug 06 olle 96           <xs:documentation>URI-formatted full path to file, without actual file name appended.</xs:documentation>
362 01 Aug 06 olle 97         </xs:annotation>
362 01 Aug 06 olle 98       </xs:element>
362 01 Aug 06 olle 99       <xs:element name="fileType" type="xs:string" minOccurs="0">
362 01 Aug 06 olle 100         <xs:annotation>
362 01 Aug 06 olle 101           <xs:documentation>Type of the file if appropriate, else a description of the software or reference resource used.</xs:documentation>
362 01 Aug 06 olle 102         </xs:annotation>
362 01 Aug 06 olle 103       </xs:element>
362 01 Aug 06 olle 104     </xs:sequence>
362 01 Aug 06 olle 105   </xs:complexType>
362 01 Aug 06 olle 106   <xs:complexType name="supDataType">
362 01 Aug 06 olle 107     <xs:annotation>
362 01 Aug 06 olle 108       <xs:documentation>Data type for additional data vectors (beyond m/z and intensity).</xs:documentation>
362 01 Aug 06 olle 109     </xs:annotation>
362 01 Aug 06 olle 110     <xs:sequence>
362 01 Aug 06 olle 111       <xs:element name="arrayName" type="xs:string">
362 01 Aug 06 olle 112         <xs:annotation>
362 01 Aug 06 olle 113           <xs:documentation>Name of the supplemental data array.</xs:documentation>
362 01 Aug 06 olle 114         </xs:annotation>
362 01 Aug 06 olle 115       </xs:element>
362 01 Aug 06 olle 116       <xs:choice>
362 01 Aug 06 olle 117         <xs:element name="float" type="xs:float" maxOccurs="unbounded"/>
362 01 Aug 06 olle 118         <xs:element name="double" type="xs:double" maxOccurs="unbounded"/>
362 01 Aug 06 olle 119         <xs:element name="int" type="xs:int" maxOccurs="unbounded"/>
362 01 Aug 06 olle 120         <xs:element name="boolean" type="xs:boolean" maxOccurs="unbounded"/>
362 01 Aug 06 olle 121         <xs:element name="string" type="xs:string" maxOccurs="unbounded"/>
362 01 Aug 06 olle 122         <xs:element name="time" type="xs:float" maxOccurs="unbounded"/>
362 01 Aug 06 olle 123         <xs:element name="URI" type="xs:anyURI" maxOccurs="unbounded"/>
362 01 Aug 06 olle 124       </xs:choice>
362 01 Aug 06 olle 125     </xs:sequence>
362 01 Aug 06 olle 126     <xs:attribute name="id" type="xs:int" use="required">
362 01 Aug 06 olle 127       <xs:annotation>
362 01 Aug 06 olle 128         <xs:documentation>The value to which the supDataArrayRef attribute on suppDesc refers; values should never be shared between binary and non-binary supplemental arrays.</xs:documentation>
362 01 Aug 06 olle 129       </xs:annotation>
362 01 Aug 06 olle 130     </xs:attribute>
362 01 Aug 06 olle 131     <xs:attribute name="length" type="xs:int" use="required">
362 01 Aug 06 olle 132       <xs:annotation>
362 01 Aug 06 olle 133         <xs:documentation>Number of items in the supDataArray.</xs:documentation>
362 01 Aug 06 olle 134       </xs:annotation>
362 01 Aug 06 olle 135     </xs:attribute>
362 01 Aug 06 olle 136     <xs:attribute name="indexed" type="xs:boolean" use="required">
362 01 Aug 06 olle 137       <xs:annotation>
362 01 Aug 06 olle 138         <xs: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.</xs:documentation>
362 01 Aug 06 olle 139       </xs:annotation>
362 01 Aug 06 olle 140     </xs:attribute>
362 01 Aug 06 olle 141     <xs:attribute name="offset" type="xs:int" use="optional" default="0">
362 01 Aug 06 olle 142       <xs:annotation>
362 01 Aug 06 olle 143         <xs: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.</xs:documentation>
362 01 Aug 06 olle 144       </xs:annotation>
362 01 Aug 06 olle 145     </xs:attribute>
362 01 Aug 06 olle 146   </xs:complexType>
362 01 Aug 06 olle 147   <xs:complexType name="cvLookupType">
362 01 Aug 06 olle 148     <xs:annotation>
362 01 Aug 06 olle 149       <xs:documentation>Information about an ontology/CV source and a short 'lookup' tag to
362 01 Aug 06 olle 150                 refer to.</xs:documentation>
362 01 Aug 06 olle 151     </xs:annotation>
362 01 Aug 06 olle 152     <xs:attribute name="cvLabel" type="xs:string" use="required">
362 01 Aug 06 olle 153       <xs:annotation>
362 01 Aug 06 olle 154         <xs: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).</xs:documentation>
362 01 Aug 06 olle 155       </xs:annotation>
362 01 Aug 06 olle 156     </xs:attribute>
362 01 Aug 06 olle 157     <xs:attribute name="fullName" type="xs:string" use="optional">
362 01 Aug 06 olle 158       <xs:annotation>
362 01 Aug 06 olle 159         <xs:documentation>The usual name for the resource (e.g. The MGED Ontology).</xs:documentation>
362 01 Aug 06 olle 160       </xs:annotation>
362 01 Aug 06 olle 161     </xs:attribute>
362 01 Aug 06 olle 162     <xs:attribute name="version" type="xs:string" use="required">
362 01 Aug 06 olle 163       <xs:annotation>
362 01 Aug 06 olle 164         <xs:documentation>The version of the CV from which the referred-to terms are drawn.</xs:documentation>
362 01 Aug 06 olle 165       </xs:annotation>
362 01 Aug 06 olle 166     </xs:attribute>
362 01 Aug 06 olle 167     <xs:attribute name="address" type="xs:anyURI" use="required">
362 01 Aug 06 olle 168       <xs:annotation>
362 01 Aug 06 olle 169         <xs:documentation>The URI for the resource.</xs:documentation>
362 01 Aug 06 olle 170       </xs:annotation>
362 01 Aug 06 olle 171     </xs:attribute>
362 01 Aug 06 olle 172   </xs:complexType>
362 01 Aug 06 olle 173   <xs:complexType name="cvParamType">
362 01 Aug 06 olle 174     <xs:annotation>
362 01 Aug 06 olle 175       <xs:documentation>Parameters from a controlled vocbulary.</xs:documentation>
362 01 Aug 06 olle 176     </xs:annotation>
362 01 Aug 06 olle 177     <xs:attribute name="cvLabel" type="xs:string" use="required">
362 01 Aug 06 olle 178       <xs:annotation>
362 01 Aug 06 olle 179         <xs:documentation>The short tag for the resource as defined in cvLookupType.</xs:documentation>
362 01 Aug 06 olle 180       </xs:annotation>
362 01 Aug 06 olle 181     </xs:attribute>
362 01 Aug 06 olle 182     <xs:attribute name="accession" type="xs:string" use="required">
362 01 Aug 06 olle 183       <xs:annotation>
362 01 Aug 06 olle 184         <xs:documentation>The accession number of the referred-to term in the named resource.</xs:documentation>
362 01 Aug 06 olle 185       </xs:annotation>
362 01 Aug 06 olle 186     </xs:attribute>
362 01 Aug 06 olle 187     <xs:attribute name="name" type="xs:string" use="required">
362 01 Aug 06 olle 188       <xs:annotation>
362 01 Aug 06 olle 189         <xs:documentation>The actual name for the parameter, from the referred-to controlled vocabulary.</xs:documentation>
362 01 Aug 06 olle 190       </xs:annotation>
362 01 Aug 06 olle 191     </xs:attribute>
362 01 Aug 06 olle 192     <xs:attribute name="value" type="xs:string" use="optional">
362 01 Aug 06 olle 193       <xs:annotation>
362 01 Aug 06 olle 194         <xs: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).</xs:documentation>
362 01 Aug 06 olle 195       </xs:annotation>
362 01 Aug 06 olle 196     </xs:attribute>
362 01 Aug 06 olle 197   </xs:complexType>
362 01 Aug 06 olle 198   <xs:complexType name="personType">
362 01 Aug 06 olle 199     <xs:annotation>
362 01 Aug 06 olle 200       <xs:documentation>Data type for operator identification information.</xs:documentation>
362 01 Aug 06 olle 201     </xs:annotation>
362 01 Aug 06 olle 202     <xs:sequence>
362 01 Aug 06 olle 203       <xs:element name="name" type="xs:string">
362 01 Aug 06 olle 204         <xs:annotation>
362 01 Aug 06 olle 205           <xs:documentation>Contact person name, or role name (e.g. "Group leader of team 42") of the individual responsible for this dataset.</xs:documentation>
362 01 Aug 06 olle 206         </xs:annotation>
362 01 Aug 06 olle 207       </xs:element>
362 01 Aug 06 olle 208       <xs:element name="institution" type="xs:string">
362 01 Aug 06 olle 209         <xs:annotation>
362 01 Aug 06 olle 210           <xs:documentation>Academic or corporate organisation with which the contact person or role is associated.</xs:documentation>
362 01 Aug 06 olle 211         </xs:annotation>
362 01 Aug 06 olle 212       </xs:element>
362 01 Aug 06 olle 213       <xs:element name="contactInfo" type="xs:string" minOccurs="0">
362 01 Aug 06 olle 214         <xs:annotation>
362 01 Aug 06 olle 215           <xs:documentation>Phone number, email, postal address or other appropriate means of contact.</xs:documentation>
362 01 Aug 06 olle 216         </xs:annotation>
362 01 Aug 06 olle 217       </xs:element>
362 01 Aug 06 olle 218     </xs:sequence>
362 01 Aug 06 olle 219   </xs:complexType>
362 01 Aug 06 olle 220   <xs:complexType name="softwareType">
362 01 Aug 06 olle 221     <xs:annotation>
362 01 Aug 06 olle 222       <xs:documentation>Software information (the software that produced the peak list).</xs:documentation>
362 01 Aug 06 olle 223     </xs:annotation>
362 01 Aug 06 olle 224     <xs:sequence>
362 01 Aug 06 olle 225       <xs:element name="name" type="xs:string">
362 01 Aug 06 olle 226         <xs:annotation>
362 01 Aug 06 olle 227           <xs:documentation>The official name for the software package used.</xs:documentation>
362 01 Aug 06 olle 228         </xs:annotation>
362 01 Aug 06 olle 229       </xs:element>
362 01 Aug 06 olle 230       <xs:element name="version" type="xs:string">
362 01 Aug 06 olle 231         <xs:annotation>
362 01 Aug 06 olle 232           <xs:documentation>The version number of the software package.</xs:documentation>
362 01 Aug 06 olle 233         </xs:annotation>
362 01 Aug 06 olle 234       </xs:element>
362 01 Aug 06 olle 235       <xs:element name="comments" type="xs:string" minOccurs="0">
362 01 Aug 06 olle 236         <xs:annotation>
362 01 Aug 06 olle 237           <xs:documentation>Additional comments on the use of the software.</xs:documentation>
362 01 Aug 06 olle 238         </xs:annotation>
362 01 Aug 06 olle 239       </xs:element>
362 01 Aug 06 olle 240     </xs:sequence>
362 01 Aug 06 olle 241     <xs:attribute name="completionTime" type="xs:dateTime" use="optional">
362 01 Aug 06 olle 242       <xs:annotation>
362 01 Aug 06 olle 243         <xs: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).</xs:documentation>
362 01 Aug 06 olle 244       </xs:annotation>
362 01 Aug 06 olle 245     </xs:attribute>
362 01 Aug 06 olle 246   </xs:complexType>
362 01 Aug 06 olle 247   <xs:complexType name="dataProcessingType">
362 01 Aug 06 olle 248     <xs:annotation>
362 01 Aug 06 olle 249       <xs:documentation>Description of the software, and the way in which it was used to generate the peak list.</xs:documentation>
362 01 Aug 06 olle 250     </xs:annotation>
362 01 Aug 06 olle 251     <xs:sequence>
362 01 Aug 06 olle 252       <xs:element name="software">
362 01 Aug 06 olle 253         <xs:annotation>
362 01 Aug 06 olle 254           <xs:documentation>Specific information on the conversion or processing software.</xs:documentation>
362 01 Aug 06 olle 255         </xs:annotation>
362 01 Aug 06 olle 256         <xs:complexType>
362 01 Aug 06 olle 257           <xs:complexContent>
362 01 Aug 06 olle 258             <xs:extension base="softwareType"/>
362 01 Aug 06 olle 259           </xs:complexContent>
362 01 Aug 06 olle 260         </xs:complexType>
362 01 Aug 06 olle 261       </xs:element>
362 01 Aug 06 olle 262       <xs:element name="processingMethod" type="paramType" minOccurs="0">
362 01 Aug 06 olle 263         <xs:annotation>
362 01 Aug 06 olle 264           <xs: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.</xs:documentation>
362 01 Aug 06 olle 265         </xs:annotation>
362 01 Aug 06 olle 266       </xs:element>
362 01 Aug 06 olle 267     </xs:sequence>
362 01 Aug 06 olle 268   </xs:complexType>
362 01 Aug 06 olle 269   <xs:complexType name="spectrumType">
362 01 Aug 06 olle 270     <xs:annotation>
362 01 Aug 06 olle 271       <xs:documentation>The structure tha captures the generation of a peak list (including
362 01 Aug 06 olle 272  the underlying acquisitions)</xs:documentation>
362 01 Aug 06 olle 273     </xs:annotation>
362 01 Aug 06 olle 274     <xs:sequence>
362 01 Aug 06 olle 275       <xs:element name="spectrumDesc" type="spectrumDescType">
362 01 Aug 06 olle 276         <xs:annotation>
362 01 Aug 06 olle 277           <xs: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.</xs:documentation>
362 01 Aug 06 olle 278         </xs:annotation>
362 01 Aug 06 olle 279       </xs:element>
362 01 Aug 06 olle 280       <xs:element name="supDesc" type="supDescType" minOccurs="0" maxOccurs="unbounded">
362 01 Aug 06 olle 281         <xs:annotation>
362 01 Aug 06 olle 282           <xs:documentation>There is one supDesc for each supDataArray (binary or otherwise) found under this particular spectrum element.</xs:documentation>
362 01 Aug 06 olle 283         </xs:annotation>
362 01 Aug 06 olle 284       </xs:element>
362 01 Aug 06 olle 285       <xs:element name="mzArrayBinary" type="peakListBinaryType">
362 01 Aug 06 olle 286         <xs:annotation>
362 01 Aug 06 olle 287           <xs: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.</xs:documentation>
362 01 Aug 06 olle 288         </xs:annotation>
362 01 Aug 06 olle 289       </xs:element>
362 01 Aug 06 olle 290       <xs:element name="intenArrayBinary" type="peakListBinaryType">
362 01 Aug 06 olle 291         <xs:annotation>
362 01 Aug 06 olle 292           <xs: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.</xs:documentation>
362 01 Aug 06 olle 293         </xs:annotation>
362 01 Aug 06 olle 294       </xs:element>
362 01 Aug 06 olle 295       <xs:choice minOccurs="0" maxOccurs="unbounded">
362 01 Aug 06 olle 296         <xs:annotation>
362 01 Aug 06 olle 297           <xs: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.</xs:documentation>
362 01 Aug 06 olle 298         </xs:annotation>
362 01 Aug 06 olle 299         <xs:element name="supDataArrayBinary" type="supDataBinaryType">
362 01 Aug 06 olle 300           <xs:annotation>
362 01 Aug 06 olle 301             <xs: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).</xs:documentation>
362 01 Aug 06 olle 302           </xs:annotation>
362 01 Aug 06 olle 303         </xs:element>
362 01 Aug 06 olle 304         <xs:element name="supDataArray" type="supDataType">
362 01 Aug 06 olle 305           <xs:annotation>
362 01 Aug 06 olle 306             <xs: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).</xs:documentation>
362 01 Aug 06 olle 307           </xs:annotation>
362 01 Aug 06 olle 308         </xs:element>
362 01 Aug 06 olle 309       </xs:choice>
362 01 Aug 06 olle 310     </xs:sequence>
362 01 Aug 06 olle 311     <xs:attribute name="id" type="xs:int" use="required">
362 01 Aug 06 olle 312       <xs:annotation>
362 01 Aug 06 olle 313         <xs: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</xs:documentation>
362 01 Aug 06 olle 314       </xs:annotation>
362 01 Aug 06 olle 315     </xs:attribute>
362 01 Aug 06 olle 316   </xs:complexType>
362 01 Aug 06 olle 317   <xs:complexType name="supDataBinaryType">
362 01 Aug 06 olle 318     <xs:annotation>
362 01 Aug 06 olle 319       <xs:documentation>Extension of binary data group for supplemental data</xs:documentation>
362 01 Aug 06 olle 320     </xs:annotation>
362 01 Aug 06 olle 321     <xs:sequence>
362 01 Aug 06 olle 322       <xs:element name="arrayName" type="xs:string">
362 01 Aug 06 olle 323         <xs:annotation>
362 01 Aug 06 olle 324           <xs:documentation>Name of the supplemental data array.</xs:documentation>
362 01 Aug 06 olle 325         </xs:annotation>
362 01 Aug 06 olle 326       </xs:element>
362 01 Aug 06 olle 327       <xs:group ref="binaryDataGroup"/>
362 01 Aug 06 olle 328     </xs:sequence>
362 01 Aug 06 olle 329     <xs:attribute name="id" type="xs:int" use="required">
362 01 Aug 06 olle 330       <xs:annotation>
362 01 Aug 06 olle 331         <xs:documentation>The value to which the supDataArrayRef attribute on suppDesc refers; values should never be shared between binary and non-binary supplemental arrays.</xs:documentation>
362 01 Aug 06 olle 332       </xs:annotation>
362 01 Aug 06 olle 333     </xs:attribute>
362 01 Aug 06 olle 334   </xs:complexType>
362 01 Aug 06 olle 335   <xs:complexType name="peakListBinaryType">
362 01 Aug 06 olle 336     <xs:annotation>
362 01 Aug 06 olle 337       <xs:documentation>Extension of binary data group for m/z and intensity values</xs:documentation>
362 01 Aug 06 olle 338     </xs:annotation>
362 01 Aug 06 olle 339     <xs:group ref="binaryDataGroup"/>
362 01 Aug 06 olle 340   </xs:complexType>
362 01 Aug 06 olle 341   <xs:group name="binaryDataGroup">
362 01 Aug 06 olle 342     <xs:annotation>
362 01 Aug 06 olle 343       <xs:documentation>The structure into which base64-encoded binary data go</xs:documentation>
362 01 Aug 06 olle 344     </xs:annotation>
362 01 Aug 06 olle 345     <xs:sequence>
362 01 Aug 06 olle 346       <xs:element name="data">
362 01 Aug 06 olle 347         <xs:complexType>
362 01 Aug 06 olle 348           <xs:simpleContent>
362 01 Aug 06 olle 349             <xs:extension base="xs:base64Binary">
362 01 Aug 06 olle 350               <xs:attribute name="precision" use="required">
362 01 Aug 06 olle 351                 <xs:simpleType>
362 01 Aug 06 olle 352                   <xs:restriction base="xs:string">
362 01 Aug 06 olle 353                     <xs:enumeration value="32"/>
362 01 Aug 06 olle 354                     <xs:enumeration value="64"/>
362 01 Aug 06 olle 355                   </xs:restriction>
362 01 Aug 06 olle 356                 </xs:simpleType>
362 01 Aug 06 olle 357               </xs:attribute>
362 01 Aug 06 olle 358               <xs:attribute name="endian" use="required">
362 01 Aug 06 olle 359                 <xs:simpleType>
362 01 Aug 06 olle 360                   <xs:restriction base="xs:string">
362 01 Aug 06 olle 361                     <xs:enumeration value="big"/>
362 01 Aug 06 olle 362                     <xs:enumeration value="little"/>
362 01 Aug 06 olle 363                   </xs:restriction>
362 01 Aug 06 olle 364                 </xs:simpleType>
362 01 Aug 06 olle 365               </xs:attribute>
362 01 Aug 06 olle 366               <xs:attribute name="length" type="xs:int" use="required"/>
362 01 Aug 06 olle 367             </xs:extension>
362 01 Aug 06 olle 368           </xs:simpleContent>
362 01 Aug 06 olle 369         </xs:complexType>
362 01 Aug 06 olle 370       </xs:element>
362 01 Aug 06 olle 371     </xs:sequence>
362 01 Aug 06 olle 372   </xs:group>
362 01 Aug 06 olle 373   <xs:complexType name="adminType">
362 01 Aug 06 olle 374     <xs:annotation>
362 01 Aug 06 olle 375       <xs:documentation>'Header' information - sample description, contact details, comments</xs:documentation>
362 01 Aug 06 olle 376     </xs:annotation>
362 01 Aug 06 olle 377     <xs:sequence>
362 01 Aug 06 olle 378       <xs:element name="sampleName" type="xs:string">
362 01 Aug 06 olle 379         <xs:annotation>
362 01 Aug 06 olle 380           <xs: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.</xs:documentation>
362 01 Aug 06 olle 381         </xs:annotation>
362 01 Aug 06 olle 382       </xs:element>
362 01 Aug 06 olle 383       <xs:element name="sampleDescription" type="descriptionType" minOccurs="0">
362 01 Aug 06 olle 384         <xs:annotation>
362 01 Aug 06 olle 385           <xs:documentation>Expansible description of the sample used to generate the dataset, named in sampleName.</xs:documentation>
362 01 Aug 06 olle 386         </xs:annotation>
362 01 Aug 06 olle 387       </xs:element>
362 01 Aug 06 olle 388       <xs:element name="sourceFile" type="sourceFileType" minOccurs="0">
362 01 Aug 06 olle 389         <xs:annotation>
362 01 Aug 06 olle 390           <xs:documentation>Information about the original source file (i.e. that generated by the instrument) used in generating the instance document.</xs:documentation>
362 01 Aug 06 olle 391         </xs:annotation>
362 01 Aug 06 olle 392       </xs:element>
362 01 Aug 06 olle 393       <xs:element name="contact" type="personType" maxOccurs="unbounded">
362 01 Aug 06 olle 394         <xs:annotation>
362 01 Aug 06 olle 395           <xs:documentation>Audit information concerning the means by which the originator/owner of this mzData file can be identified, and contacted if necessary.</xs:documentation>
362 01 Aug 06 olle 396         </xs:annotation>
362 01 Aug 06 olle 397       </xs:element>
362 01 Aug 06 olle 398     </xs:sequence>
362 01 Aug 06 olle 399   </xs:complexType>
362 01 Aug 06 olle 400   <xs:complexType name="spectrumSettingsType">
362 01 Aug 06 olle 401     <xs:annotation>
362 01 Aug 06 olle 402       <xs:documentation>Description of the parameters for the mass spectrometer for a given acquisition (or list of)</xs:documentation>
362 01 Aug 06 olle 403     </xs:annotation>
362 01 Aug 06 olle 404     <xs:sequence>
362 01 Aug 06 olle 405       <xs:element name="acqSpecification" minOccurs="0">
362 01 Aug 06 olle 406         <xs:annotation>
362 01 Aug 06 olle 407           <xs: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.</xs:documentation>
362 01 Aug 06 olle 408         </xs:annotation>
362 01 Aug 06 olle 409         <xs:complexType>
362 01 Aug 06 olle 410           <xs:sequence>
362 01 Aug 06 olle 411             <xs:element name="acquisition" maxOccurs="unbounded">
362 01 Aug 06 olle 412               <xs:annotation>
362 01 Aug 06 olle 413                 <xs:documentation>Scan or acquisition from original raw file used to create this peak list, as specified in sourceFile.</xs:documentation>
362 01 Aug 06 olle 414               </xs:annotation>
362 01 Aug 06 olle 415               <xs:complexType>
362 01 Aug 06 olle 416                 <xs:complexContent>
362 01 Aug 06 olle 417                   <xs:extension base="paramType">
362 01 Aug 06 olle 418                     <xs:attribute name="acqNumber" type="xs:int" use="required">
362 01 Aug 06 olle 419                       <xs:annotation>
362 01 Aug 06 olle 420                         <xs:documentation>The actual acquisition number taken directly from the raw file.</xs:documentation>
362 01 Aug 06 olle 421                       </xs:annotation>
362 01 Aug 06 olle 422                     </xs:attribute>
362 01 Aug 06 olle 423                   </xs:extension>
362 01 Aug 06 olle 424                 </xs:complexContent>
362 01 Aug 06 olle 425               </xs:complexType>
362 01 Aug 06 olle 426             </xs:element>
362 01 Aug 06 olle 427           </xs:sequence>
362 01 Aug 06 olle 428           <xs:attribute name="spectrumType" use="required">
362 01 Aug 06 olle 429             <xs:annotation>
362 01 Aug 06 olle 430               <xs:documentation>Whether these are discrete or continuous spectra.</xs:documentation>
362 01 Aug 06 olle 431             </xs:annotation>
362 01 Aug 06 olle 432             <xs:simpleType>
362 01 Aug 06 olle 433               <xs:restriction base="xs:string">
362 01 Aug 06 olle 434                 <xs:enumeration value="discrete"/>
362 01 Aug 06 olle 435                 <xs:enumeration value="continuous"/>
362 01 Aug 06 olle 436               </xs:restriction>
362 01 Aug 06 olle 437             </xs:simpleType>
362 01 Aug 06 olle 438           </xs:attribute>
362 01 Aug 06 olle 439           <xs:attribute name="methodOfCombination" type="xs:string" use="required">
362 01 Aug 06 olle 440             <xs:annotation>
362 01 Aug 06 olle 441               <xs:documentation>The method (most usually summing or some form of averaging) by which the acquisitions were combined to make the spectrum.</xs:documentation>
362 01 Aug 06 olle 442             </xs:annotation>
362 01 Aug 06 olle 443           </xs:attribute>
362 01 Aug 06 olle 444           <xs:attribute name="count" type="xs:int" use="required">
362 01 Aug 06 olle 445             <xs:annotation>
362 01 Aug 06 olle 446               <xs:documentation>The total number of acquisitions attached (as a simple data integrity check).</xs:documentation>
362 01 Aug 06 olle 447             </xs:annotation>
362 01 Aug 06 olle 448           </xs:attribute>
362 01 Aug 06 olle 449         </xs:complexType>
362 01 Aug 06 olle 450       </xs:element>
362 01 Aug 06 olle 451       <xs:element name="spectrumInstrument">
362 01 Aug 06 olle 452         <xs:annotation>
362 01 Aug 06 olle 453           <xs:documentation>The instrument's 'run time' parameters; common to the whole of this spectrum.</xs:documentation>
362 01 Aug 06 olle 454         </xs:annotation>
362 01 Aug 06 olle 455         <xs:complexType>
362 01 Aug 06 olle 456           <xs:complexContent>
362 01 Aug 06 olle 457             <xs:extension base="paramType">
362 01 Aug 06 olle 458               <xs:attribute name="msLevel" type="xs:int" use="required"/>
362 01 Aug 06 olle 459               <xs:attribute name="mzRangeStart" type="xs:float" use="optional"/>
362 01 Aug 06 olle 460               <xs:attribute name="mzRangeStop" type="xs:float" use="optional"/>
362 01 Aug 06 olle 461             </xs:extension>
362 01 Aug 06 olle 462           </xs:complexContent>
362 01 Aug 06 olle 463         </xs:complexType>
362 01 Aug 06 olle 464       </xs:element>
362 01 Aug 06 olle 465     </xs:sequence>
362 01 Aug 06 olle 466   </xs:complexType>
362 01 Aug 06 olle 467   <xs:complexType name="precursorType">
362 01 Aug 06 olle 468     <xs:annotation>
362 01 Aug 06 olle 469       <xs:documentation>The method of precursor ion selection and activation</xs:documentation>
362 01 Aug 06 olle 470     </xs:annotation>
362 01 Aug 06 olle 471     <xs:sequence>
362 01 Aug 06 olle 472       <xs:element name="ionSelection" type="paramType">
362 01 Aug 06 olle 473         <xs:annotation>
362 01 Aug 06 olle 474           <xs: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.</xs:documentation>
362 01 Aug 06 olle 475         </xs:annotation>
362 01 Aug 06 olle 476       </xs:element>
362 01 Aug 06 olle 477       <xs:element name="activation" type="paramType">
362 01 Aug 06 olle 478         <xs:annotation>
362 01 Aug 06 olle 479           <xs:documentation>The type and energy level used for activation.</xs:documentation>
362 01 Aug 06 olle 480         </xs:annotation>
362 01 Aug 06 olle 481       </xs:element>
362 01 Aug 06 olle 482     </xs:sequence>
362 01 Aug 06 olle 483     <xs:attribute name="msLevel" type="xs:int" use="required"/>
362 01 Aug 06 olle 484     <xs:attribute name="spectrumRef" type="xs:int" use="required">
362 01 Aug 06 olle 485       <xs:annotation>
362 01 Aug 06 olle 486         <xs:documentation>Reference to the id attribute of the spectrum from which the precursor was selected.</xs:documentation>
362 01 Aug 06 olle 487       </xs:annotation>
362 01 Aug 06 olle 488     </xs:attribute>
362 01 Aug 06 olle 489   </xs:complexType>
362 01 Aug 06 olle 490   <xs:complexType name="spectrumDescType">
362 01 Aug 06 olle 491     <xs:annotation>
362 01 Aug 06 olle 492       <xs:documentation>Description of the process of performing an acquisition</xs:documentation>
362 01 Aug 06 olle 493     </xs:annotation>
362 01 Aug 06 olle 494     <xs:sequence>
362 01 Aug 06 olle 495       <xs:element name="spectrumSettings" type="spectrumSettingsType">
362 01 Aug 06 olle 496         <xs:annotation>
362 01 Aug 06 olle 497           <xs:documentation>Both run time instrument settings and variations in software parameters all leading to the generation of the specific spectrum being described.</xs:documentation>
362 01 Aug 06 olle 498         </xs:annotation>
362 01 Aug 06 olle 499       </xs:element>
362 01 Aug 06 olle 500       <xs:element name="precursorList" minOccurs="0">
362 01 Aug 06 olle 501         <xs:annotation>
362 01 Aug 06 olle 502           <xs:documentation>List and descriptions of precursors to the spectrum currently being described.</xs:documentation>
362 01 Aug 06 olle 503         </xs:annotation>
362 01 Aug 06 olle 504         <xs:complexType>
362 01 Aug 06 olle 505           <xs:sequence>
362 01 Aug 06 olle 506             <xs:element name="precursor" type="precursorType" maxOccurs="unbounded">
362 01 Aug 06 olle 507               <xs:annotation>
362 01 Aug 06 olle 508                 <xs: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.</xs:documentation>
362 01 Aug 06 olle 509               </xs:annotation>
362 01 Aug 06 olle 510             </xs:element>
362 01 Aug 06 olle 511           </xs:sequence>
362 01 Aug 06 olle 512           <xs:attribute name="count" type="xs:int" use="required">
362 01 Aug 06 olle 513             <xs:annotation>
362 01 Aug 06 olle 514               <xs:documentation>The number of precursor selection processes described in the attached list.</xs:documentation>
362 01 Aug 06 olle 515             </xs:annotation>
362 01 Aug 06 olle 516           </xs:attribute>
362 01 Aug 06 olle 517         </xs:complexType>
362 01 Aug 06 olle 518       </xs:element>
362 01 Aug 06 olle 519       <xs:element name="comments" type="xs:string" minOccurs="0" maxOccurs="unbounded">
362 01 Aug 06 olle 520         <xs:annotation>
362 01 Aug 06 olle 521           <xs: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.</xs:documentation>
362 01 Aug 06 olle 522         </xs:annotation>
362 01 Aug 06 olle 523       </xs:element>
362 01 Aug 06 olle 524     </xs:sequence>
362 01 Aug 06 olle 525   </xs:complexType>
362 01 Aug 06 olle 526   <xs:complexType name="supDescType">
362 01 Aug 06 olle 527     <xs:annotation>
362 01 Aug 06 olle 528       <xs:documentation>Description of a supplemental data array</xs:documentation>
362 01 Aug 06 olle 529     </xs:annotation>
362 01 Aug 06 olle 530     <xs:sequence>
362 01 Aug 06 olle 531       <xs:element name="supDataDesc" type="descriptionType" minOccurs="0">
362 01 Aug 06 olle 532         <xs:annotation>
362 01 Aug 06 olle 533           <xs:documentation>Description of the supplemental dataset, in both CV and free-text.</xs:documentation>
362 01 Aug 06 olle 534         </xs:annotation>
362 01 Aug 06 olle 535       </xs:element>
362 01 Aug 06 olle 536       <xs:element name="supSourceFile" type="sourceFileType" minOccurs="0" maxOccurs="unbounded">
362 01 Aug 06 olle 537         <xs:annotation>
362 01 Aug 06 olle 538           <xs:documentation>Information about the original source file used to generate the supDataArray.</xs:documentation>
362 01 Aug 06 olle 539         </xs:annotation>
362 01 Aug 06 olle 540       </xs:element>
362 01 Aug 06 olle 541     </xs:sequence>
362 01 Aug 06 olle 542     <xs:attribute name="supDataArrayRef" type="xs:int" use="required">
362 01 Aug 06 olle 543       <xs:annotation>
362 01 Aug 06 olle 544         <xs:documentation>Reference to the id attribute of the supplemental data array/binary.</xs:documentation>
362 01 Aug 06 olle 545       </xs:annotation>
362 01 Aug 06 olle 546     </xs:attribute>
362 01 Aug 06 olle 547   </xs:complexType>
362 01 Aug 06 olle 548   <xs:complexType name="instrumentDescriptionType">
362 01 Aug 06 olle 549     <xs:annotation>
362 01 Aug 06 olle 550       <xs:documentation>Description of the components of the mass spectrometer used</xs:documentation>
362 01 Aug 06 olle 551     </xs:annotation>
362 01 Aug 06 olle 552     <xs:sequence>
362 01 Aug 06 olle 553       <xs:element name="instrumentName" type="xs:string">
362 01 Aug 06 olle 554         <xs:annotation>
362 01 Aug 06 olle 555           <xs:documentation>Descriptive name of the instrument (make, model, significant customisations).</xs:documentation>
362 01 Aug 06 olle 556         </xs:annotation>
362 01 Aug 06 olle 557       </xs:element>
362 01 Aug 06 olle 558       <xs:element name="source" type="paramType">
362 01 Aug 06 olle 559         <xs:annotation>
362 01 Aug 06 olle 560           <xs:documentation>Invariant ion source (e.g. MALDI) information, as a run of name-value pairs.</xs:documentation>
362 01 Aug 06 olle 561         </xs:annotation>
362 01 Aug 06 olle 562       </xs:element>
362 01 Aug 06 olle 563       <xs:element name="analyzerList">
362 01 Aug 06 olle 564         <xs:annotation>
362 01 Aug 06 olle 565           <xs:documentation>Mass analyzer component list; ordered so as to reflect the physical order of the desribed components in the mass spectrometer.</xs:documentation>
362 01 Aug 06 olle 566         </xs:annotation>
362 01 Aug 06 olle 567         <xs:complexType>
362 01 Aug 06 olle 568           <xs:sequence>
362 01 Aug 06 olle 569             <xs:element name="analyzer" type="paramType" maxOccurs="unbounded">
362 01 Aug 06 olle 570               <xs:annotation>
362 01 Aug 06 olle 571                 <xs:documentation>A single component of the mass analyzer (e.g. quadrupole, collision cell), decribed with a run of name-value pairs.</xs:documentation>
362 01 Aug 06 olle 572               </xs:annotation>
362 01 Aug 06 olle 573             </xs:element>
362 01 Aug 06 olle 574           </xs:sequence>
362 01 Aug 06 olle 575           <xs:attribute name="count" type="xs:int" use="required">
362 01 Aug 06 olle 576             <xs:annotation>
362 01 Aug 06 olle 577               <xs:documentation>The number of analyzers that are described in the attached list.</xs:documentation>
362 01 Aug 06 olle 578             </xs:annotation>
362 01 Aug 06 olle 579           </xs:attribute>
362 01 Aug 06 olle 580         </xs:complexType>
362 01 Aug 06 olle 581       </xs:element>
362 01 Aug 06 olle 582       <xs:element name="detector" type="paramType">
362 01 Aug 06 olle 583         <xs:annotation>
362 01 Aug 06 olle 584           <xs:documentation>Ion detector information, as a run of name-value pairs.</xs:documentation>
362 01 Aug 06 olle 585         </xs:annotation>
362 01 Aug 06 olle 586       </xs:element>
362 01 Aug 06 olle 587       <xs:element name="additional" type="paramType" minOccurs="0">
362 01 Aug 06 olle 588         <xs:annotation>
362 01 Aug 06 olle 589           <xs:documentation>Subsidiary information about the instrument; a run of additional parameters  captured as name-value pairs</xs:documentation>
362 01 Aug 06 olle 590         </xs:annotation>
362 01 Aug 06 olle 591       </xs:element>
362 01 Aug 06 olle 592     </xs:sequence>
362 01 Aug 06 olle 593   </xs:complexType>
362 01 Aug 06 olle 594   <xs:complexType name="paramType">
362 01 Aug 06 olle 595     <xs:annotation>
362 01 Aug 06 olle 596       <xs:documentation>Structure allowing the use of controlled or uncontrolled vocabulary</xs:documentation>
362 01 Aug 06 olle 597     </xs:annotation>
362 01 Aug 06 olle 598     <xs:choice minOccurs="0" maxOccurs="unbounded">
362 01 Aug 06 olle 599       <xs:element name="cvParam" type="cvParamType">
362 01 Aug 06 olle 600         <xs:annotation>
362 01 Aug 06 olle 601           <xs:documentation>This element holds additional data or annotation. Only controlled values are allowed here.</xs:documentation>
362 01 Aug 06 olle 602         </xs:annotation>
362 01 Aug 06 olle 603       </xs:element>
362 01 Aug 06 olle 604       <xs:element name="userParam" type="userParamType">
362 01 Aug 06 olle 605         <xs:annotation>
362 01 Aug 06 olle 606           <xs:documentation>This element holds additional data or annotation. Uncontrolled, or user controlled values are allowed here.</xs:documentation>
362 01 Aug 06 olle 607         </xs:annotation>
362 01 Aug 06 olle 608       </xs:element>
362 01 Aug 06 olle 609     </xs:choice>
362 01 Aug 06 olle 610   </xs:complexType>
362 01 Aug 06 olle 611   <xs:complexType name="userParamType">
362 01 Aug 06 olle 612     <xs:annotation>
362 01 Aug 06 olle 613       <xs:documentation>Uncontrolled user parameters (vocabulary).</xs:documentation>
362 01 Aug 06 olle 614     </xs:annotation>
362 01 Aug 06 olle 615     <xs:attribute name="name" type="xs:string" use="required">
362 01 Aug 06 olle 616       <xs:annotation>
362 01 Aug 06 olle 617         <xs:documentation>The actual name for the parameter.</xs:documentation>
362 01 Aug 06 olle 618       </xs:annotation>
362 01 Aug 06 olle 619     </xs:attribute>
362 01 Aug 06 olle 620     <xs:attribute name="value" type="xs:string" use="optional">
362 01 Aug 06 olle 621       <xs:annotation>
362 01 Aug 06 olle 622         <xs:documentation>The value for the parameter, where appropriate.</xs:documentation>
362 01 Aug 06 olle 623       </xs:annotation>
362 01 Aug 06 olle 624     </xs:attribute>
362 01 Aug 06 olle 625   </xs:complexType>
362 01 Aug 06 olle 626   <xs:complexType name="descriptionType">
362 01 Aug 06 olle 627     <xs:annotation>
362 01 Aug 06 olle 628       <xs:documentation>Extension of 'paramType' with an added free-text comment attribute.</xs:documentation>
362 01 Aug 06 olle 629     </xs:annotation>
362 01 Aug 06 olle 630     <xs:complexContent>
362 01 Aug 06 olle 631       <xs:extension base="paramType">
362 01 Aug 06 olle 632         <xs:attribute name="comment" type="xs:string" use="optional">
362 01 Aug 06 olle 633           <xs:annotation>
362 01 Aug 06 olle 634             <xs:documentation>Free text opportunity to supplement, but not to replace, to the main CV-based description.</xs:documentation>
362 01 Aug 06 olle 635           </xs:annotation>
362 01 Aug 06 olle 636         </xs:attribute>
362 01 Aug 06 olle 637       </xs:extension>
362 01 Aug 06 olle 638     </xs:complexContent>
362 01 Aug 06 olle 639   </xs:complexType>
362 01 Aug 06 olle 640 </xs:schema>