libgpml

Java library for reading / writing GPML files

https://github.com/pathvisio/libgpml

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.1%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Java library for reading / writing GPML files

Basic Info
  • Host: GitHub
  • Owner: PathVisio
  • License: apache-2.0
  • Language: Java
  • Default Branch: main
  • Size: 2.58 MB
Statistics
  • Stars: 2
  • Watchers: 3
  • Forks: 4
  • Open Issues: 5
  • Releases: 4
Created about 5 years ago · Last pushed over 2 years ago
Metadata Files
Readme License Citation

README.md

libGPML

Java CI with Mavencodecov DOI Maven Central

libGPML is an open-source Java library for working with GPML (Graphical Pathway Markup Language).

How to cite

If you use this software, please cite the article in JOSS:

In progress...

Table of contents

Introduction

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.

Dependencies

You need the following tools:

  • Computer with Windows, Mac, or Linux
  • JDK 11
  • Maven 3 (Tested with 3.8.1)

Usage

Documentation is available online at libGPML Java Documentation.

Library Architecture

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

Getting help

You can report issues, suggestions and requests using the GitHub issue tracker.

Contributing

We welcome contributions to libGPML! Please read our contribution guidelines, and also feel free to contact the developers to coordinate your efforts.

License

libGPML is available for free under the terms of the Apache License, Version 2.0.

Authors and history

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

Acknowledgments

The development of libGPML was supported in largely by funding from WikiPathways-COVID19 ZonMW project.


                                         

Owner

  • Name: PathVisio
  • Login: PathVisio
  • Kind: organization

Pathway editor, analysis and visualization software

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Pico
  given-names: Alex
- family-names: Riutta
  given-names: Anders
- family-names: Evelo
  given-names: Chris
- family-names: Slenter
  given-names: Denise
- family-names: Willighagen
  given-names: Egon
  orcid: https://orcid.org/0000-0001-7542-0286
- family-names: Hu
  given-names: Finterly
- family-names: Ehrhart
  given-names: Friederike
- family-names: Hanspers
  given-names: Kristina
- family-names: de Meyer
  given-names: Luc
- family-names: Pham
  given-names: Nhung
- family-names: Summer-Kutmon
  given-names: Martina
- family-names: Coort
  given-names: Susan
title: "libGPML"
version: 4.0.3
date-released: 2023-03-23
url: "https://github.com/PathVisio/libGPML"

GitHub Events

Total
Last Year

Dependencies

org.pathvisio.lib/pom.xml maven
  • commons-lang:commons-lang 2.6
  • junit:junit 4.13.2
  • org.apache.commons:commons-collections4 4.1
  • org.apache.servicemix.bundles:org.apache.servicemix.bundles.jdom 2.0.6.1_1
  • org.bridgedb:org.bridgedb 3.0.16
  • org.bridgedb:org.bridgedb.bio 3.0.16
  • org.bridgedb:org.bridgedb.rdb 3.0.16
.github/workflows/draft-pdf.yml actions
  • actions/checkout v2 composite
  • actions/upload-artifact v1 composite
  • openjournals/openjournals-draft-action master composite
.github/workflows/maven.yml actions
  • actions/checkout v2 composite
  • actions/setup-java v2 composite