Element <mzML>

Definition: This is the root element for the Proteomics Standards Initiative (PSI) mzML schema, which is intended to capture the use of a mass spectrometer, the data generated, and the initial processing of that data (to the level of the peak list).
Attributes:
Attribute NameData TypeUseDefinition
accessionxs:stringoptionalAn optional accession number for the mzML document.
idxs:anyURIrequiredAn id for the mzML document.
versionxs:stringrequiredThe version of this mzML document.
Subelements:
Subelement NameminOccursmaxOccursDefinition
cvList11Container for one or more controlled vocabulary definitions.
fileDescription11Information pertaining to the entire mzML file (i.e. not specific to any part of the data set) is stored here.
referenceableParamGroupList01Container for a list of referenceableParamGroups
sampleList01List and descriptions of samples.
instrumentList11List and descriptions of instruments.
softwareList11List and descriptions of software used to acquire and/or process the data in this mzML file.
dataProcessingList11List and descriptions of data processing applied to this data.
run11The definition and specification of a mass spectrometry run.
Graphical Context:
Example Context:
<mzML xmlns="http://psi.hupo.org/schema_revision/mzML_0.99.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://psi.hupo.org/schema_revision/mzML_0.99.1 mzML0.99.1.xsd" accession="" id="urn:lsid:psidev.info:mzML.instanceDocuments.tiny1" version="0.99.1">
  <cvList count="1">
    <cv cvLabel="MS" fullName="Proteomics Standards Initiative Mass Spectrometry Ontology" version="2.0.2" URI="http://psidev.sourceforge.net/ms/xml/mzdata/psi-ms.2.0.2.obo"/>
  </cvList>
  <fileDescription>
  ...
</mzML>
Notes and Constraints: The <mzML> element and all content below may occur by itself in an XML document, but is also designed to be wrapped in the mzML indexing schema in order to facilitate random access within the file with appropriate reader software.

Element <cvList>

Definition: Container for one or more controlled vocabulary definitions.
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredThe number of CV definitionsin this mzML file.
Subelements:
Subelement NameminOccursmaxOccursDefinition
cv1unboundedInformation about an ontology or CV source and a short 'lookup' tag to refer to.
Graphical Context:
Example Context:
<cvList count="1">
  <cv cvLabel="MS" fullName="Proteomics Standards Initiative Mass Spectrometry Ontology" version="2.0.2" URI="http://psidev.sourceforge.net/ms/xml/mzdata/psi-ms.2.0.2.obo"/>
</cvList>
Notes and Constraints: One of the <cv> elements in this list MUST be the PSI MS controlled vocabulary. All <cvParam> elements in the document MUST refer to one of the <cv> elements in this list.

Element <fileDescription>

Definition: Information pertaining to the entire mzML file (i.e. not specific to any part of the data set) is stored here.
Attributes: none
Subelements:
Subelement NameminOccursmaxOccursDefinition
fileContent11This summarizes the different types of spectra that can be expected in the file. This is expected to aid processing software in skipping files that do not contain appropriate spectrum types for it.
sourceFileList01List and descriptions of the source files this mzML document was generated or derived from
contact0unboundedStructure allowing the use of a controlled (cvParam) or uncontrolled vocabulary (userParam), or a reference to a predefined set of these in this mzML file (paramGroupRef).
Graphical Context:
Example Context:
<fileDescription>
  <fileContent>
    <cvParam cvLabel="MS" accession="MS:1000580" name="MSn spectrum" value=""/>
  </fileContent>
  <sourceFileList count="1">
  ...
</fileDescription>

Element <referenceableParamGroupList>

Definition: Container for a list of referenceableParamGroups
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredThe number of ParamGroups defined in this mzML file.
Subelements:
Subelement NameminOccursmaxOccursDefinition
referenceableParamGroup1unboundedParamGroup that can be referenced from elsewhere in this mzML document by using the 'paramGroupRef' element in that location to reference the 'id' attribute value of this element.
Graphical Context:
Example Context:
<referenceableParamGroupList count="2">
  <referenceableParamGroup id="CommonMS1SpectrumParams">
    <cvParam cvLabel="MS" accession="MS:1000130" name="positive scan" value=""/>
    <cvParam cvLabel="MS" accession="MS:1000498" name="full scan" value=""/>
  </referenceableParamGroup>
  ...
</referenceableParamGroupList>

Element <sampleList>

Definition: List and descriptions of samples.
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredThe number of Samples defined in this mzML file.
Subelements:
Subelement NameminOccursmaxOccursDefinition
sample1unboundedExpansible description of the sample used to generate the dataset, named in sampleName.
Graphical Context:
Example Context:
<sampleList count="1">
  <sample id="1" name="Sample1"/>
</sampleList>

Element <instrumentList>

Definition: List and descriptions of instruments.
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredThe number of instruments present in this list.
Subelements:
Subelement NameminOccursmaxOccursDefinition
instrument1unboundedDescription of the components of the mass spectrometer used
Graphical Context:
Example Context:
<instrumentList count="1">
  <instrument id="LCQ Deca">
    <cvParam cvLabel="MS" accession="MS:1000554" name="LCQ Deca" value=""/>
    <cvParam cvLabel="MS" accession="MS:1000529" name="instrument serial number" value="23433"/>
    <componentList count="3">
  ...
</instrumentList>

Element <softwareList>

Definition: List and descriptions of software used to acquire and/or process the data in this mzML file.
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredThe number of softwares defined in this mzML file.
Subelements:
Subelement NameminOccursmaxOccursDefinition
software1unboundedA piece of software.
Graphical Context:
Example Context:
<softwareList count="3">
  <software id="Bioworks">
    <softwareParam cvLabel="MS" accession="MS:1000533" name="Bioworks" version="3.3.1 sp1"/>
  </software>
  <software id="ReAdW">
  ...
</softwareList>

Element <dataProcessingList>

Definition: List and descriptions of data processing applied to this data.
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredThe number of DataProcessingTypes in this mzML file.
Subelements:
Subelement NameminOccursmaxOccursDefinition
dataProcessing1unboundedDescription of the way in which a particular software was used.
Graphical Context:
Example Context:
<dataProcessingList count="2">
  <dataProcessing id="Xcalibur Processing" softwareRef="Xcalibur">
    <processingMethod order="1">
      <cvParam cvLabel="MS" accession="MS:1000033" name="deisotoping" value="false"/>
      <cvParam cvLabel="MS" accession="MS:1000034" name="charge deconvolution" value="false"/>
  ...
</dataProcessingList>

Element <run>

Definition: The definition and specification of a mass spectrometry run.
Attributes:
Attribute NameData TypeUseDefinition
idxs:stringrequiredA unique identifier for this run.
instrumentRefxs:stringrequiredThis attribute MUST reference the 'id' of the appropriate InstrumentType.
sampleRefxs:anyURIoptionalThis attribute MUST reference the 'id' of the appropriate SampleType.
startTimeStampxs:dateTimeoptionalThe optional start timestamp of the run, in UT.
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
sourceFileRefList01Container for a list of source file references.
spectrumList11All mass spectra and the acquisitions underlying them are described and attached here. Subsidiary data arrays are also both described and attached here.
Graphical Context:
Example Context:
<run id="Exp01" instrumentRef="LCQ Deca" sampleRef="1" startTimeStamp="2007-06-27T15:23:45.00035">
  <sourceFileRefList count="1">
    <sourceFileRef ref="1"/>
  </sourceFileRefList>
  <spectrumList count="2">
  ...
</run>

Element <cv>

Definition: Information about an ontology or CV source and a short 'lookup' tag to refer to.
Attributes:
Attribute NameData TypeUseDefinition
URIxs:anyURIrequiredThe URI for the resource.
cvLabelxs:stringrequiredThe short label to be used as a reference tag with which to refer to this particular Controlled Vocabulary source description (e.g., from the cvLabel attribute, in CVParamType elements).
fullNamexs:stringrequiredThe usual name for the resource (e.g. The PSI-MS Controlled Vocabulary).
versionxs:stringoptionalThe version of the CV from which the referred-to terms are drawn.
Subelements: none
Example Context:
<cv cvLabel="MS" fullName="Proteomics Standards Initiative Mass Spectrometry Ontology" version="2.0.2" URI="http://psidev.sourceforge.net/ms/xml/mzdata/psi-ms.2.0.2.obo"/>

Element <fileContent>

Definition: This summarizes the different types of spectra that can be expected in the file. This is expected to aid processing software in skipping files that do not contain appropriate spectrum types for it.
Attributes: none
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<fileContent>
  <cvParam cvLabel="MS" accession="MS:1000580" name="MSn spectrum" value=""/>
</fileContent>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000524 (data file content) one or more times
  e.g.: MS:1000579 (MS1 spectrum)
  e.g.: MS:1000580 (MSn spectrum)
  e.g.: MS:1000581 (CRM spectrum)
  e.g.: MS:1000582 (SIM spectrum)
  e.g.: MS:1000583 (SRM spectrum)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000580" name="MSn spectrum" value=""/>

Element <sourceFileList>

Definition: List and descriptions of the source files this mzML document was generated or derived from
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredNumber of source files used in generating the instance document.
Subelements:
Subelement NameminOccursmaxOccursDefinition
sourceFile0unboundedDescription of the source file, including location and type.
Example Context:
<sourceFileList count="1">
  <sourceFile id="1" sourceFileName="tiny1.RAW" sourceFileLocation="file://F:/data/Exp01" >
    <cvParam cvLabel="MS" accession="MS:1000563" name="Xcalibur RAW file" value=""/>
    <cvParam cvLabel="MS" accession="MS:1000569" name="SHA-1" value="71be39fb2700ab2f3c8b2234b91274968b6899b1"/>
  </sourceFile>
  ...
</sourceFileList>

Element <contact>

Definition: Structure allowing the use of a controlled (cvParam) or uncontrolled vocabulary (userParam), or a reference to a predefined set of these in this mzML file (paramGroupRef).
Attributes: none
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<contact>
  <cvParam cvLabel="MS" accession="MS:1000586" name="contact name" value="William Pennington"/>
  <cvParam cvLabel="MS" accession="MS:1000587" name="contact address" value="Higglesworth University, 12 Higglesworth Avenue, 12045, HI, USA"/>
  <cvParam cvLabel="MS" accession="MS:1000588" name="contact URL" value="http://www.higglesworth.edu/"/>
  <cvParam cvLabel="MS" accession="MS:1000589" name="contact email" value="wpennington@higglesworth.edu"/>
  ...
</contact>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000585 (contact person attribute) one or more times
  e.g.: MS:1000586 (contact name)
  e.g.: MS:1000587 (contact address)
  e.g.: MS:1000588 (contact URL)
  e.g.: MS:1000589 (contact email)
  e.g.: MS:1000590 (contact organization)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000586" name="contact name" value="William Pennington"/>
<cvParam cvLabel="MS" accession="MS:1000587" name="contact address" value="Higglesworth University, 12 Higglesworth Avenue, 12045, HI, USA"/>
<cvParam cvLabel="MS" accession="MS:1000588" name="contact URL" value="http://www.higglesworth.edu/"/>
<cvParam cvLabel="MS" accession="MS:1000589" name="contact email" value="wpennington@higglesworth.edu"/>

Element <referenceableParamGroup>

Definition: ParamGroup that can be referenced from elsewhere in this mzML document by using the 'paramGroupRef' element in that location to reference the 'id' attribute value of this element.
Attributes:
Attribute NameData TypeUseDefinition
idxs:stringrequiredThe identifier with which to reference this ReferenceableParamGroup.
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<referenceableParamGroup id="CommonMS1SpectrumParams">
  <cvParam cvLabel="MS" accession="MS:1000130" name="positive scan" value=""/>
  <cvParam cvLabel="MS" accession="MS:1000498" name="full scan" value=""/>
</referenceableParamGroup>
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000130" name="positive scan" value=""/>
<cvParam cvLabel="MS" accession="MS:1000498" name="full scan" value=""/>

Element <sample>

Definition: Expansible description of the sample used to generate the dataset, named in sampleName.
Attributes:
Attribute NameData TypeUseDefinition
idxs:stringrequiredA unique identifier across the samples with which to reference this sample description.
namexs:stringoptionalAn optional name for the sample description, mostly intended as a quick mnemonic.
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<sample id="1" name="Sample1"/>
cvParam Mapping Rules:
MAY supply a *child* term of GO:0005575 (cellular_component) one or more times
MAY supply a *child* term of BTO:0000000 (brenda source tissue ontology) one or more times
MAY supply a *child* term of PATO:0001241 (quality of an object) one or more times
MAY supply a *child* term of MS:1000548 (sample attribute) one or more times
  e.g.: MS:1000001 (sample number)
  e.g.: MS:1000004 (sample mass)
  e.g.: MS:1000005 (sample volume)
  e.g.: MS:1000006 (sample concentration)
  e.g.: MS:1000053 (sample batch)

Element <instrument>

Definition: Description of the components of the mass spectrometer used
Attributes:
Attribute NameData TypeUseDefinition
idxs:stringrequiredAn identifier for this instrument that is unique across all instruments.
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
componentList11List with the different components used in the mass spectrometer. At least one source, one mass analyzer and one detector need to be specified.
instrumentSoftwareRef01Reference to a previously defined software element
Example Context:
<instrument id="LCQ Deca">
  <cvParam cvLabel="MS" accession="MS:1000554" name="LCQ Deca" value=""/>
  <cvParam cvLabel="MS" accession="MS:1000529" name="instrument serial number" value="23433"/>
  <componentList count="3">
    <source order="1">
  ...
</instrument>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000462 (ion optics) only once
  e.g.: MS:1000216 (field-free region)
  e.g.: MS:1000221 (magnetic deflection)
  e.g.: MS:1000246 (delayed extraction)
  e.g.: MS:1000275 (collision quadrupole)
  e.g.: MS:1000281 (selected ion flow tube)
  e.g.: MS:1000286 (time lag focusing)
  e.g.: MS:1000300 (reflectron)
  e.g.: MS:1000304 (accelerating voltage)
  e.g.: MS:1000307 (einzel lens)
  e.g.: MS:1000308 (electric field strength)
  et al.
MUST supply a *child* term of MS:1000496 (instrument attribute) only once
  e.g.: MS:1000032 (customization)
  e.g.: MS:1000236 (transmission)
  e.g.: MS:1000529 (instrument serial number)
MUST supply a *child* term of MS:1000031 (instrument model) only once
  e.g.: MS:1000124 (Shimadzu instrument model)
  e.g.: MS:1000139 (4000 Q TRAP)
  e.g.: MS:1000140 (4700 Proteomic Analyzer)
  e.g.: MS:1000141 (APEX IV)
  e.g.: MS:1000142 (APEX-Q)
  e.g.: MS:1000143 (API 150EX)
  e.g.: MS:1000144 (API 150EX Prep)
  e.g.: MS:1000145 (API 2000)
  e.g.: MS:1000146 (API 3000)
  e.g.: MS:1000147 (API 4000)
  et al.
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000554" name="LCQ Deca" value=""/>
<cvParam cvLabel="MS" accession="MS:1000529" name="instrument serial number" value="23433"/>

Element <software>

Definition: A piece of software.
Attributes:
Attribute NameData TypeUseDefinition
idxs:stringrequiredAn identifier for this software that is unique across all SoftwareTypes.
Subelements:
Subelement NameminOccursmaxOccursDefinition
softwareParam11A description of the software, based on CV information and a software version.
Example Context:
<software id="Bioworks">
  <softwareParam cvLabel="MS" accession="MS:1000533" name="Bioworks" version="3.3.1 sp1"/>
</software>

Element <dataProcessing>

Definition: Description of the way in which a particular software was used.
Attributes:
Attribute NameData TypeUseDefinition
idxs:stringrequiredA unique identifier for this data processing that is unique across all DataProcessingTypes.
softwareRefxs:anyURIrequiredThis attribute MUST reference the 'id' of the appropriate SoftwareType.
Subelements:
Subelement NameminOccursmaxOccursDefinition
processingMethod1unboundedDescription of the default peak processing method. This element describes the base method used in the generation of a particular mzML 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.
Example Context:
<dataProcessing id="Xcalibur Processing" softwareRef="Xcalibur">
  <processingMethod order="1">
    <cvParam cvLabel="MS" accession="MS:1000033" name="deisotoping" value="false"/>
    <cvParam cvLabel="MS" accession="MS:1000034" name="charge deconvolution" value="false"/>
    <cvParam cvLabel="MS" accession="MS:1000035" name="peak picking" value="true"/>
  ...
</dataProcessing>

Element <paramGroupRef>

Definition: A reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
Attributes:
Attribute NameData TypeUseDefinition
refxs:anyURIrequiredReference to the id attribute in a previously defined ParamGroup.
Subelements: none
Example Context:
<paramGroupRef ref="CommonMS1SpectrumParams"/>

Element <cvParam>

Definition: This element holds additional data or annotation. Only controlled values are allowed here.
Attributes:
Attribute NameData TypeUseDefinition
accessionxs:stringrequiredThe accession number of the referred-to term in the named resource (e.g.: MS:000012).
cvLabelxs:stringrequiredThe short tag for the resource as defined in the cvList in this mzML file.
namexs:stringrequiredThe actual name for the parameter, from the referred-to controlled vocabulary. This should be the preferred name associated with the specified accession number.
unitAccessionxs:stringoptionalAn optional CV accession number for the unit term associated with the value, if any (e.g., 'MS:1000137' for 'electron volt').
unitNamexs:stringoptionalAn optional CV name for the unit accession number, if any (e.g., 'electron volt' for 'MS:1000137' ).
valuexs:stringoptionalThe 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).
Subelements: none
Example Context:
<cvParam cvLabel="MS" accession="MS:1000580" name="MSn spectrum" value=""/>

Element <userParam>

Definition: Uncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Attributes:
Attribute NameData TypeUseDefinition
namexs:stringrequiredThe name for the parameter.
typexs:stringrequiredThe type of the parameter, where appropriate.
valuexs:stringrequiredThe value for the parameter, where appropriate.
Subelements: none
Example Context:


Element <sourceFileRefList>

Definition: Container for a list of source file references.
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredThis number of source files referenced in this list.
Subelements:
Subelement NameminOccursmaxOccursDefinition
sourceFileRef0unboundedReference to a previously defined sourceFile.
Graphical Context:
Example Context:
<sourceFileRefList count="1">
  <sourceFileRef ref="1"/>
</sourceFileRefList>

Element <spectrumList>

Definition: All mass spectra and the acquisitions underlying them are described and attached here. Subsidiary data arrays are also both described and attached here.
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredThe number of spectra defined in this mzML file.
Subelements:
Subelement NameminOccursmaxOccursDefinition
spectrum0unboundedThe structure that captures the generation of a peak list (including the underlying acquisitions)
Graphical Context:
Example Context:
<spectrumList count="2">
  <spectrum id="S19" scanNumber="19" msLevel="1">
    <cvParam cvLabel="MS" accession="MS:1000580" name="MSn spectrum" value=""/>
    <spectrumDescription>
      <cvParam cvLabel="MS" accession="MS:1000127" name="centroid mass spectrum" value=""/>
  ...
</spectrumList>

Element <sourceFile>

Definition: Description of the source file, including location and type.
Attributes:
Attribute NameData TypeUseDefinition
idxs:stringrequiredAn identifier for this file.
sourceFileLocationxs:anyURIrequiredURI-formatted full path to file, without actual file name appended.
sourceFileNamexs:stringrequiredName of the source file, without reference to location (either URI or local path).
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<sourceFile id="1" sourceFileName="tiny1.RAW" sourceFileLocation="file://F:/data/Exp01" >
  <cvParam cvLabel="MS" accession="MS:1000563" name="Xcalibur RAW file" value=""/>
  <cvParam cvLabel="MS" accession="MS:1000569" name="SHA-1" value="71be39fb2700ab2f3c8b2234b91274968b6899b1"/>
</sourceFile>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000561 (data file checksum type) one or more times
  e.g.: MS:1000568 (MD5)
  e.g.: MS:1000569 (SHA-1)
MUST supply a *child* term of MS:1000560 (source file type) one or more times
  e.g.: MS:1000526 (MassLynx raw format)
  e.g.: MS:1000562 (wiff file)
  e.g.: MS:1000563 (Xcalibur RAW file)
  e.g.: MS:1000564 (mzData file)
  e.g.: MS:1000565 (pkl file)
  e.g.: MS:1000566 (mzXML file)
  e.g.: MS:1000567 (yep file)
  e.g.: MS:1000584 (mzML file)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000563" name="Xcalibur RAW file" value=""/>
<cvParam cvLabel="MS" accession="MS:1000569" name="SHA-1" value="71be39fb2700ab2f3c8b2234b91274968b6899b1"/>

Element <componentList>

Definition: List with the different components used in the mass spectrometer. At least one source, one mass analyzer and one detector need to be specified.
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredThe number of components in this list.
Subelements:
Subelement NameminOccursmaxOccursDefinition
source11A source component.
analyzer11A mass analyzer (or mass filter) component.
detector11A detector component.
Example Context:
<componentList count="3">
  <source order="1">
    <cvParam cvLabel="MS" accession="MS:1000398" name="nanoelectrospray" value=""/>
  </source>
  <analyzer order="2">
  ...
</componentList>

Element <instrumentSoftwareRef>

Definition: Reference to a previously defined software element
Attributes:
Attribute NameData TypeUseDefinition
refxs:anyURIrequiredThis attribute MUST be used to reference the 'id' attribute of a software element.
Subelements: none
Example Context:
<instrumentSoftwareRef ref="Xcalibur"/>

Element <softwareParam>

Definition: A description of the software, based on CV information and a software version.
Attributes:
Attribute NameData TypeUseDefinition
accessionxs:stringrequiredThe accession number for this CV term.
cvLabelxs:stringrequiredThe CV label for this CV term.
namexs:stringrequiredThe preferred name in the CV for the accession number of this CV term.
versionxs:stringrequiredThe software version.
Subelements: none
Example Context:
<softwareParam cvLabel="MS" accession="MS:1000533" name="Bioworks" version="3.3.1 sp1"/>

Element <processingMethod>

Definition: Description of the default peak processing method. This element describes the base method used in the generation of a particular mzML 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.
Attributes:
Attribute NameData TypeUseDefinition
orderxs:nonNegativeIntegerrequiredThis attributes allows a series of consecutive steps to be placed in the correct order.
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<processingMethod order="1">
  <cvParam cvLabel="MS" accession="MS:1000033" name="deisotoping" value="false"/>
  <cvParam cvLabel="MS" accession="MS:1000034" name="charge deconvolution" value="false"/>
  <cvParam cvLabel="MS" accession="MS:1000035" name="peak picking" value="true"/>
</processingMethod>
  ...
</processingMethod>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000543 (data processing action) one or more times
  e.g.: MS:1000033 (deisotoping)
  e.g.: MS:1000034 (charge deconvolution)
  e.g.: MS:1000035 (peak picking)
  e.g.: MS:1000592 (smoothing)
  e.g.: MS:1000593 (baseline reduction)
  e.g.: MS:1000594 (low intensity data point removal)
MUST supply a *child* term of MS:1000530 (file format conversion) one or more times
  e.g.: MS:1000544 (Conversion to mzML)
  e.g.: MS:1000545 (Conversion to mzXML)
  e.g.: MS:1000546 (Conversion to mzData)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000033" name="deisotoping" value="false"/>
<cvParam cvLabel="MS" accession="MS:1000034" name="charge deconvolution" value="false"/>
<cvParam cvLabel="MS" accession="MS:1000035" name="peak picking" value="true"/>
<cvParam cvLabel="MS" accession="MS:1000544" name="Conversion to mzML" value=""/>

Element <sourceFileRef>

Definition: Reference to a previously defined sourceFile.
Attributes:
Attribute NameData TypeUseDefinition
refxs:anyURIrequiredThis attribute MUST reference the 'id' of the appropriate sourceFile.
Subelements: none
Example Context:
<sourceFileRef ref="1"/>

Element <spectrum>

Definition: The structure that captures the generation of a peak list (including the underlying acquisitions)
Attributes:
Attribute NameData TypeUseDefinition
dataProcessingRefxs:anyURIoptionalThis attribute can optionally reference the 'id' of the appropriate DataProcessingType.
idxs:stringrequiredA unique identifier for this spectrum. It should be expected that external files may use this identifier together with the mzML filename or accession to reference a particular spectrum.
msLevelxs:intrequiredThis attribute MUST give the MS level as an integer (e.g., '1' for MS, '2' for MS/MS, etc.).
scanNumberxs:intrequiredThe scan number for this spectrum.
sourceFileRefxs:anyURIoptionalThis attribute can optionally reference the 'id' of the appropriate SourceFileType.
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
spectrumDescription11Description of the parameters for the mass spectrometer for a given acquisition (or list of acquisitions).
binaryDataArray0unboundedThe structure into which encoded binary data goes. Byte ordering is always little endian (Intel style). Computers using a different endian style MUST convert to/from little endian when writing/reading mzML
Graphical Context:
Example Context:
<spectrum id="S19" scanNumber="19" msLevel="1">
  <cvParam cvLabel="MS" accession="MS:1000580" name="MSn spectrum" value=""/>
  <spectrumDescription>
    <cvParam cvLabel="MS" accession="MS:1000127" name="centroid mass spectrum" value=""/>
    <cvParam cvLabel="MS" accession="MS:1000528" name="lowest m/z value" value="400.39"/>
  ...
</spectrum>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000559 (spectrum type) only once
  e.g.: MS:1000579 (MS1 spectrum)
  e.g.: MS:1000580 (MSn spectrum)
  e.g.: MS:1000581 (CRM spectrum)
  e.g.: MS:1000582 (SIM spectrum)
  e.g.: MS:1000583 (SRM spectrum)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000580" name="MSn spectrum" value=""/>
Notes and Constraints: id's MUST be unique within a file. They may be LSIDs or simply the scan number. scanNumbers MUST be unique within a file and MUST be monotonically increasing throughout the file, although not necessarily sequentially.

Element <source>

Definition: A source component.
Attributes:
Attribute NameData TypeUseDefinition
orderxs:intrequiredThis attribute MUST be used to indicate the order in which the components are encountered from source to detector (e.g., in a Q-TOF, the quadrupole would have the lower order number, and the TOF the higher number of the two).
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<source order="1">
  <cvParam cvLabel="MS" accession="MS:1000398" name="nanoelectrospray" value=""/>
</source>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000482 (source attribute) one or more times
  e.g.: MS:1000392 (ionization efficiency)
  e.g.: MS:1000486 (source potential)
  e.g.: MS:1000552 (maldi spot identifier)
MUST supply a *child* term of MS:1000008 (ionization type) one or more times
  e.g.: MS:1000070 (atmospheric pressure chemical ionization)
  e.g.: MS:1000071 (chemical ionization)
  e.g.: MS:1000074 (fast atom bombardment ionization)
  e.g.: MS:1000075 (matrix-assisted laser desorption ionization)
  e.g.: MS:1000227 (multiphoton ionization)
  e.g.: MS:1000239 (atmospheric pressure matrix-assisted laser desorption ionization)
  e.g.: MS:1000255 (flowing afterglow)
  e.g.: MS:1000257 (field desorption)
  e.g.: MS:1000258 (field ionization)
  e.g.: MS:1000259 (glow discharge ionization)
  et al.
MUST supply a *child* term of MS:1000007 (inlet type) one or more times
  e.g.: MS:1000055 (continuous flow fast atom bombardment)
  e.g.: MS:1000056 (direct inlet)
  e.g.: MS:1000058 (flow injection analysis)
  e.g.: MS:1000059 (inductively coupled plasma)
  e.g.: MS:1000060 (infusion)
  e.g.: MS:1000061 (jet separator)
  e.g.: MS:1000062 (membrane separator)
  e.g.: MS:1000063 (moving belt)
  e.g.: MS:1000064 (moving wire)
  e.g.: MS:1000065 (open split)
  et al.
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000398" name="nanoelectrospray" value=""/>

Element <analyzer>

Definition: A mass analyzer (or mass filter) component.
Attributes:
Attribute NameData TypeUseDefinition
orderxs:intrequiredThis attribute MUST be used to indicate the order in which the components are encountered from source to detector (e.g., in a Q-TOF, the quadrupole would have the lower order number, and the TOF the higher number of the two).
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<analyzer order="2">
  <cvParam cvLabel="MS" accession="MS:1000082" name="quadrupole ion trap" value=""/>
</analyzer>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000012 (resolution measurement method) one or more times
  e.g.: MS:1000085 (baseline)
  e.g.: MS:1000086 (full width at half-maximum)
  e.g.: MS:1000087 (ten percent valley)
MUST supply a *child* term of MS:1000480 (mass analyzer attribute) one or more times
  e.g.: MS:1000014 (accuracy)
  e.g.: MS:1000022 (TOF Total Path Length)
  e.g.: MS:1000024 (final MS exponent)
  e.g.: MS:1000025 (magnetic field strength)
  e.g.: MS:1000105 (reflectron off)
  e.g.: MS:1000106 (reflectron on)
MUST supply a *child* term of MS:1000443 (mass analyzer type) one or more times
  e.g.: MS:1000078 (axial ejection linear ion trap)
  e.g.: MS:1000079 (fourier transform ion cyclotron resonance mass spectrometer)
  e.g.: MS:1000080 (magnetic sector)
  e.g.: MS:1000081 (quadrupole)
  e.g.: MS:1000082 (quadrupole ion trap)
  e.g.: MS:1000083 (radial ejection linear ion trap)
  e.g.: MS:1000084 (time-of-flight)
  e.g.: MS:1000254 (electrostatic energy analyzer)
  e.g.: MS:1000284 (stored waveform inverse fourier transform)
  e.g.: MS:1000288 (cyclotron)
  et al.
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000082" name="quadrupole ion trap" value=""/>

Element <detector>

Definition: A detector component.
Attributes:
Attribute NameData TypeUseDefinition
orderxs:intrequiredThis attribute MUST be used to indicate the order in which the components are encountered from source to detector (e.g., in a Q-TOF, the quadrupole would have the lower order number, and the TOF the higher number of the two).
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<detector order="3">
  <cvParam cvLabel="MS" accession="MS:1000253" name="electron multiplier" value=""/>
</detector>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000026 (detector type) only once
  e.g.: MS:1000107 (channeltron)
  e.g.: MS:1000108 (conversion dynode electron multiplier)
  e.g.: MS:1000109 (conversion dynode photomultiplier)
  e.g.: MS:1000110 (daly detector)
  e.g.: MS:1000111 (electron multiplier tube)
  e.g.: MS:1000112 (faraday cup)
  e.g.: MS:1000113 (focal plane array)
  e.g.: MS:1000114 (microchannel plate detector)
  e.g.: MS:1000115 (multi-collector)
  e.g.: MS:1000116 (photomultiplier)
  et al.
MUST supply a *child* term of MS:1000481 (detector attribute) only once
  e.g.: MS:1000028 (detector resolution)
  e.g.: MS:1000029 (sampling frequency)
MUST supply a *child* term of MS:1000027 (detector acquisition mode) only once
  e.g.: MS:1000117 (analog-digital converter)
  e.g.: MS:1000118 (pulse counting)
  e.g.: MS:1000119 (time-digital converter)
  e.g.: MS:1000120 (transient recorder)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000253" name="electron multiplier" value=""/>

Element <spectrumDescription>

Definition: Description of the parameters for the mass spectrometer for a given acquisition (or list of acquisitions).
Attributes: none
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
acquisitionList01List and descriptions of acquisitions .
precursorList01List and descriptions of precursors to the spectrum currently being described.
scan01-
Graphical Context:
Example Context:
<spectrumDescription>
  <cvParam cvLabel="MS" accession="MS:1000127" name="centroid mass spectrum" value=""/>
  <cvParam cvLabel="MS" accession="MS:1000528" name="lowest m/z value" value="400.39"/>
  <cvParam cvLabel="MS" accession="MS:1000527" name="highest m/z value" value="1795.56"/>
  <cvParam cvLabel="MS" accession="MS:1000504" name="base peak m/z" value="445.347"/>
  ...
</spectrumDescription>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000525 (spectrum representation) only once
  e.g.: MS:1000127 (centroid mass spectrum)
  e.g.: MS:1000128 (profile mass spectrum)
MUST supply a *child* term of MS:1000499 (spectrum attribute) one or more times
  e.g.: MS:1000285 (total ion current)
  e.g.: MS:1000504 (base peak m/z)
  e.g.: MS:1000505 (base peak intensity)
  e.g.: MS:1000527 (highest m/z value)
  e.g.: MS:1000528 (lowest m/z value)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000127" name="centroid mass spectrum" value=""/>
<cvParam cvLabel="MS" accession="MS:1000528" name="lowest m/z value" value="400.39"/>
<cvParam cvLabel="MS" accession="MS:1000527" name="highest m/z value" value="1795.56"/>
<cvParam cvLabel="MS" accession="MS:1000504" name="base peak m/z" value="445.347"/>
<cvParam cvLabel="MS" accession="MS:1000505" name="base peak intensity" value="120053"/>
<cvParam cvLabel="MS" accession="MS:1000285" name="total ion current" value="1.66755e+007"/>

Element <binaryDataArray>

Definition: The structure into which encoded binary data goes. Byte ordering is always little endian (Intel style). Computers using a different endian style MUST convert to/from little endian when writing/reading mzML
Attributes:
Attribute NameData TypeUseDefinition
arrayLengthxs:nonNegativeIntegerrequiredThe original length of the data array.
dataProcessingRefxs:stringoptionalThis optional attribute may reference the 'id' attribute of the appropriate DataProcessingType.
encodedLengthxs:nonNegativeIntegerrequiredThe encoded length of the binary data array.
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
binary11The actual encoded binary data.
Graphical Context:
Example Context:
<binaryDataArray arrayLength="1313" encodedLength="5000" dataProcessingRef="Xcalibur Processing">
  <cvParam cvLabel="MS" accession="MS:1000521" name="32-bit float" value=""/>
  <cvParam cvLabel="MS" accession="MS:1000576" name="no compression" value=""/>
  <cvParam cvLabel="MS" accession="MS:1000514" name="m/z array" value=""/>
  <binary>AAAAwDsGeUAAAADAkBB5QAAAAACTIHlAAAAAgHgzeUAAAABAkj...</binary>
  ...
</binaryDataArray>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000572 (binary data compression type) only once
  e.g.: MS:1000574 (zlib compression)
  e.g.: MS:1000576 (no compression)
MUST supply a *child* term of MS:1000513 (binary data array) only once
  e.g.: MS:1000514 (m/z array)
  e.g.: MS:1000515 (intensity array)
  e.g.: MS:1000516 (charge array)
  e.g.: MS:1000517 (signal to noise array)
  e.g.: MS:1000595 (time array)
MUST supply a *child* term of MS:1000518 (binary data type) only once
  e.g.: MS:1000519 (32-bit integer)
  e.g.: MS:1000520 (16-bit float)
  e.g.: MS:1000521 (32-bit float)
  e.g.: MS:1000522 (64-bit integer)
  e.g.: MS:1000523 (64-bit float)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000521" name="32-bit float" value=""/>
<cvParam cvLabel="MS" accession="MS:1000576" name="no compression" value=""/>
<cvParam cvLabel="MS" accession="MS:1000514" name="m/z array" value=""/>
<cvParam cvLabel="MS" accession="MS:1000515" name="intensity array" value=""/>
<cvParam cvLabel="MS" accession="MS:1000523" name="64-bit float" value=""/>

Element <acquisitionList>

Definition: List and descriptions of acquisitions .
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredthe number of acquisitions defined in this mzML file.
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
acquisition1unboundedScan or acquisition from original raw file used to create this peak list, as specified in sourceFile.
Graphical Context:
Example Context:


Element <precursorList>

Definition: List and descriptions of precursors to the spectrum currently being described.
Attributes:
Attribute NameData TypeUseDefinition
countxs:nonNegativeIntegerrequiredThe number of precursors in this list.
Subelements:
Subelement NameminOccursmaxOccursDefinition
precursor1unboundedThe method of precursor ion selection and activation
Graphical Context:
Example Context:
<precursorList count="1">
  <precursor spectrumRef="19">
    <ionSelection>
      <cvParam cvLabel="MS" accession="MS:1000040" name="m/z" value="445.34"/>
      <cvParam cvLabel="MS" accession="MS:1000041" name="charge state" value="2"/>
  ...
</precursorList>

Element <scan>

Definition: The instrument's 'run time' parameters; common to the whole of this spectrum.
Attributes:
Attribute NameData TypeUseDefinition
instrumentRefxs:stringrequiredThis attribute MUST reference the 'id' attribute of the appropriate InstrumentType.
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
selectionWindowList11Container for a list of select windows.
Graphical Context:
Example Context:
<scan instrumentRef="LCQ Deca">
  <paramGroupRef ref="CommonMS1SpectrumParams"/>
  <cvParam cvLabel="MS" accession="MS:1000016" name="scan time" value="5.890500" unitAccession="MS:1000038" unitName="minute"/>
  <cvParam cvLabel="MS" accession="MS:1000512" name="filter string" value="+ c NSI Full ms [ 400.00-1800.00]"/>
  <selectionWindowList count="1">
  ...
</scan>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000465 (scan polarity) only once
  e.g.: MS:1000129 (negative scan)
  e.g.: MS:1000130 (positive scan)
MUST supply a *child* term of MS:1000503 (scan attribute) one or more times
  e.g.: MS:1000011 (mass resolution)
  e.g.: MS:1000015 (scan rate)
  e.g.: MS:1000016 (scan time)
  e.g.: MS:1000023 (isolation width)
  e.g.: MS:1000511 (ms level)
  e.g.: MS:1000512 (filter string)
MUST supply a *child* term of MS:1000018 (scan direction) only once
  e.g.: MS:1000092 (decreasing m/z scan)
  e.g.: MS:1000093 (increasing m/z scan)
MUST supply a *child* term of MS:1000019 (scan law) only once
  e.g.: MS:1000094 (exponential)
  e.g.: MS:1000095 (linear)
  e.g.: MS:1000096 (quadratic)
MUST supply a *child* term of MS:1000020 (scanning method) only once
  e.g.: MS:1000100 (precursor ion scan)
  e.g.: MS:1000101 (product ion scan)
  e.g.: MS:1000205 (selected ion monitoring)
  e.g.: MS:1000206 (selected reaction monitoring)
  e.g.: MS:1000244 (consecutive reaction monitoring)
  e.g.: MS:1000323 (constant neutral loss scan)
  e.g.: MS:1000324 (constant neutral gain scan)
  e.g.: MS:1000497 (zoom scan)
  e.g.: MS:1000498 (full scan)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000016" name="scan time" value="5.890500" unitAccession="MS:1000038" unitName="minute"/>
<cvParam cvLabel="MS" accession="MS:1000512" name="filter string" value="+ c NSI Full ms [ 400.00-1800.00]"/>

Element <binary>

Definition: The actual encoded binary data.
Attributes: none
Subelements: none
Example Context:


Element <acquisition>

Definition: Scan or acquisition from original raw file used to create this peak list, as specified in sourceFile.
Attributes:
Attribute NameData TypeUseDefinition
acqNumberxs:intrequiredA number for this acquisition.
sourceFileRefxs:anyURIrequiredThis attribute MUST reference the 'id' attribute of the appropriate SourceFileType.
spectrumRefxs:anyURIrequiredThis attribute MUST reference the 'id' attribute of the appropriate SpectrumType.
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:

cvParam Mapping Rules:
MUST supply a *child* term of MS:1000570 (spectra combination) one or more times
  e.g.: MS:1000571 (sum of spectra)
  e.g.: MS:1000573 (median of spectra)
  e.g.: MS:1000575 (mean of spectra)

Element <precursor>

Definition: The method of precursor ion selection and activation
Attributes:
Attribute NameData TypeUseDefinition
spectrumRefxs:anyURIoptionalReference to the id attribute of the spectrum from which the precursor was selected.
Subelements:
Subelement NameminOccursmaxOccursDefinition
ionSelection11This 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.
activation11The type and energy level used for activation.
Example Context:
<precursor spectrumRef="19">
  <ionSelection>
    <cvParam cvLabel="MS" accession="MS:1000040" name="m/z" value="445.34"/>
    <cvParam cvLabel="MS" accession="MS:1000041" name="charge state" value="2"/>
  </ionSelection>
  ...
</precursor>

Element <selectionWindowList>

Definition: Container for a list of select windows.
Attributes:
Attribute NameData TypeUseDefinition
countxs:intrequiredThe number of selection windows defined in this list.
Subelements:
Subelement NameminOccursmaxOccursDefinition
selectionWindow1unboundedDefinition of a selection window.
Example Context:
<selectionWindowList count="1">
  <selectionWindow>
    <cvParam cvLabel="MS" accession="MS:1000501" name="scan m/z lower limit" value="400.000000"/>
    <cvParam cvLabel="MS" accession="MS:1000500" name="scan m/z upper limit" value="1800.000000"/>
  </selectionWindow>
  ...
</selectionWindowList>

Element <ionSelection>

Definition: 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.
Attributes: none
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<ionSelection>
  <cvParam cvLabel="MS" accession="MS:1000040" name="m/z" value="445.34"/>
  <cvParam cvLabel="MS" accession="MS:1000041" name="charge state" value="2"/>
</ionSelection>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000455 (ion selection attribute) one or more times
  e.g.: MS:1000040 (m/z)
  e.g.: MS:1000041 (charge state)
  e.g.: MS:1000042 (intensity)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000040" name="m/z" value="445.34"/>
<cvParam cvLabel="MS" accession="MS:1000041" name="charge state" value="2"/>

Element <activation>

Definition: The type and energy level used for activation.
Attributes: none
Subelements:
Subelement NameminOccursmaxOccursDefinition
paramGroupRef0unboundedA reference to a previously defined ParamGroup, which is a reusable container of one or more cvParams.
cvParam0unboundedThis element holds additional data or annotation. Only controlled values are allowed here.
userParam0unboundedUncontrolled user parameters (essentially allowing free text). Before using these, one should verify whether there is an appropriate CV term available, and if so, use the CV term instead
Example Context:
<activation>
  <cvParam cvLabel="MS" accession="MS:1000133" name="collision-induced dissociation" value=""/>
  <cvParam cvLabel="MS" accession="MS:1000045" name="collision energy" value="35.00" unitAccession="MS:1000137" unitName="Electron Volt"/>
</activation>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000456 (precursor activation) one or more times
  e.g.: MS:1000045 (collision energy)
  e.g.: MS:1000133 (collision-induced dissociation)
  e.g.: MS:1000134 (plasma desorption)
  e.g.: MS:1000135 (post-source decay)
  e.g.: MS:1000136 (surface-induced dissociation)
  e.g.: MS:1000242 (blackbody infrared radiative dissociation)
  e.g.: MS:1000245 (charge stripping)
  e.g.: MS:1000246 (delayed extraction)
  e.g.: MS:1000250 (electron capture dissociation)
  e.g.: MS:1000262 (infrared multiphoton dissociation)
  et al.
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000133" name="collision-induced dissociation" value=""/>
<cvParam cvLabel="MS" accession="MS:1000045" name="collision energy" value="35.00" unitAccession="MS:1000137" unitName="Electron Volt"/>

Element <selectionWindow>

Definition: Definition of a selection window.
Attributes: none
Subelements:
Subelement NameminOccursmaxOccursDefinition
cvParam2unboundedTwo or more CV parameters defining the selection window.
Example Context:
<selectionWindow>
  <cvParam cvLabel="MS" accession="MS:1000501" name="scan m/z lower limit" value="400.000000"/>
  <cvParam cvLabel="MS" accession="MS:1000500" name="scan m/z upper limit" value="1800.000000"/>
</selectionWindow>
cvParam Mapping Rules:
MUST supply a *child* term of MS:1000549 (selection window attribute) one or more times
  e.g.: MS:1000500 (scan m/z upper limit)
  e.g.: MS:1000501 (scan m/z lower limit)
  e.g.: MS:1000502 (dwell time)
Example cvParams:
<cvParam cvLabel="MS" accession="MS:1000501" name="scan m/z lower limit" value="400.000000"/>
<cvParam cvLabel="MS" accession="MS:1000500" name="scan m/z upper limit" value="1800.000000"/>