nrnb / GoogleSummerOfCode

Main documentation site for NRNB GSoC project ideas and resources
115 stars 38 forks source link

Offline SBML validation in the Java-based JSBML library #19

Closed niko-rodrigue closed 8 years ago

niko-rodrigue commented 8 years ago

Background

SBML is one of the most popular modeling and data exchange languages in systems biology. In order to ensure reproducibilty of model simulation results, SBML files need to be carefully validated against the SBML specifications. The different SBML specifications (core + many packages) define a set of validation rules that go beyond simple XML schema validation. (For examples, see the list of error categories or section 'A' of the SBML Level 3 core specification). The current validation done by the JSBML library is performed via network access to the web services on SBML.org, but this is problematic when the user has no network connection or is on a very slow network.

Goal

Add a validation system to JSBML that implements the necessary validation rules directly in the library, without requiring the use of a network. We do not ask for complete coverage of the SBML validation rules; it would be enough to implement a significant subset, such as some or all of the core SBML validation rules. The approach implemented in this project should provide the infrastructure to easily add more validations rules.

Technologies

There already exists preliminary work done using RELAX NG and Schematron. This could be used as the starting point for the validation system in JSBML. Another option would be to create a pure Java validation framework of some kind, following a similar structure as is done in libSBML. Some preliminary work in the latter direction has been done in the JSBML implementation of the SBML Arrays package. This could serve as a possible inspiration or starting point.

Potential Mentors

Sarah Keating, Nicolas Rodriguez, Andreas Dräger

Contact

JSBML developers mailing list, available online at https://groups.google.com/d/forum/jsbml-development.

Useful pointers to documentation related to GSOC for student on the main NRNB web site :

khanspers commented 8 years ago

Chosen as GSoC 2016 project.