Software Open Access


Keating, Sarah; Bergmann, Frank; Smith, Lucian; Hucka, Michael

5.15.0 (2017-04-06)

NOTE: This release includes support for the SBML L3V2(RC1)
Release Candidate specifications.  This specification is not yet
official and thus it, and the supporting code, may change.


* Multistate and Multicomponent Species

  - The first official version of the specification of the Multistate
    and Multicomponent Species package is now available, and thus the 
    libSBML code for 'multi' is now included in the stable release of 
    libSBML.  This means that all prebuilt binaries for the stable 
    release will include the 'multi' package code. The src archive 
    containing libSBML core code will continue to be available, with
    additional src archives available in the stable branch: one
    containing libSBML core plus all stable packages and additional
    archives of the individual package code.
    NOTE: The libSBML GNU make-based build system has not been updated
          for packages. Thus, to build from src, it is necessary to
          use the CMake build system.

* New features

  - A new option has been added to the L3ParserSettings to allow
    users to turn off the parsing of the new L3 math elements. If 
    enabled the parser will treat the new functions as generic
    user defined functions.

  - The L3Parser has been updated to parse '%' as rem.

  - The MATLAB binding has been updated to support SBML L3V2(RC 1).

  - Additional options are available for the TranslateSBML/OutputSBML
    functions for the MATLAB binding allowing users to add their own
    validation and customize the input/output of some fbc elements.
    (See documentation for more details.)

  - A new structure field 'cvterms' has been added to the MATLAB_SBML
    structure.  This supports annotations as a set of fields relating
    to qualifiers and resources rather than relying on annotation
    in the string format.

  - A new function setCharacters has been added to the XMLToken class.

  - The SBMLDocument object resulting from an invalid read will now
    report level and version as '0'. This facilitates distinguishing
    between an invalid read and a Level 3 Version 2 document that 
    does not contain a <model> element.
* Bug fixes

  - Code was failing to recognize the math elements <pi/> and
    <exponentiale/> as returning numeric values. This has been

  - A <stoichiometryMath> element with no child <math> was causing
    code to crash. This has been sorted.

  - Validation of MathML was failing to report when a <math> element
    contained two top-level elements. This is now caught and correctly

  - A speciesReference id which has been declared 'constant' cannot be 
    changed by an event. Validation was failing to catch this situation.
    This is now fixed.

  - Several fixes have been made to the conversion of SBML documents
    to lower levels and versions. These include: loss of compartment
    size; evaluation of functionDefinitions and initialAssignments;
    conversion of fast reactions; evaluation of stoichiometry using
    initialAssignment and rules and expanding functionDefinitions with
    no bvar elements.

  - The export of the Avagadro constant as an exponential number was
    losing precision. This has been fixed.

  - Unit checking was failing to correctly associate the model 'timeUnits' 
    with the use of the csymbol for time. This has been corrected. Thanks
    to Matthias König for reporting it.

  - 'comp' package-specific bug fixes:

    - Validation of a model that indirectly referenced a replacedBy element
      was causing a problem. This has been resolved.

    - The flattening routine was failing to correctly adjust the metaid
      referenced by annotation where necessary.  This has been fixed. 
      Thanks to Matthias König for reporting it.

  - 'fbc' package-specific bug fixes:

    - Validation was incorrectly reporting that a lower fluxBound could
      not have a value of -INF. This has been corrected. 

    - The 'unsetActiveObjective' function now returns an OperationReturnValue
      in line with other set/unset functions.

* Configuration/build system changes

  - The minizip library used for compression supported has been updated.
    There are no backwards compatability issues. 

  - The CMake build has been extended to enable export of the configuration
    used in building. This will facilitate users who use libsbml and/or its
    dependencies as dependencies in other projects.

* Miscellaneous

 - Beware that Doxygen 1.8.12 and later changed something in the HTML
   it creates, and as a result, the libSBML documentation-generation
   currently does not work for Doxygen versions after 1.8.11.  This will
   be fixed in a later release.  For the time being, use Doxygen 1.8.11.

 - We are aware that the released MATLAB binaries do not appear to work
   with MATLAB 2017a on Mac OSX. At present we are unable to address this 
   issue but will resolve it and issue new binaries as soon as possible.

 - We are aware that the octave binding is not functioning as expected.  
   We would be very interested to know of any users of the libsbml
   octave interface that are affected by this. 


* New features

  - 'spatial' package-specific updates:

    - The spatial code has been adjusted for minor changes in the
      specification and now reflects rel0.91 of the specification.
      Some, but not all, validation has been added to the code.


Files (26.5 MB)
Name Size
26.5 MB Download
All versions This version
Views 158158
Downloads 2929
Data volume 768.3 MB768.3 MB
Unique views 148148
Unique downloads 2222


Cite as