sbgn / libsbgn

Libraries for the Systems Biology Graphical Notation (SBGN); Java and C++
Other
15 stars 8 forks source link

Improve Usability with SBML models #65

Open shoepfl opened 1 year ago

shoepfl commented 1 year ago

Dear SBGN team,

i wanted to use SBGN for the first time and tried to convert my SBML model. However, I encountered several pitfalls that made it impossible for me:

  1. The link for the only converter tool on the website does not work and i cannot finde the tool on google
  2. I tried CellDesigner but it does not support SBML Level 3.1 - The problem is that libsbml does not like to save my model in 2.X directly without changes. The SBFC converter only says that the functionality SBML2SBML conversion cannot be found so this is also not an option. So CellDesigner is also very hard to use.

In my opinion there should be made several improvements in the documentation so that the conversion can be done without running into many pitfalls and then give up frustrated as I personally like the idea of SBGN very much.

Is there currently a way to handel a SBML level 3 file?

Best, Sebastian

fbergmann commented 1 year ago

Hello Sebastian,

I'm not sure that is something that the libsbgn library can handle. Feel free to open an issue with libsbml though, it should have let you change the level easily.

you could give COPASI a try, to export the model to SBML L2. Since you want to end up with an SBGN file at the end (so a file describing a diagram, rather than the dynamic), it is fine if some of the dynamics cannot be captured by SBML L2. Then you should be fine getting it into CellDesigner.

Otherwise you could give newt a try.

shoepfl commented 1 year ago

Hi Frank,

thank you very much for the tipps. I tried newt and it works really nice - also immediately with my SBML L3.1 file.

I agree solving the problems is beyond the scope of libsbgn, I only noticed that some of the links on the sbgn website are outdated, making it difficult to use. The links should be updated here and perhaps restrictions could be described at the same time. Examples are:

Thanks again I have now a nice SBGN graph

piotr-gawron commented 1 year ago

Dear @shoepfl,

Just to let you know newt is using minerva API that converts SBML to SBGN. You can find more here: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7373180/ or directly in the API specification: https://minerva.pages.uni.lu/doc/api/16.2/converter.html#_convert_network_from_an_input_format_to_an_output_format. This way you could convert the files programmatically.

Keep in mind that I'm minerva developer so I'm a bit biased here ;). However, if you encounter any issues please let me know.

shoepfl commented 1 year ago

Dear @piotr-gawron

thanks for the additional information. At the moment the use of the web interface was quite fast and efficient for me, however for other projects I would probably indeed go for the code based option instead of using the API.

If I encounter something I will let you know.