KEGGtranslator
KEGGtranslator copied to clipboard
Availability of KEGGtranslator.jar and problem converting to SBML_L3V1
Hi,
First of all, thank you for developing this tool!
I recently started using KEGGtranslator and hoped to run it on command line. However, the 'Downloads' section on the webpage (http://www.ra.cs.uni-tuebingen.de/software/KEGGtranslator/downloads/index.htm) appeared blank. So I am wondering if KEGGtranslator.jar is still available?
The second question is, I was using KEGG translator 2.5 to translate KEGG PATHWAY eco01100 to SBML_L3V1, but the progress got stuck at 0% (see the screenshot below). But if I use eco00281, the conversion finishes up fine. Do you know what could have caused the failure for eco01100?
Thank you! Fengdan
Thanks for this report, @Fengdan92. We are in the process of moving KEGGtranslator entirely to GitHub, away from the old homepage.
Just to make sure, did you download the KGML file for this pathway?
A few more questions:
- Are you using a proxy server?
- Did you use KEGGtranslator version 2.4?
We are in the process of moving KEGGtranslator entirely to GitHub, away from the old homepage.
That's good to hear! Do you have an estimation of when the KEGGtranslator.jar file will be available?
Just to make sure, did you download the KGML file for this pathway?
Yes! What I did is, in command line:
curl http://rest.kegg.jp/get/eco01100/kgml -o eco01100.xml
Are you using a proxy server?
Could you explain what does 'proxy server' mean? I was using my own laptop.
Did you use KEGGtranslator version 2.4?
No. I believe I used KEGGtranslator version 2.5.
I downloaded the file with
curl http://rest.kegg.jp/get/eco01100/kgml -o eco01100.xml
When I open this with the GUI, I also get the progress bar at 0% with nothing happening. I started debugging this and it appears the swing worker gets stuck in a locked state while parsing the pathways in the kgml file.
In AbstractKEGGtranslator, line 463
Pathway p = KeggParser.parse(infile).get(0);
gets called which issues the KEGGParser to read the xml.
After reading in the xml into a Document,
the KEGGParser function
parseKeggML(document);
gets called on line 164.
On parsing the pathway elements found in the DOM Document the process seems to hang.
When issuing
java -jar KEGGtranslator_v2.5.jar --gui=false -i/path/to/input/eco01100.xml -o/path/to/output/eco01100_out_sbmlL3V1.xml -fSBML_L3V1
The process quits after some seconds with:
java.lang.IllegalArgumentException: No enum constant de.zbit.kegg.parser.pathway.EntryType.brite at java.lang.Enum.valueOf(Enum.java:238) at de.zbit.kegg.parser.pathway.EntryType.valueOf(Unknown Source) at de.zbit.kegg.parser.KeggParser.parsePathway(Unknown Source) at de.zbit.kegg.parser.KeggParser.parseKeggML(Unknown Source) at de.zbit.kegg.parser.KeggParser.parseKeggML(Unknown Source) at de.zbit.kegg.parser.KeggParser.parse(Unknown Source) at de.zbit.kegg.parser.KeggParser.parse(Unknown Source) at de.zbit.kegg.io.AbstractKEGGtranslator.translate(Unknown Source) at de.zbit.kegg.Translator.translate(Unknown Source) at de.zbit.kegg.Translator.commandLineMode(Unknown Source) at de.zbit.Launcher.launchCommandLineMode(Unknown Source) at de.zbit.Launcher.run(Unknown Source) at de.zbit.Launcher.
(Unknown Source) at de.zbit.kegg.Translator. (Unknown Source) at de.zbit.kegg.Translator.main(Unknown Source)
That's as far as I am right now. Will further look into it.
As of KGML v0.7.2, released August 29, 2016 the following change was made "Addition of type attribute "brite" ".
In the mentioned kgml-file eco01100.xml seven brite entries can be found.
In former versions of this file, the type was denoted with "other", which is part of the EntryType Enum.
"brite" however is not yet part of that Enumeration in de.zbit.kegg.parser.pathway
.
I am not sure yet why the GUI just hangs and does not receive the same error as the command line execution does.
To fix this issue we at least need to support the EntryType of "brite" while building the entries for the pathway in KEGGParser. Additionally one must define how that EntryType is then further processed in the translation step or any other steps it might get used (preProcessing steps fetching additional data to entries).