21. Skip to content

21. mzPeak metadata data processing method list

Describe the JSON format of data processing method list

21.1 Use cases

The data processing section is meant to describe a data processing pipeline, assigning one or more MS:1000452|data transformations actions to each step associated with a particular piece of software, with additional user-defined parameters if necessary. Data processing pipelines may combine steps that do different things, which are only important in certain contexts.

An example pipeline with two stages
// A single data processing pipeline
{
  "id": "pwiz_Reader_Thermo_conversion",
  "methods": [
    { // First `processing_method`
      "order": 0,
      "parameters": [
        {
          "accession": "MS:1000544",
          "name": "Conversion to mzML",
        },
      ],
      "software_reference": "pwiz"
    },
    { // Second `processing_method`
      "order": 1,
      "parameters": [
        {
          "accession": "MS:1000035",
          "name": "peak picking",
        },
        {
          "accession": "MS:1000593",
          "name": "baseline reduction",
        },
        {
          "accession": "MS:1000780",
          "name": "precursor recalculation"
        }
      ],
      "software_reference": "superSecretTool3214"
    }
  ]
}

The pipeline above converted some Thermo data to mzML with ProteoWizard, and then another tool (imaginary) performs some transformation of the signal data and recalculates the precursor ion m/z. When referenced in another context, the caller is responsible for reasoning about which components of the processing steps are relevant to that context. For instance, this same data processing pipeline does precursor recalculation, but that is meaningless in the context of the m/z array.

File writers SHOULD take care to avoid introducing contradictory steps like conflicting peak picking methods. If multiple configurations that the writer wants to distinguish between, the writer SHOULD write multiple data_processing_method entries and reference them

21.2 FAIR Data and Reproducibility

When publishing files that contain processed data, data transformations alone may not be enough to explain how the software used produced the data published. Providing a MS:1001885|command-line parameters parameter that embeds the command line used may help future readers to understand how the software was instructed to operate. This is a compromise between creating a parameter for each and every setting or argument that a piece of software took, which tells you semantically what was done in-so-far as the software functionality can be defined by its inputs, but doesn't explain how it was told to do that. The command line tells the reader how the software was invoked, and the same software and version with the same command line and input data should, if the software is reproducible, be able to recreate the same output.

Type: array Items: 21.3.1 data_processing_method


21.3 Definitions

21.3.1 data_processing_method

Describes a single instrument configuration that was used. Analogous to https://peptideatlas.org/tmp/mzML1.1.0.html#dataProcessingList

Type: object

21.3.1.1 Properties

Property Type Required Description
id string   A unique identifier for the data processing method.
methods array of 21.3.2 processing_method    

21.3.1.2 Property Details

id - string (optional)

A unique identifier for the data processing method.

methods - array of 21.3.2 processing_method (optional)


21.3.2 processing_method

Describes a single step of data processing.

Type: object

21.3.2.1 Properties

Property Type Required Description
order integer   The order in which the step is applied in the data processing pipeline.
software_reference string   The identifier for a software entry that performed this operation.
parameters array of param   Additional parameters describing this data processing step denoting actions, parameters, and other descriptors.

21.3.2.2 Property Details

order - integer (optional)

The order in which the step is applied in the data processing pipeline.

software_reference - string (optional)

The identifier for a software entry that performed this operation.

parameters - array of param (optional)

Additional parameters describing this data processing step denoting actions, parameters, and other descriptors.