KEGGtranslator icon indicating copy to clipboard operation
KEGGtranslator copied to clipboard

Availability of KEGGtranslator.jar and problem converting to SBML_L3V1

Open Fengdan92 opened this issue 6 years ago • 4 comments

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? image

Thank you! Fengdan

Fengdan92 avatar Mar 22 '18 20:03 Fengdan92

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?

draeger avatar Mar 22 '18 20:03 draeger

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.

Fengdan92 avatar Mar 22 '18 20:03 Fengdan92

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.

thortiede avatar Mar 29 '18 15:03 thortiede

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).

thortiede avatar Apr 04 '18 17:04 thortiede