Project statuses: what's the end goal, what's been done so far, and what still needs to be done.
Longer Term Goals:
- review and streamline API
- optimize more intensive operations e.g. validation; flattening
- provide an operating status mode to allow users to dictate mode e.g. only allow valid models; ignore units
- enhance language binding interfaces
- PHP interface
- Extract the xml layer and provide as a standalone xml reading library
- we could also extract the MathML layer ??
- Model conversion - our grant proposal says we will provide more of these
- Not yet started - need to consider timescales for these items.
Current General Goals:
- Decide a release cycle
- Update libsbml in line with SBML development
- Maintain existing code: bug fix, keep up with OS and language development
- Publish paper on libSBML-5 and support for SBML L3 packages
Current Specific Goals:
- Have standalone source archives for binding languages, like python/perl/r/ruby
- Submit those to standard repositories pypi/cpan/cran/gem
- Generate binaries for different linux flavors
- Create an AST API that allows packages to extend the math subset used
- FB: started initial manual test with python, would be automating this approach to go forward and submit to pypi, once it works for us.
- FB: Sample project on OBS: https://build.opensuse.org/package/show/home:fbergman:python-libsbml/python-libsbml
- SK: Currently working on this in branches/libsbml-ast-plugin and would hope to be done by early next year
SBML Test Suite
Most goals on this have been accomplished. The remaining ones after the impending 3.1.0 release are:
- Add stochastic tests from Darren Wilkinson's stochastic test suite
- Add the ability to upload results from the Test Runner to the online database
- Add test cases as needed/possible for new SBML L3 packages
- Write and publish a paper about the whole system
- Version 3.1.0 is about to be released
- Work on 3.2.0 (to add the stochastic tests) has not started.
- Work on the paper has not started
- Coordinate the API between jsbml and libsbml
- Provide the ability for jsbml to call services to implement harder operations provided by libsbml
- All functions specified by Nico in the 2010 Hackathon have been implemented as web service.
- Develop an online system for exploring SBML
- Start with an existing language (CoffeeScript) and add just enough features to support SBML
- Mike started on a revised page for integrating with sbml.org
SBML Level 3 packages
- No change in SBML anticipated; current sentiment is to use the 'combine archive' instead.
- Chris has done some work; he needs more feedback.
- Some ideas of where to take it next (models of different levels/versions?) but no active work.
- Haven't heard from Stuart in a while, and he's changing jobs (if he hasn't changed already). That said, everyone at COMBINE seemed fine with the current draft. At this point, mostly needs work integrating with UncertML.
- There's a grad student working with whole-cell modeling that might be working some on this--he works for that couple we met in Connecticut, and has connected with Chris some. No idea where that stands, however.
- Shipped. Frank and Brett both still working on this for new updates. Need to deal with recent requests from UCSD.
- People are working on implementation, but the jSBML people had comments that would change things again. The jSBML suggestions would probably make it a little cleaner, but I'm not sure if it's worth breaking existing implementations, if there are any that use the bits that are proposed to change.
- Shipped; no further suggestions that I know of.
- Slow conversation still working through the multi list. Need Sarah's new ASTNode code to achieve full implementation of existing spec. My sense is that the spec will continue to change in small ways until the final discussions are finished.
- Shipped. There were proposals for multi that didn't make it into version 1, but I know of no movement to get them added in. Presumably, some pressure along those lines will come as people actually implement support for it.
- As has been the case for a hemi-decade, this still needs group consensus and approval. I don't know what the issues are that people have with it (if any), but nobody has tried to move forward with this for a while, as far as I know.
- Nobody had anything to say about the latest version of this, as far as I know, but it seems mostly OK to most people. The fact that it's different has blocked libsbml implementation, since it used to be integrated more strongly into Spatial.
- Going back and forth with Jim on this; there was a burst of activity from him a couple months ago, then a responding burst of activity from me last month.
Arrays and Sets:
- Once new ASTNode code is in place, work with Sarah on spec.
Hierarchical Model Composition:
- None for now; float future ideas on list at some point.
- Get version 3.0 of UncertML
- Implement some sort of support for it
- Write about it more specifically in the spec.
Flux Balance Constraints:
- None for us; let Frank and Brett continue their work.
- Find out who's working on Groups, and if proposed changes would block them.
- If so, propose to list that we table the changes
- If not, get new version out with changes; implement in libSBML.
Multistate and Multicomponent Species:
- Let the multi people work things out on their own, but monitor.
- None; wait for new software to drive development.
- Let the COPASI people push this forward when they're ready.
- None; wait for Spatial.
- Talk to Jim about moving discussion to list (including posting latest spec).
- Email list about what people want to see in libsbml.
Longer Term Goals:
- Generate UML/RDF/RNG/JSBML/Demo
- Provide a UI
- Not yet started
- Develop code generation for code for packages
- facilitate subsequent user editing and regeneration
- Agree what language we are actually going to develop this in
- Agree the representation of the XML to be used to generate from
- Provide a way of making it less sbml L3 package orientated
- SK: I have code that will take a python dictionary object that specifies the package and then generates code for packages. Code for multi and distrib was done using this. I have a list of improvements that need to happen and I am currently looking at allowing user added/edited code not to be overwritten when generation is called. I also need to spend some time stream lining/documenting the code.
- Really before I spend too much more time we need to agree on this. I have used python so far as I wanted a scripting language.
- Again this needs to be done before we go much further: I have used a python dictionary object see https://github.com/skeating/auto-generator/blob/master/How-To-Use_auto-generator.txt
- Frank actually used what I had and with some adaptation used it to generate a SED-ML library. We could actually take this better into account and provide a tool that with the extracted xml/mathml/validation layers of libsbml could be used to generate a library for any ML. UncertML would be a good candidate. (Or do we consider this as another grant application).
- Move sbml.org to new server
- Reorganize content, change forum, and do other things to meet goal in the last grant proposal: "First, we will redesign SBML.org for greater clarity, easier discovery of information about SBML activities, and integration of a question-oriented discussion system used successfully in other communities . We want to turn SBML.org into a leading community resource where modelers (not only developers) will discuss all facets of modeling in biology, and as a result, become more engaged in SBML and its evolution."
- Mike set up a new server, temporarily named sbml.caltech.edu
- Linda has worked on copying the content of sbml.org to sbml.caltech.edu, using the latest version of MediaWiki
- All other work in this direction remains to be done
SBML tool matrix overhaul
- Provide a better interface for tool authors to report SBML support in their software, and also to update features over time
- Provide a more useful view of tool features, including a separation between current and "historically available" tools
- Provide a way for tools to report support for L3 packages - particularly in situations (e.g. qual) where they may not support core
SBML RDF Schemas
- Liaise with Sarala at the EBI to see what she has already done.
MOCASSIN (with Mount Sinai Medical School)
Develop a translator from MATLAB ODE models to SBML. It will not need to support complete arbitrary MATLAB; instead, it would be some well-organized MATLAB that describes an ODE model of a sort that would be conceptually compatible with SBML.
- Aside from the work that Sarah has previously done on a translator, no new work has started on this front.
- Maintain and update service to keep up with changes to libSBML
- Update and support JSBML remote access as needed
- Basically it's up to date and running smoothly.
Grant proposal: Publishing framework (with UCHC, EBI and others)