libGPML is an open-source Java library for working with GPML (Graphical Pathway Markup Language).
If you use this software, please cite the article in JOSS:
In progress...
- Introduction
- Dependencies
- Usage
- Library Architecture
- Getting help
- Contributing
- License
- Authors and history
- Acknowledgments
libGPML is a Java programming library that helps you read, write, validate, manipulate, and convert files and data streams in the GPML (Graphical Pathway Markup Language) format.
Why not simply use a generic XML parsing library? A specialized library such as libGPML offers many advantages over using a generic XML library directly. Here are some:
-
Java object model. libGPML's object model and API are designed around GPML and the operations that are commonly needed when working with GPML.
-
Validation. libGPML implements all the validation rules defined in the GPML specifications.
-
Conversion: libGPML can convert between GPML2013a and GPML2021. Conversions between GPML2013a and older
libGPML works on Linux, Windows, and MacOS X, and other operating systems.
You need the following tools:
Documentation is available online at libGPML Java Documentation.
libGPML uses an object oriented Java model. In the libGPML Java model, GPML Pathway Elements are represented by Java Classes. Pathway Element types are represented by Enum Java Classes.
Figure 1: libGPML Java Object Model
libGPML consists of several packages:
- org.pathvisio.libgpml.debug - Debugging and logging utility classes
- org.pathvisio.libgpml.io - Import and export classes
- org.pathvisio.libgpml.model - Classes representing the pathway "model". Also includes classes for reading and writing.
- org.pathvisio.libgpml.model.connector - Line connectors classes
- org.pathvisio.libgpml.model.shape - Shape defining classes
- org.pathvisio.libgpml.model.type - Enum type classes
- org.pathvisio.libgpml.prop - Properties classes
- org.pathvisio.libgpml.util - Utility classes
You can report issues, suggestions and requests using the GitHub issue tracker.
We welcome contributions to libGPML! Please read our contribution guidelines, and also feel free to contact the developers to coordinate your efforts.
libGPML is available for free under the terms of the Apache License, Version 2.0.
libGPML's main authors are Finterly Hu, Martina Summer-Kutmon, with contributions from many others. We especially thank the following (in alphabetical order):
- Alex Pico
- Anders Riutta
- Chris Evelo
- Denise Slenter
- Egon Willighagen
- Friederike Ehrhart
- Kristina Hanspers
- Luc de Meyer
- Nhung Pham
- Susan Coort
The development of libGPML was supported in largely by funding from WikiPathways-COVID19 ZonMW project.