Hello,
I have downloaded the most recent yeast genome-scale metabolic reconstruction as an SBML file from GitHub: https://github.com/SysBioChalmers/yeast-GEM.
My goal is to add reaction kinetic parameters using SBMLsqueezer. I have opened the file and tried running Squeeze
. I'm using default options, except that I've disabled the setting "Consider all reactions to be enzyme-catalyzed" (it was turned on by default). After clicking Next
, the Squeeze operation starts running and quickly jumps from around 10% to 100%. When checking the results, it looks like from one point on, the reactions have missing values ( " - " ) for the KineticLaw and Formula fields. When clicking on one of these missing values, the program mentions a Java exception: (java.lang.NullPointerException
). Here as a screenshot with the error and the missing parameter values: https://imgur.com/a/6aONNU6.
Assuming that this was a problem with parsing the SBML file, I converted it from SBML L3V1 to SBML L2V4 using COPASI. This time, the Squeeze operation appears to run fine. However, after clicking "Finish", I am unable to save the modifications to the SBML file. If I click "Save as", then no file is being generated. If I click "Save", the SBML file has a size of 0 bytes.
I am attaching a ZIP file with the two SBML files (L2V4 and L3V1).
yeastGEM.zip
I also tried running the SBMLsqueezer CLI. However, I ran into troubles with this as well.
First, when running with the SBML L3V1 file, it complained about an SBO term:
java -Xmx1500m -jar SBMLsqueezer_v2.1.jar --sbml-in-file=yeastGEM-L3V1.xml --sbml-out-file=out-L2V4.xml --all-reactions-as-enzyme-catalyzed=false --read-from-sabio-rk=false
------------------------------------------------------------
SBMLsqueezer version 2.1
Copyright ? 2006-2015 University of Tuebingen,
Center for Bioinformatics Tuebingen (ZBIT).
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome
to redistribute it under certain conditions.
See http://www.gnu.org/licenses/gpl-3.0-standalone.html.
------------------------------------------------------------
Feb 10, 2020 6:13:20 PM org.sbml.squeezer.ReactionType <clinit> --- INFO: Loading kinetic equations...
Feb 10, 2020 6:13:20 PM org.sbml.squeezer.ReactionType <clinit> --- INFO: done in 19 ms.
Feb 10, 2020 6:13:21 PM org.sbml.squeezer.SBMLsqueezer initializeReaderAndWriter --- INFO: Loading library JSBML
Feb 10, 2020 6:13:21 PM de.zbit.Launcher launchCommandLineMode --- INFO: Launching command-line mode of SBMLsqueezer.
Feb 10, 2020 6:13:21 PM org.sbml.squeezer.SBMLsqueezer squeeze --- INFO: Scanning input files
Feb 10, 2020 6:13:21 PM de.zbit.io.fileformat.FormatIdentification init --- WARNING: Could not load format identification magic byte file.
Feb 10, 2020 6:13:21 PM org.sbml.squeezer.SBMLsqueezer squeeze --- INFO: Squeezing file C:\Users\amizeranschi\Desktop\yeastGEM-L3V1.xml into C:\Users\amizeranschi\Desktop\out-L2V4.xml\yeastGEM-L3V1.xml
Feb 10, 2020 6:13:21 PM org.sbml.squeezer.SBMLsqueezer readSBMLSource --- INFO: reading SBML file...
Feb 10, 2020 6:13:22 PM org.sbml.squeezer.SBMLsqueezer readSBMLSource --- INFO: done in 1,511 ms.
Feb 10, 2020 6:13:22 PM org.sbml.squeezer.SBMLsqueezer squeeze --- INFO: Creating kinetic laws.
Feb 10, 2020 6:13:24 PM org.sbml.squeezer.SBMLsqueezer squeeze --- SEVERE: input: C:\Users\amizeranschi\Desktop\yeastGEM-L3V1.xml, output: C:\Users\amizeranschi\Desktop\out-L2V4.xml/yeastGEM-L3V1.xml
java.util.NoSuchElementException: No term named 'SBO:0000655'
at org.biojava3.ontology.Ontology$Impl.getTerm(Ontology.java:350)
at org.sbml.jsbml.SBO.isChildOf(SBO.java:1248)
at org.sbml.jsbml.SBO.isTranslation(SBO.java:1871)
at org.sbml.squeezer.ReactionType.<init>(ReactionType.java:766)
at org.sbml.squeezer.KineticLawGenerator.generateLaws(KineticLawGenerator.java:535)
at org.sbml.squeezer.SBMLsqueezer.squeeze(SBMLsqueezer.java:500)
at org.sbml.squeezer.SBMLsqueezer.squeeze(SBMLsqueezer.java:567)
at org.sbml.squeezer.SBMLsqueezer.commandLineMode(SBMLsqueezer.java:253)
at de.zbit.Launcher.launchCommandLineMode(Launcher.java:724)
at de.zbit.Launcher.run(Launcher.java:857)
at de.zbit.Launcher.<init>(Launcher.java:211)
at org.sbml.squeezer.SBMLsqueezer.<init>(SBMLsqueezer.java:224)
at org.sbml.squeezer.SBMLsqueezer.main(SBMLsqueezer.java:177)
Second, when running with the SBML L2V4 file (which I've created from the L3V1 file, using COPASI), the model was read correctly and the algorithm ran, but then it mentioned another error while writing the output file (which turned out empty):
java -Xmx1500m -jar SBMLsqueezer_v2.1.jar --sbml-in-file=yeastGEM-L2V4.xml --sbml-out-file=out-L2V4.xml --all-reactions-as-enzyme-catalyzed=false --read-from-sabio-rk=false
------------------------------------------------------------
SBMLsqueezer version 2.1
Copyright ? 2006-2015 University of Tuebingen,
Center for Bioinformatics Tuebingen (ZBIT).
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome
to redistribute it under certain conditions.
See http://www.gnu.org/licenses/gpl-3.0-standalone.html.
------------------------------------------------------------
Feb 10, 2020 6:28:03 PM org.sbml.squeezer.ReactionType <clinit> --- INFO: Loading kinetic equations...
Feb 10, 2020 6:28:03 PM org.sbml.squeezer.ReactionType <clinit> --- INFO: done in 21 ms.
Feb 10, 2020 6:28:03 PM org.sbml.squeezer.SBMLsqueezer initializeReaderAndWriter --- INFO: Loading library JSBML
Feb 10, 2020 6:28:03 PM de.zbit.Launcher launchCommandLineMode --- INFO: Launching command-line mode of SBMLsqueezer.
Feb 10, 2020 6:28:03 PM org.sbml.squeezer.SBMLsqueezer squeeze --- INFO: Scanning input files
Feb 10, 2020 6:28:03 PM de.zbit.io.fileformat.FormatIdentification init --- WARNING: Could not load format identification magic byte file.
Feb 10, 2020 6:28:03 PM org.sbml.squeezer.SBMLsqueezer squeeze --- INFO: Squeezing file C:\Users\amizeranschi\Desktop\yeastGEM-L2V4.xml into C:\Users\amizeranschi\Desktop\out-L2V4.xml\yeastGEM-L2V4.xml
Feb 10, 2020 6:28:03 PM org.sbml.squeezer.SBMLsqueezer readSBMLSource --- INFO: reading SBML file...
Feb 10, 2020 6:28:05 PM org.sbml.squeezer.SBMLsqueezer readSBMLSource --- INFO: done in 1,761 ms.
Feb 10, 2020 6:28:05 PM org.sbml.squeezer.SBMLsqueezer squeeze --- INFO: Creating kinetic laws.
Feb 10, 2020 6:28:19 PM org.sbml.squeezer.SBMLsqueezer squeeze --- INFO: done in 13,870 ms.
Feb 10, 2020 6:28:19 PM org.sbml.squeezer.SBMLsqueezer squeeze --- INFO: Saving changes and writing SBML file...
0 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -1.5 has been rounded to -1.
1 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -0.5 has been rounded to 0.
5 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -1.25 has been rounded to -1.
7 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -0.25 has been rounded to 0.
8 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -2.5 has been rounded to -2.
9 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -1.5 has been rounded to -1.
12 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -62.3 has been rounded to -62.
13 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -61.3 has been rounded to -61.
14 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -4.234 has been rounded to -4.
18 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -3.234 has been rounded to -3.
19 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -2.209 has been rounded to -2.
19 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -1.209 has been rounded to -1.
21 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -0.19 has been rounded to 0.
21 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent 0.81 has been rounded to 0.
23 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -0.012 has been rounded to 0.
24 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent 0.988 has been rounded to 0.
25 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -0.087 has been rounded to 0.
29 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent 0.913 has been rounded to 0.
30 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -0.043 has been rounded to 0.
31 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent 0.957 has been rounded to 0.
32 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -0.007 has been rounded to 0.
32 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent 0.993 has been rounded to 0.
33 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent -0.029 has been rounded to 0.
35 [main] WARN org.sbml.jsbml.Unit - Loss of information because the illegal non-integer exponent 0.971 has been rounded to 0.
line 416,031 column 7 - Error: missing quotemark for attribute value
line 422,280 column 7 - Error: missing quotemark for attribute value
Feb 10, 2020 6:28:22 PM org.sbml.squeezer.SBMLsqueezer squeeze --- INFO: done in 2,936 ms.
Feb 10, 2020 6:28:22 PM org.sbml.squeezer.SBMLsqueezer squeeze --- INFO: 18.877 s needed for squeezing file yeastGEM-L2V4.xml.
It looks like the versions of SBO and JSBML that are bundled with SBMLsqueezer are outdated. Would be be possible to update these?