diff macro.xml @ 0:59c8bad5f6bc draft default tip

planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/blob/master/tools/kmd_hmdb_data_plot/ commit 7fa454b6a4268b89fe18043e8dd10f30a7b4c7ca
author workflow4metabolomics
date Tue, 29 Aug 2023 09:45:16 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/macro.xml	Tue Aug 29 09:45:16 2023 +0000
@@ -0,0 +1,170 @@
+<macros>
+
+  <token name="@DEFAULT_MZ@">303.05</token>
+  <token name="@DEFAULT_TOLERENCE@">10.0</token>
+  <token name="@DEFAULT_ADDUCT@">M+H</token>
+  <token name="@DEFAULT_DATABASE@">HMDB</token>
+
+  <xml name="get_data_inputs">
+    <param argument="--mz-ratio" type="float" min="1" max="1000" value="@DEFAULT_MZ@"
+      help="
+        The database will give us all compounds with m/z = 
+        m/zRatio±MassTolerance and we will plot those
+        compounds.
+        Choose the mass tolerance according to this information.
+      "
+      label="M/z Ratio"
+    />
+
+    <param argument="--mass-tolerance" type="float" value="@DEFAULT_TOLERENCE@"
+      help="
+        The database will give us all compounds with m/z = 
+        m/zRatio±MassTolerance and we will plot those
+        compounds.
+        Choose the mass tolerance according to this information.
+      "
+      label="Mass Tolerance"
+    />
+
+    <param argument="--database" type="select" value="@DEFAULT_DATABASE@"
+      label="Which database to interrogate"
+      help="
+        Those databases are sub-databases of KMD-HMDB Metabolites
+        and contains compounds with their KMD.
+      "
+    >
+      <option selected="true" value="hmdb">HMDB</option>
+      <option value="farid">KMD Metabolites</option>
+    </param>
+
+    <param argument="--adducts" type="select" multiple="true"
+      label="Adducts"
+      help="Which adducts to retrieve"
+    >
+      <option selected="true" value="M+H">M+H</option>
+      <option value="M+2H">M+2H</option>
+      <option value="M+H+NH4">M+H+NH4</option>
+      <option value="M+H+Na">M+H+Na</option>
+      <option value="M+H+K">M+H+K</option>
+      <option value="M+ACN+2H">M+ACN+2H</option>
+      <option value="M+2Na">M+2Na</option>
+      <option value="M+H-2H2O">M+H-2H2O</option>
+      <option value="M+H-H2O">M+H-H2O</option>
+      <option value="M+NH4">M+NH4</option>
+      <option value="M+Na">M+Na</option>
+      <option value="M+CH3OH+H">M+CH3OH+H</option>
+      <option value="M+K">M+K</option>
+      <option value="M+ACN+H">M+ACN+H</option>
+      <option value="M+2Na-H">M+2Na-H</option>
+      <option value="M+IsoProp+H">M+IsoProp+H</option>
+      <option value="M+ACN+Na">M+ACN+Na</option>
+      <option value="M+2K+H">M+2K+H</option>
+      <option value="M+DMSO+H">M+DMSO+H</option>
+      <option value="M+2ACN+H">M+2ACN+H</option>
+      <option value="2M+H">2M+H</option>
+      <option value="2M+NH4">2M+NH4</option>
+      <option value="2M+Na">2M+Na</option>
+      <option value="2M+K">2M+K</option>
+      <option value="M-H">M-H</option>
+      <option value="M-2H">M-2H</option>
+      <option value="M-H2O-H">M-H2O-H</option>
+      <option value="M+Cl">M+Cl</option>
+      <option value="M+FA-H">M+FA-H</option>
+      <option value="M+Hac-H">M+Hac-H</option>
+      <option value="M-H+HCOONa">M-H+HCOONa</option>
+      <option value="M+Br">M+Br</option>
+      <option value="M+TFA-H">M+TFA-H</option>
+      <option value="2M-H">2M-H</option>
+      <option value="2M+FA-H">2M+FA-H</option>
+      <option value="2M+Hac-H">2M+Hac-H</option>
+    </param>
+  </xml>
+
+  <xml name="produce_plot_inputs">
+    <param name="tsv_input" type="data" format="tsv"
+      help="Tabular file to use to produce the plot."
+      label="A Tabular Input File"
+    />
+    <param
+      name="annotation_columns"
+      type="data_column"
+      data_ref="tsv_input"
+      use_header_names="true"
+      multiple="true"
+      optional="true"
+      help="Select columns to show when a point of the graph is hovered"
+      label="Annotation columns"
+    />
+    <param
+      name="x_columns"
+      type="data_column"
+      data_ref="tsv_input"
+      use_header_names="true"
+      optional="true"
+      multiple="true"
+      help="
+        Select one or multiple column to use as X values
+        to generate the graph. See the help section to better
+        understand the usage of multiple values
+      "
+      label="X Axis"
+    />
+    <param
+      name="y_columns"
+      type="data_column"
+      data_ref="tsv_input"
+      use_header_names="true"
+      optional="true"
+      multiple="true"
+      help="
+        Select one or multiple column to use as Y values
+        to generate the graph. See the help section to better
+        understand the usage of multiple values
+      "
+      label="Y Axis"
+    />
+  </xml>
+
+  <xml name="not_get_data">
+    <param name="mz_ratio" value="unknown" type="hidden" />
+    <param name="mass_tolerance" value="unknown" type="hidden" />
+    <param name="database" value="unknown" type="hidden" />
+    <param name="adducts" value="unknown" type="hidden" />
+  </xml>
+
+  <xml name="not_produce_plot">
+    <param name="tsv_input" value="unknown" type="hidden" />
+    <param name="annotation_columns" type="hidden" />
+    <param name="x_columns" type="hidden" />
+    <param name="y_columns" type="hidden" />
+  </xml>
+
+  <xml name="get_data_outputs">
+    <data name="output_path" format="tsv"
+      label="tsv - ${tool.name} on ${what.mz_ratio}±${what.mass_tolerance} - ${what.database}"
+    >
+      <filter>"get_data" in str(what['to_do'])</filter>
+      <actions>
+        <action name="column_names" type="metadata"
+          default="database,metabolite_name,chemical_formula,hmdb_id,inchikey,compound_id,adduct,kendricks_mass,kendricks_mass_defect,monisotopic_molecular_weight,nominal_mass,polarity,annotation_id"
+        />
+      </actions>
+    </data>
+  </xml>
+
+  <xml name="produce_plot_outputs">
+    <data name="output" format="html"
+      label="html - ${tool.name} on ${
+      ' - '
+      + str($what['mz_ratio'])
+      + '±' + str($what['mass_tolerance'])
+      + ' - ' + str($what['database'])
+      if 'get_data' in str($what['to_do'])
+      else ''' ' ''' + $what.csv_input.name + ''' ' '''
+    }"
+    >
+      <filter>"produce_plot" in str(what['to_do'])</filter>
+    </data>
+  </xml>
+
+</macros>
\ No newline at end of file