Literature DB >> 26079347

JSBML 1.0: providing a smorgasbord of options to encode systems biology models.

Nicolas Rodriguez1, Alex Thomas2, Leandro Watanabe3, Ibrahim Y Vazirabad4, Victor Kofia5, Harold F Gómez6, Florian Mittag7, Jakob Matthes8, Jan Rudolph9, Finja Wrzodek7, Eugen Netz8, Alexander Diamantikos8, Johannes Eichner8, Roland Keller8, Clemens Wrzodek10, Sebastian Fröhlich11, Nathan E Lewis2, Chris J Myers3, Nicolas Le Novère1, Bernhard Ø Palsson2, Michael Hucka12, Andreas Dräger13.   

Abstract

UNLABELLED: JSBML, the official pure Java programming library for the Systems Biology Markup Language (SBML) format, has evolved with the advent of different modeling formalisms in systems biology and their ability to be exchanged and represented via extensions of SBML. JSBML has matured into a major, active open-source project with contributions from a growing, international team of developers who not only maintain compatibility with SBML, but also drive steady improvements to the Java interface and promote ease-of-use with end users.
AVAILABILITY AND IMPLEMENTATION: Source code, binaries and documentation for JSBML can be freely obtained under the terms of the LGPL 2.1 from the website http://sbml.org/Software/JSBML. More information about JSBML can be found in the user guide at http://sbml.org/Software/JSBML/docs/. CONTACT: jsbml-development@googlegroups.com or andraeger@eng.ucsd.edu SUPPLEMENTARY INFORMATION: Supplementary data are available at Bioinformatics online.
© The Author 2015. Published by Oxford University Press.

Entities:  

Mesh:

Year:  2015        PMID: 26079347      PMCID: PMC4595895          DOI: 10.1093/bioinformatics/btv341

Source DB:  PubMed          Journal:  Bioinformatics        ISSN: 1367-4803            Impact factor:   6.937


1 Introduction

The Systems Biology Markup Language (SBML) is a widely used format that enables easy distribution of systems biology data, models and diagrams, and it allows the easy exchange of data and models between a variety of software systems (Hucka ; Dräger and Palsson, 2014). Given the wide coverage of the latest SBML version, it is unsurprising that the standard is relatively complex. An appropriate computational architecture greatly simplifies the work that software developers need to do in order to support importing and storing SBML-based information for computational analysis. JSBML (Dräger ) is the official, pure Java-based application programming interface (API) library for SBML. It enables systems biology information to be expressed in Java data structures patterned after the SBML format for fast access. JSBML 1.0 implements the ability to encode, exchange and use all parts of SBML, up to the current release, SBML Level 3 (L3), including all community-approved (and several prototype) SBML packages for L3, as described later. One important aspect of SBML is its ability to provide additional capabilities to encode specific types of systems biology models. These capabilities are extensions of the core SBML L3 format and are known as ‘packages’. Although many models can be fully represented using only the core set of SBML constructs, these extensions support (i) other model features that cannot be formulated with the SBML core standards and (ii) additional constructs that enable users in specific fields to formulate, interface and use the SBML framework more easily within their modeling approaches. SBML packages enable the ability to build models that encompass several formalisms within one overall framework. Several tools today use JSBML 1.0 in this way and encode multiple types of systems biology models; examples include iBioSim (Madsen ), KEGGtranslator (Wrzodek ) and GINSim (Gonzalez Gonzales ). In addition, because JSBML is built to be an interpreter for SBML, this functionality, represented by a single data structure, can easily be embedded into existing Java programs. Since its inception, JSBML has fostered a community of active developers who aim to provide regular code updates, provide major and minor bug fixes to releases, and partake in discussions on standards for the systems biology modeling community (COMBINE, Waltemath ). These community interactions have helped improve JSBML substantially since its launch.

2 Results

2.1 Improvements

JSBML’s first public release was in 2011 (Dräger ) and it has since undergone considerable change and expansion. A major goal of the initial release was to present a software package which differentiated itself from libSBML, JSBML’s C++ language counterpart (Bornstein ), and its Java-language bindings. Since then, JSBML has maintained compatibility with SBML and libSBML and has introduced extra functionalities. In addition to support for SBML L3 core and packages, JSBML 1.0 has incorporated improvements to software efficiency. For instance, improvements to internal interfaces now speed up model input/output operations. The different identifier namespaces in SBML are now managed with an IdManager interface which is able to reconcile redundant identifiers among packages. A new Math infix parser is able to mimic the same behavior as the libSBML L3 Math parser and can handle complex mathematical formulas. The manipulation and merging of Units in SBML has also been greatly improved. Also, several features have been added to JSBML 1.0 to improve end-user convenience and accessibility. For instance, various utility methods have been added that allow users to manipulate JSBML’s in-memory data object. Furthermore, user-defined objects can be temporarily added to the JSBML data structure for any model component. XML annotations in SBML are read as XMLNode object instead of Strings, making it easier to manipulate non-standard annotations in SBML. Advanced logging functionalities via the Apache log4j project allows users to monitor JSBML actions. Finally, JSBML has been better integrated with other software such as Apache Maven, a dependency management tool, BioJava 3 (Prlić ), a bioinformatics toolbox, and CellDesigner (Funahashi ), a biochemical network modeling and visualization tool.

2.2 Support for SBML packages

2.2.1 Approved packages

At the time of writing, all approved SBML L3 extensions are supported by JSBML 1.0. We describe the support below, and provide insights into the mapping between modeling formalisms and the corresponding JSBML data objects. An abbreviated version of the JSBML class hierarchies are presented in Supplementary Figure S1. The JSBML User Guide has figures that lay out the JSBML class hierarchy for each SBML package, displaying the full capabilities of the JSBML data objects that encode each package. In Table 1, approved SBML packages constitute the first four rows. The Qualitative Models package (qual, for short) allows species in a model to have non-quantitative or non-continuous levels (Chaouiya ). This may manifest as Boolean or discrete values, and is primarily employed in modeling gene regulation, signaling pathways, logical/Boolean networks (Schmulevich ), and Petri nets (Breitling ). Flux Balance Constraints (fbc, Olivier and Bergmann, 2013) encodes components for constraints-based modeling (Lewis ), which employs a class of models in which the canonical stoichiometric relations between reactions and metabolites are specified as constraints for mathematical optimization. Layout provides the ability to encode graphical information for model diagrams. The structure for this extension mirrors the SBML core hierarchy by introducing graphical counterparts to reactions and species. The fourth approved package, Hierarchical Model Composition (comp) provides a generic framework to encode models as hierarchical entities in SBML (Smith ). JSBML’s comp implementation provides access to elements within sub-models and interfaces with other models.
Table 1.

SBML Package status

NameIdDescriptionJSBML support
Qualitative modelsqualQualitative values for speciesFull
Flux balance constraintsfbcConstraints based parametersFull
LayoutlayoutNetwork layout topologyFull
Hierarchical model compositioncompModular, hierarchical entitiesFull
Spatial processesspatialLocation and geometriesFull
GroupsgroupsGrouping elementsFull
ArraysarraysValues and entities in arraysFull
Required elementsreqRequired model elementsFull
DistributionsdistribModel values as statistical distributionsFull
Dynamic structuresdynDynamic model entitiesFull
RenderingrenderNetwork layout styleFull
Multistate and multicomponent speciesmultiRule based modelingPartial
SBML Package status

2.2.2 Draft packages

Draft specifications are available for the remaining SBML packages; they are encoded in JSBML with varying maturity. JSBML fully supports the current specifications of seven packages whose community approvals are pending: Spatial Processes (spatial, Schaff ) specifies geometric descriptions of biochemical models’ components using a cellular coordinate system that can describe non-uniform molecular distributions, diffusive transport and spatially localized reactions; Groups (groups, Hucka and Smith, 2013) agglomerates SBML model elements and can be linked to annotations and SBO terms (Courtot ) to contextualize sets of objects for other programmers and modelers; Arrays (arrays, Watanabe ) extends SBML variables to include arrays of values, thereby representing repeated or regular model structures more efficiently; Required Elements (req, Smith and Hucka, 2013) allows a model to indicate which components have had their mathematical meanings changed by (e.g.) the use of another SBML package; Distributions (distrib, Moodie and Smith, 2013) encodes statistical distributions and their sampling; Dynamic Structures (dyn, Gomez ), which supports the definition of dynamical behaviors for model entities; and Rendering (render, Gauges ), used in conjunction with layout to provide symbol and style information for diagrams. The last package, Multistate and Multicomponent Species (Zhang and Meier-Schellersheim, 2013) is still under development. The JSBML project is committed to support all SBML packages as their specifications come out and are deemed stable by the community.

2.2.3 JSBML and package formation

Some package specifications have been influenced by JSBML development. For example, protocols for validation and flattening of array constructs in the arrays package. Prior to the development of arrays in JSBML, the specification lacked important validation rules that serve as quality controls for math operations done with arrays data structures. JSBML also provided the environment to ensure arrays was compatible with other SBML L3 packages, helping to build a more robust specification. Finally, JSBML development of the arrays package was used to generate simulatable examples for the SBML L3 arrays specification. Therefore, JSBML provides a means to test and implement new package development for future versions of SBML.

3 Conclusions

JSBML version 1.0 marks the maturation of this software library as an essential component for any systems biology pipeline that runs in the Java Virtual Machine, and joins other biological exchange format interpreters (Paxtools, Demir ; CellML API, Miller ; SED-ML, Waltemath ; SBOL, Galdzicki ; libSBGN, van Iersel ) to support users’ ability to disseminate models in a diverse array of modeling formalisms. In addition, as SBML is updated and novel modeling techniques arise, the active, open-source community behind JSBML will continue to provide a comprehensive, computable interface for systems biology models.
  17 in total

1.  The systems biology markup language (SBML): a medium for representation and exchange of biochemical network models.

Authors:  M Hucka; A Finney; H M Sauro; H Bolouri; J C Doyle; H Kitano; A P Arkin; B J Bornstein; D Bray; A Cornish-Bowden; A A Cuellar; S Dronov; E D Gilles; M Ginkel; V Gor; I I Goryanin; W J Hedley; T C Hodgman; J-H Hofmeyr; P J Hunter; N S Juty; J L Kasberger; A Kremling; U Kummer; N Le Novère; L M Loew; D Lucio; P Mendes; E Minch; E D Mjolsness; Y Nakayama; M R Nelson; P F Nielsen; T Sakurada; J C Schaff; B E Shapiro; T S Shimizu; H D Spence; J Stelling; K Takahashi; M Tomita; J Wagner; J Wang
Journal:  Bioinformatics       Date:  2003-03-01       Impact factor: 6.937

2.  GINsim: a software suite for the qualitative modelling, simulation and analysis of regulatory networks.

Authors:  A Gonzalez Gonzalez; A Naldi; L Sánchez; D Thieffry; C Chaouiya
Journal:  Biosystems       Date:  2006-01-24       Impact factor: 1.973

3.  LibSBML: an API library for SBML.

Authors:  Benjamin J Bornstein; Sarah M Keating; Akiya Jouraku; Michael Hucka
Journal:  Bioinformatics       Date:  2008-02-05       Impact factor: 6.937

Review 4.  A structured approach for the engineering of biochemical network models, illustrated for signalling pathways.

Authors:  Rainer Breitling; David Gilbert; Monika Heiner; Richard Orton
Journal:  Brief Bioinform       Date:  2008-06-23       Impact factor: 11.622

Review 5.  Constraining the metabolic genotype-phenotype relationship using a phylogeny of in silico methods.

Authors:  Nathan E Lewis; Harish Nagarajan; Bernhard O Palsson
Journal:  Nat Rev Microbiol       Date:  2012-02-27       Impact factor: 60.633

6.  An overview of the CellML API and its implementation.

Authors:  Andrew K Miller; Justin Marsh; Adam Reeve; Alan Garny; Randall Britten; Matt Halstead; Jonathan Cooper; David P Nickerson; Poul F Nielsen
Journal:  BMC Bioinformatics       Date:  2010-04-08       Impact factor: 3.169

7.  JSBML: a flexible Java library for working with SBML.

Authors:  Andreas Dräger; Nicolas Rodriguez; Marine Dumousseau; Alexander Dörr; Clemens Wrzodek; Nicolas Le Novère; Andreas Zell; Michael Hucka
Journal:  Bioinformatics       Date:  2011-06-22       Impact factor: 6.937

8.  KEGGtranslator: visualizing and converting the KEGG PATHWAY database to various formats.

Authors:  Clemens Wrzodek; Andreas Dräger; Andreas Zell
Journal:  Bioinformatics       Date:  2011-06-23       Impact factor: 6.937

9.  Reproducible computational biology experiments with SED-ML--the Simulation Experiment Description Markup Language.

Authors:  Dagmar Waltemath; Richard Adams; Frank T Bergmann; Michael Hucka; Fedor Kolpakov; Andrew K Miller; Ion I Moraru; David Nickerson; Sven Sahle; Jacky L Snoep; Nicolas Le Novère
Journal:  BMC Syst Biol       Date:  2011-12-15

10.  Controlled vocabularies and semantics in systems biology.

Authors:  Mélanie Courtot; Nick Juty; Christian Knüpfer; Dagmar Waltemath; Anna Zhukova; Andreas Dräger; Michel Dumontier; Andrew Finney; Martin Golebiewski; Janna Hastings; Stefan Hoops; Sarah Keating; Douglas B Kell; Samuel Kerrien; James Lawson; Allyson Lister; James Lu; Rainer Machne; Pedro Mendes; Matthew Pocock; Nicolas Rodriguez; Alice Villeger; Darren J Wilkinson; Sarala Wimalaratne; Camille Laibe; Michael Hucka; Nicolas Le Novère
Journal:  Mol Syst Biol       Date:  2011-10-25       Impact factor: 11.429

View more
  12 in total

1.  libsbmljs-Enabling web-based SBML tools.

Authors:  J Kyle Medley; Joseph Hellerstein; Herbert M Sauro
Journal:  Biosystems       Date:  2020-04-24       Impact factor: 1.973

2.  Escher: A Web Application for Building, Sharing, and Embedding Data-Rich Visualizations of Biological Pathways.

Authors:  Zachary A King; Andreas Dräger; Ali Ebrahim; Nikolaus Sonnenschein; Nathan E Lewis; Bernhard O Palsson
Journal:  PLoS Comput Biol       Date:  2015-08-27       Impact factor: 4.475

3.  BiGG Models: A platform for integrating, standardizing and sharing genome-scale models.

Authors:  Zachary A King; Justin Lu; Andreas Dräger; Philip Miller; Stephen Federowicz; Joshua A Lerman; Ali Ebrahim; Bernhard O Palsson; Nathan E Lewis
Journal:  Nucleic Acids Res       Date:  2015-10-17       Impact factor: 16.971

4.  Closing the gap between formats for storing layout information in systems biology.

Authors:  David Hoksza; Piotr Gawron; Marek Ostaszewski; Jan Hasenauer; Reinhard Schneider
Journal:  Brief Bioinform       Date:  2020-07-15       Impact factor: 11.622

5.  BioLQM: A Java Toolkit for the Manipulation and Conversion of Logical Qualitative Models of Biological Networks.

Authors:  Aurélien Naldi
Journal:  Front Physiol       Date:  2018-11-19       Impact factor: 4.566

Review 6.  Systems Bioinformatics: increasing precision of computational diagnostics and therapeutics through network-based approaches.

Authors:  Anastasis Oulas; George Minadakis; Margarita Zachariou; Kleitos Sokratous; Marilena M Bourdakou; George M Spyrou
Journal:  Brief Bioinform       Date:  2019-05-21       Impact factor: 11.622

7.  PhenoMeNal: processing and analysis of metabolomics data in the cloud.

Authors:  Kristian Peters; James Bradbury; Sven Bergmann; Marco Capuccini; Marta Cascante; Pedro de Atauri; Timothy M D Ebbels; Carles Foguet; Robert Glen; Alejandra Gonzalez-Beltran; Ulrich L Günther; Evangelos Handakas; Thomas Hankemeier; Kenneth Haug; Stephanie Herman; Petr Holub; Massimiliano Izzo; Daniel Jacob; David Johnson; Fabien Jourdan; Namrata Kale; Ibrahim Karaman; Bita Khalili; Payam Emami Khonsari; Kim Kultima; Samuel Lampa; Anders Larsson; Christian Ludwig; Pablo Moreno; Steffen Neumann; Jon Ander Novella; Claire O'Donovan; Jake T M Pearce; Alina Peluso; Marco Enrico Piras; Luca Pireddu; Michelle A C Reed; Philippe Rocca-Serra; Pierrick Roger; Antonio Rosato; Rico Rueedi; Christoph Ruttkies; Noureddin Sadawi; Reza M Salek; Susanna-Assunta Sansone; Vitaly Selivanov; Ola Spjuth; Daniel Schober; Etienne A Thévenot; Mattia Tomasoni; Merlijn van Rijswijk; Michael van Vliet; Mark R Viant; Ralf J M Weber; Gianluigi Zanetti; Christoph Steinbeck
Journal:  Gigascience       Date:  2019-02-01       Impact factor: 6.524

Review 8.  Harmonizing semantic annotations for computational models in biology.

Authors:  Maxwell Lewis Neal; Matthias König; David Nickerson; Göksel Mısırlı; Reza Kalbasi; Andreas Dräger; Koray Atalag; Vijayalakshmi Chelliah; Michael T Cooling; Daniel L Cook; Sharon Crook; Miguel de Alba; Samuel H Friedman; Alan Garny; John H Gennari; Padraig Gleeson; Martin Golebiewski; Michael Hucka; Nick Juty; Chris Myers; Brett G Olivier; Herbert M Sauro; Martin Scharm; Jacky L Snoep; Vasundra Touré; Anil Wipat; Olaf Wolkenhauer; Dagmar Waltemath
Journal:  Brief Bioinform       Date:  2019-03-22       Impact factor: 11.622

9.  IDARE2-Simultaneous Visualisation of Multiomics Data in Cytoscape.

Authors:  Thomas Pfau; Mafalda Galhardo; Jake Lin; Thomas Sauter
Journal:  Metabolites       Date:  2021-05-06

10.  SBMLsqueezer 2: context-sensitive creation of kinetic equations in biochemical networks.

Authors:  Andreas Dräger; Daniel C Zielinski; Roland Keller; Matthias Rall; Johannes Eichner; Bernhard O Palsson; Andreas Zell
Journal:  BMC Syst Biol       Date:  2015-10-09
View more

北京卡尤迪生物科技股份有限公司 © 2022-2023.