changeset 0:897bc123f6c5 draft

planemo upload for repository https://forgemia.inra.fr/metexplore/met4j-galaxy commit e28ca123295d50b85ba872e5a4720fd72697ecc3
author metexplore
date Thu, 13 Mar 2025 15:49:53 +0000
parents
children be58dd7c74ee
files Sbml2Tab.xml macros.xml test-data/toy_model.xml
diffstat 3 files changed, 202 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Sbml2Tab.xml	Thu Mar 13 15:49:53 2025 +0000
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<tool id="met4j_Sbml2Tab" name="Sbml2Tab" version="@TOOL_VERSION@">
+  <description>Create a tabulated file listing reaction attributes from a SBML file</description>
+  <macros>
+    <import>macros.xml</import>
+  </macros>
+  <expand macro="bio_tools"/>
+  <expand macro="requirements"/>
+  <command detect_errors="exit_code"><![CDATA[met4j fr.inrae.toulouse.metexplore.met4j_toolbox.convert.Sbml2Tab#if str($i):
+ -irr "$i"
+#end if
+#if str($r):
+ -rev "$r"
+#end if
+ -i "$in"
+ -o "$out"
+]]></command>
+  <inputs>
+    <param argument="-irr" label="[--&gt;] String for irreversible reaction" name="i" optional="true" type="text" value="--&gt;">
+      <sanitizer invalid_char="_">
+        <valid initial="string.printable"/>
+      </sanitizer>
+    </param>
+    <param argument="-rev" label="[&lt;==&gt;] String for reversible reaction" name="r" optional="true" type="text" value="&lt;==&gt;">
+      <sanitizer invalid_char="_">
+        <valid initial="string.printable"/>
+      </sanitizer>
+    </param>
+    <param argument="-i" format="sbml" label="Sbml file" name="in" optional="false" type="data" value=""/>
+  </inputs>
+  <outputs>
+    <data format="tsv" name="out"/>
+  </outputs>
+  <tests>
+    <test>
+      <param name="in" value="toy_model.xml"/>
+      <output ftype="tsv" name="out">
+        <assert_contents>
+          <has_n_lines n="8"/>
+          <has_n_columns n="9"/>
+          <has_text text="2.0 E[c] --&gt; D[c]"/>
+          <has_text text="A[c] &lt;==&gt; B[c]"/>
+        </assert_contents>
+      </output>
+    </test>
+    <test>
+      <param name="in" value="toy_model.xml"/>
+      <param name="i" value="-&gt;"/>
+      <param name="r" value="="/>
+      <output ftype="tsv" name="out">
+        <assert_contents>
+          <has_n_lines n="8"/>
+          <has_n_columns n="9"/>
+          <has_text text="2.0 E[c] -&gt; D[c]"/>
+          <has_text text="A[c] = B[c]"/>
+        </assert_contents>
+      </output>
+    </test>
+  </tests>
+  <help><![CDATA[Create a tabulated file listing reaction attributes from a SBML file
+@ATTRIBUTION@]]></help>
+  <citations/>
+</tool>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/macros.xml	Thu Mar 13 15:49:53 2025 +0000
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+<macros>
+    <xml name="requirements">
+        <requirements>
+            <requirement type="package" version="2.0.1">met4j</requirement>
+            <yield/>
+        </requirements>
+    </xml>
+    <xml name="bio_tools">
+        <xrefs>
+            <xref type="bio.tools">met4j</xref>
+        </xrefs>
+    </xml>
+    <token name="@TOOL_VERSION@">2.0.1</token>
+    <token name="@ATTRIBUTION@"><![CDATA[
+**Attribution**
+
+This Galaxy tool relies on the met4j toolkit which is dedicated to the structural analysis of metabolic networks (https://forgemia.inra.fr/metexplore/met4j)
+    ]]></token>
+</macros>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/toy_model.xml	Thu Mar 13 15:49:53 2025 +0000
@@ -0,0 +1,119 @@
+<?xml version="1.0" encoding='UTF-8' ?>
+<sbml fbc:required="false" groups:required="false" level="3" version="1"
+	xmlns="http://www.sbml.org/sbml/level3/version1/core"
+	xmlns:fbc="http://www.sbml.org/sbml/level3/version1/fbc/version2"
+	xmlns:groups="http://www.sbml.org/sbml/level3/version1/groups/version1">
+	<model fbc:strict="true" name="toy model">
+		<listOfUnitDefinitions>
+			<unitDefinition id="mmol_per_gDW_per_hr" name="mmol_per_gDW_per_hr">
+				<listOfUnits>
+					<unit exponent="-1" kind="gram" multiplier="1" scale="0"/>
+					<unit exponent="1" kind="mole" multiplier="1" scale="-3"/>
+					<unit exponent="-1" kind="second" multiplier="0.00027777" scale="0"/>
+				</listOfUnits>
+			</unitDefinition>
+		</listOfUnitDefinitions>
+		<listOfCompartments>
+			<compartment constant="false" id="c" name="Cytosol"/>
+			<compartment constant="false" id="e" name="Extracellular"/>
+		</listOfCompartments>
+		<listOfSpecies>
+			<species boundaryCondition="false" compartment="e" constant="false" fbc:charge="0" hasOnlySubstanceUnits="false" id="A_ext" name="A_ext">
+				<notes>
+					<body xmlns="http://www.w3.org/1999/xhtml">
+						<p>SMILES: C[C@@H](C(=O)O)NC</p>
+					</body>
+				</notes>
+				<annotation>
+					<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+						xmlns:bqbiol="http://biomodels.net/biology-qualifiers/">
+						<rdf:Description rdf:about="#A_ext">
+							<bqbiol:is>
+								<in:inchi xmlns:in="https://biomodels.net/inchi">InChI=1S/C2H6O/c1-2-3/h3H,2H2,1H3</in:inchi>
+							</bqbiol:is>
+						</rdf:Description>
+					</rdf:RDF>
+				</annotation>
+
+			</species>
+			<species boundaryCondition="false" compartment="c" constant="false" fbc:charge="0" hasOnlySubstanceUnits="false" id="A" name="A"/>
+			<species boundaryCondition="false" compartment="c" constant="false" fbc:charge="0" hasOnlySubstanceUnits="false" id="B" name="B"/>
+			<species boundaryCondition="false" compartment="c" constant="false" fbc:charge="0" hasOnlySubstanceUnits="false" id="C" name="C"/>
+			<species boundaryCondition="false" compartment="c" constant="false" fbc:charge="0" hasOnlySubstanceUnits="false" id="D" name="D"/>
+			<species boundaryCondition="false" compartment="e" constant="false" fbc:charge="0" hasOnlySubstanceUnits="false" id="D_ext" name="D_ext"/>
+			<species boundaryCondition="false" compartment="e" constant="false" fbc:charge="0" hasOnlySubstanceUnits="false" id="E_ext" name="E_ext"/>
+			<species boundaryCondition="false" compartment="c" constant="false" fbc:charge="0" hasOnlySubstanceUnits="false" id="E" name="E"/>
+		</listOfSpecies>
+		<listOfParameters>
+			<parameter constant="true" id="cobra_default_lb" name="cobra default - lb" sboTerm="SBO:0000626" units="mmol_per_gDW_per_hr" value="-100000.0"/>
+			<parameter constant="true" id="cobra_default_ub" name="cobra default - ub" sboTerm="SBO:0000626" units="mmol_per_gDW_per_hr" value="100000.0"/>
+			<parameter constant="true" id="cobra_0_bound" name="cobra 0 - bound" sboTerm="SBO:0000625" units="mmol_per_gDW_per_hr" value="0.0"/>
+			<parameter constant="true" id="reac1_upper_bound" name="reac1 upper bound" sboTerm="SBO:0000625" units="mmol_per_gDW_per_hr" value="10.0"/>
+			<parameter constant="true" id="reac6_upper_bound" name="reac6 upper bound" sboTerm="SBO:0000625" units="mmol_per_gDW_per_hr" value="3.0"/>
+			<parameter constant="true" id="reac2_upper_bound" name="reac2 upper bound" sboTerm="SBO:0000625" units="mmol_per_gDW_per_hr" value="100000.0"/>
+			<parameter constant="true" id="reac3_upper_bound" name="reac3 upper bound" sboTerm="SBO:0000625" units="mmol_per_gDW_per_hr" value="100000.0"/>
+			<parameter constant="true" id="reac4_upper_bound" name="reac4 upper bound" sboTerm="SBO:0000625" units="mmol_per_gDW_per_hr" value="100000.0"/>
+			<parameter constant="true" id="reac5_upper_bound" name="reac5 upper bound" sboTerm="SBO:0000625" units="mmol_per_gDW_per_hr" value="100000.0"/>
+			<parameter constant="true" id="reac7_upper_bound" name="reac7 upper bound" sboTerm="SBO:0000625" units="mmol_per_gDW_per_hr" value="100000.0"/>
+		</listOfParameters>
+		<listOfReactions>
+			<reaction fast="false" fbc:lowerFluxBound="cobra_0_bound" fbc:upperFluxBound="reac1_upper_bound" id="reac1" name="reac1" reversible="false">
+				<listOfReactants>
+					<speciesReference constant="true" species="A_ext" stoichiometry="1.0"/>
+				</listOfReactants>
+				<listOfProducts>
+					<speciesReference constant="true" species="A" stoichiometry="1.0"/>
+				</listOfProducts>
+			</reaction>
+			<reaction fast="false" fbc:lowerFluxBound="cobra_default_lb" fbc:upperFluxBound="reac2_upper_bound" id="reac2" name="reac2" reversible="true">
+				<listOfReactants>
+					<speciesReference constant="true" species="A" stoichiometry="1.0"/>
+				</listOfReactants>
+				<listOfProducts>
+					<speciesReference constant="true" species="B" stoichiometry="1.0"/>
+				</listOfProducts>
+			</reaction>
+			<reaction fast="false" fbc:lowerFluxBound="cobra_0_bound" fbc:upperFluxBound="reac3_upper_bound" id="reac3" name="reac3" reversible="false">
+				<listOfReactants>
+					<speciesReference constant="true" species="A" stoichiometry="1.0"/>
+				</listOfReactants>
+				<listOfProducts>
+					<speciesReference constant="true" species="C" stoichiometry="1.0"/>
+				</listOfProducts>
+			</reaction>
+			<reaction fast="false" fbc:lowerFluxBound="cobra_0_bound" fbc:upperFluxBound="reac4_upper_bound" id="reac4" name="reac4" reversible="false">
+				<listOfReactants>
+					<speciesReference constant="true" species="B" stoichiometry="1.0"/>
+					<speciesReference constant="true" species="C" stoichiometry="1.0"/>
+				</listOfReactants>
+				<listOfProducts>
+					<speciesReference constant="true" species="D" stoichiometry="1.5"/>
+				</listOfProducts>
+			</reaction>
+			<reaction fast="false" fbc:lowerFluxBound="cobra_0_bound" fbc:upperFluxBound="reac5_upper_bound" id="reac5" name="reac5" reversible="false">
+				<listOfReactants>
+					<speciesReference constant="true" species="D" stoichiometry="1.0"/>
+				</listOfReactants>
+				<listOfProducts>
+					<speciesReference constant="true" species="D_ext" stoichiometry="1.0"/>
+				</listOfProducts>
+			</reaction>
+			<reaction fast="false" fbc:lowerFluxBound="cobra_0_bound" fbc:upperFluxBound="reac6_upper_bound" id="reac6" name="reac6" reversible="false">
+				<listOfReactants>
+					<speciesReference constant="true" species="E_ext" stoichiometry="1.0"/>
+				</listOfReactants>
+				<listOfProducts>
+					<speciesReference constant="true" species="E" stoichiometry="1.0"/>
+				</listOfProducts>
+			</reaction>
+			<reaction fast="false" fbc:lowerFluxBound="cobra_0_bound" fbc:upperFluxBound="reac7_upper_bound" id="reac7" name="reac7" reversible="false">
+				<listOfReactants>
+					<speciesReference constant="true" species="E" stoichiometry="2.0"/>
+				</listOfReactants>
+				<listOfProducts>
+					<speciesReference constant="true" species="D" stoichiometry="1.0"/>
+				</listOfProducts>
+			</reaction>
+		</listOfReactions>
+	</model>
+</sbml>
\ No newline at end of file