Rothamsted / knetbuilder

KnetBuilder data integration platform for building knowledge graphs. Previously known as ondex.
https://knetminer.com
MIT License
12 stars 11 forks source link

Biocyc parser exception with aracyc biopax-level2.owl #45

Closed KeywanHP closed 3 years ago

KeywanHP commented 3 years ago

Using the biocyc parser with the latest version of AraCyc biopax-level2.owl release 8 gives a null pointer exception here:

https://github.com/Rothamsted/knetbuilder/blob/e8a4d02c584e0026032c97971ba4240611f78458/ondex-knet-builder/modules/cyc-pathwaydbs/src/main/java/net/sourceforge/ondex/parser/biocyc/handler/ReactionHandler.java#L115

workflow:

<Parser name="biocyc">
    <Arg name="TaxId">3702</Arg>
    <Arg name="DataSource">AraCyc</Arg>
    <Arg name="InputFile">biopax-level2.owl</Arg>
    <Arg name="graphId">default</Arg>
</Parser> 

Error: java.lang.NullPointerException at net.sourceforge.ondex.parser.biocyc.handler.ReactionHandler.processReaction(ReactionHandler.java:115) at net.sourceforge.ondex.parser.biocyc.handler.ReactionHandler.(ReactionHandler.java:39) at net.sourceforge.ondex.parser.biocyc.Parser.start(Parser.java:194) at net.sourceforge.ondex.workflow.engine.Engine.runParser(Engine.java:443) at net.sourceforge.ondex.workflow.engine.PluginProcessor$5.run(PluginProcessor.java:135) at net.sourceforge.ondex.workflow.engine.PluginProcessor$5.run(PluginProcessor.java:133) at net.sourceforge.ondex.workflow.engine.PluginProcessor.execute(PluginProcessor.java:83) at net.sourceforge.ondex.workflow.engine.BasicJobImpl.run(BasicJobImpl.java:110) at net.sourceforge.ondex.WorkflowMain.main(WorkflowMain.java:216) at net.sourceforge.ondex.OndexMiniMain.main(OndexMiniMain.java:7)

marco-brandizi commented 3 years ago

left.getPHYSICAL_ENTITY () is null. Maybe due to changes in the BioPAX format. This is one of the things that would be worth to rewrite as an RDF-to-RDF converter.

For the moment, I've just added some diagnostic code that tells where the problem occurs. It would help if you can use that to cut a test case (ie, a small BioPAX file including the reaction that causes the problem) and attach it here.

Else, point me at the URL of that biopax-level2.owl file, I cannot do much more without it.

Moreover, I've upgraded the paxtools-core dependency (the BioPAX lib used by this plugin), if we're lucky, the problem might even disappear.

jparsons2222 commented 3 years ago

Level 3 seems OK. Thanks for the update libraries and for the problem catching and documenting code. We can investigate more tomorrow if needed

KeywanHP commented 3 years ago

Level 3 did not work. But the issue has been resolved. Level 2 works fine now. Thanks @marco-brandizi