Skip to content

jsbml-0.8-b2

Compare
Choose a tag to compare
@niko-rodrigue niko-rodrigue released this 10 Jan 14:04
· 3366 commits to master since this release

Version 0.8-b2 (18-04-2011)

New Features:

  • The new interface CallableSBase ensures that only instances of this type may be referenced in ASTNodes. In this way, it is no longer possible to refer to Events from ASTNodes.
  • Additional type of error: abstract PropertyError with its two subtypes PropertyNotAvailableError and PropertyUndefinedError. The PropertyNotAvailableError one indicates that a certain property of an SBase is not defined for its current Level/Version combination, whereas the latter one indicates that the value belonging to a mandatory property, for which there is no default value has not been defined. At least in the Trigger class, PropertyUndefinedErrors are now thrown when attempting to access the value of the persistent or initialValue attribute for models with Level >= 3 and an undeclared value. Thanks to Roland Keller and Lucian Smith for pointing out this necessity.

Bug Fixes:

  • The class Maths, a compilation of useful mathematical functions, provided an implementation of the factorial function that took a double as its argument. However, for this purpose, the Gamma function must be implemented. We changed this function to take integer values only.
  • A NullPointerException could occur when deriving the unit of an expression containing a call to the factorial function. Thanks to Roland Keller for reporting this.
  • [Tracker issue #3208887] : When trying to access the previously set value for UseValuesFromTriggerTime it was possible that a NullPointerException could occur due to the attempt to clone this element. This has been fixed. Thanks to Sebastian Fröhlich for reporting this.
  • [Tracker issue #3208903] : Priority elements were properly read and written. Thanks to Sebastian Fröhlich for reporting this.
  • [Tracker issue #3204275] : It was impossible to set the size of a compartment for models in Level 3 if the spatial dimensions was undefined, i.e., NaN. Since it is only prohibited to set the size if the dimensions equal 0, we provided another test in the set method in Compartment to allow for this.
  • Corrected a typo in the method SBO.getAntisenseRNA(), the method was always returning -1. It is now returning the correct value (317), thanks to Anushya Muruganujan for reporting this.
  • [Tracker issue #3175906] : Removed plenty of unused methods in the Annotation class that were dealing with writing the annotation as XML. Everything is handle now in the stax SBMLWriter. The getAnnotationString method was not present in the SBase interface, it is now added and should be the only method used to get the Annotation as XML.
  • [Tracker issue #3175911] : compartment.spatialDimensions type changed to double to be consistent with the SBML level 3 specifications, as a consequence the return type of the getSpatialDimensions as been changed.
  • [Tracker issue #3176548] : id containing underscores were not parsed properly by the infix formula parser, this is now fix and any valid SId should work. Thanks to Goksel Misirli for reporting this.
  • [Tracker issue #3175833] : annotation tags were not properly closed when a mathML element was present on the same element. Thanks to Goksel Misirli for reporting this.
  • A new interface, CallableSBase, was introduced to encompass all the different SBML elements that can be referenced inside a mathML 'ci' element. As a consequence, some methods signature have changed.
  • [Tracker issue #3175833] : in some cases, an empty annotation was written if a metaid was defined. Some methods were added to the Annotation class to test which part of the annotation is defined.
  • [Tracker issue #3196284] : the unit exponent was incorrectly always read as an integer. This has been corrected and if the level of the model is 3, the exponent is read as a double.
  • [Tracker issue #3196638] : the message constraint was not properly read, it was stored in the notes instead of the message ! This is now corrected, thanks to the person who reported that.
  • Corrected several bugs in the SBMLValidator and implemented properly all the classes related to SBMLdocument.checkConsistency() so that is works as expected.
  • [Tracker issue #3199792] : localParameter were not parsed correctly in SBML level 3. Thanks for the persons who reported it.
  • [Tracker issue #3216183] : all the XML elements that were belonging to the RDF namespace were sent to a parser that understood only the specific SBML RDF annotations. This as been fixed and we can now have some RDF elements anywhere in the annotation.

Known issues :

  • SBML level 1 rules when the 'type' attribute is equal to 'rate' are created as AssignmentRule instead of RateRule.
  • The support for the mathML elements notanumber and infinity is not complete.
  • Reading of more than one RDF Description elements in the RDF annotation block (the official SBML annotation scheme) is not supported at the moment.