This project "Validation of Spatial Systems Biology Models in Java(TM)" was done as a part of the Google Summer of Code program, with the organization N.R.N.B.
My mentors for this project were Nicolas Rodriguez and Thomas M. Hamm, along with support and valuable suggestions from Lucian P. Smith, Jun.-Prof. Dr Andreas Draeger and Prof. Akira Funahashi.
The basic overview of the program and the project can be found in my introductory blog:
For the in-depth background of the project, and detailed understanding of the working of the offline validator the readers are suggested to go through my proposal for the Google Summer of Code, 2019:
My GitHub fork for this project is https://github.com/bhavyejain/jsbml.
In the duration of this project, I implemented constraint classes for the spatial package and fixed issues with the existing spatial classes, consequently bringing most of them to the latest specification. My work in this repository is reflected in the following extension: https://github.com/bhavyejain/jsbml/tree/master/extensions/spatial/src/org/sbml/jsbml.
I made a pull request after implementing 2-3 constraint classes at a time so that it is easy to review the code from time to time. The test files of many classes also required corrections. The modified test files were uploaded to a master google drive and the corrections listed in a document for further reference. All the merged contributions have been compiled and tested before making the merge.
All of my commits can be viewed here:
Except for the new rules under construction, all my pull requests have been merged with the master branch of the product, and can be viewed here:
The ongoing work is reflected in the open pull requests which will be merged as and when new rules are added successfully with simultaneous creation of test files. The open pull requests (if any active at the moment) authored by me can be viewed here:
All validation and consistency rules provided in the Spatial Processes SBML Level 3 Package Specification have been implemented and tested.
Existing source code has been updated to meet the latest requirements of the validator and the specification.
New code has been tested successfully on various test files.
CURRENT STATUS AND FURTHER DEVELOPMENT
Currently, work is being done to manually add more validation rules. Additional rules for around 13 classes have been identified and finalised, with more to be proposed in coming days. The procedure to add such rules has been decided upon and work is expected to proceed at a steady pace. Post final evaluation, I shall work upon completing the validation for spatial package, and include as many syntactic and possibly semantic error checks to make the validator robust.