The SBML Level 3 Version 1 Release 1 specification was made available on 6 October 2010. The following are the errors and other issues discovered in the specification document after it was issued. In the following table, the ID # of each issue refers to the reference number automatically assigned to the issue in the online SBML issue tracking system. The gaps in this numbering are not consequential for SBML and do not necessarily signify deleted or unresolved issues.
ID# | Description | Page and line number(s) | Date added |
---|---|---|---|
115 | Add a section talking about underdetermined models. | none | 28 May ‘14 |
128 | A long-standing bug that was forgotten until recently is that the RDF subset defined in the spec does not allow annotations of annotations. Fix this by allowing nested RDF content. | Section 6.3 | 8 July ‘14 |
147 | Rewrite section 3.4.8 to be clearer about simulation before t0. | Section 3.4.8 | 27 May ‘14 |
150 | In RDF blocks, only the used namespaces need be declared. | Section 6.3 | 27 May ‘14 |
190 | The recommended practices section should provide some guidance about how to structure KineticLaw in the presence of using SpeciesReference identifiers for stoichiometries. | Section 8 | 16 Sep.‘13 |
191 | The explanation of what constitutes unique top-level elements in an annotation is insufficiently clear about whether it is the namespace or the namespace prefixes that matter. It is the namespaces that matter, not the prefixes. | p. 15–16 | 19 Jun.‘12 |
192 | The paragraph about UnitDefinition should make it explicit that new unit identifiers cannot be the same as any of the base units defined in Table 2 on p. 37. | p. 17 lines 9–11 | 19 Jun.‘12 |
193 | The use of the word ‘symbol’ in different parts of the specification is not always consistent. | (many) | 19 Jun.‘12 |
194 | The sentence begins “The Event attribute variable …” but the attribute is actually on EventAssignment, not Event. |
p. 76 line 16 | 30 Apr.‘11 |
195 | The text refers to MathML ci attributes, but ci is an element, not an attribute, so the text should really read “MathML ci elements”. |
p. 77 lines 8, 11 | 30 Apr.‘11 |
198 | The UML box for Model misspells the data type UnitSIdRef as UnitsSIdRef . The former is the correct spelling. |
p. 30 Fig. 10 | 1 Dec.‘11 |
199 | The precise extent of identifier shadowing by local parameters is unclear. The specification should give a complete list about what is shadowed. | p. 17 lines 12–16 | 19 Jun.‘12 |
201 | The UML box for EventAssignment declares the data type of attribute variable to be SId , but in fact the correct data type is SIdRef . |
p. 71 Fig. 20 | 1 Dec.‘11 |
202 | The specification should be updated to use identifiers.org wherever it is appropriate. | (many pages) | 16 Sep.‘13 |
203 | The UML diagram does not show that Trigger is derived from SBase. A line is missing to show the derivation. | p. 71 Fig. 20 | 1 Dec.‘11 |
206 | Figure 10 has a misspelled attribute name. The attribute listOfContraints on Model should be named listOfConstraints . |
p. 30 Figure 10 | 19 Jun.‘12 |
207 | The specification lacks a validation rule stating that the value of the attribute substanceUnits on a Model object should be either "mole" , "item" , "gram" , "kilogram" , "dimensionless" , "avogadro" , or the identifier of a UnitDefinition object based on these units. The rule should be number 20233. |
p. 150 line 13 | 19 Jun.‘12 |
208 | Validation rule #10311 should include the units attribute on LocalParameter along with the other SBML components listed. |
p. 144 line 10–14 | 19 Jun.‘12 |
210 | The XML fragment defines a namespace prefix size but this is incorrect; the namespace prefix should be named struct . |
p. 16 line 13 | 19 Jun.‘12 |
211 | Section 4.6.6 is insufficiently clear about when species amounts may or may not change. Table 4 states that a species quantity never changes under some circumstances, but it is specifically the species amount that does not change; if the compartment size changes, species concentrations may change even for the conditions where the table indicates “never changes”. The section would benefit from a rewrite. | p. 45 Section 4.6.6 | 3 Jul.‘12 |
213 | The XML diagram illustrating the history structure is complete and defines what is optional and what is required, but the text under the figure is not complete and does not recapitulate what is in the diagram. The text should be expanded. | p. 92 lines 9–40 | 19 Jun.‘12 |
215 | The role of the ‘constant’ flag on a Species needs to be clarified to emphasize that it only refers to the Species amount, not the species concentration: changes to the Species’ compartment are irrelevant to the ‘constant’ flag (this elaborates on issue 211). | p. 45 Section 4.6.6 | 3 Jul.‘12 |
218 | Validation rule #20608 mentions the availability of a unit named substance , but this does not exist in Level 3 Version 1 Core. It should be removed from the list of valid unit names. |
p. 152 lines 28 | 20 Jun.‘12 |
220 | Validation rules #10311 and #20401 have overlap: both of them state that the value of the attribute id in a UnitDefinition object must conform to the syntax of the SBML type UnitSId . Rule #20401 also adds the condition that the identifier must be unique and not be identical to certain other identifiers. The overlapping condition should be removed from rule #20401; the rule should only be concerned with the topic of uniqueness of identifiers. |
p. 144 lines 10–14, p. 150 lines 35–41 |
25 Jun.‘12 |
221 | The text states that the type of attribute ‘id’ is UnitSIdRef , but in fact it is UnitSId . This is clear from the UML diagram. |
p. 36 lines 2 | 25 Jun.‘12 |
222 | The text misleadingly implies there is something special about the designated examples that use attributes boundaryCondition and constant , when in fact, all models must provide values for these attributes because the attributes are not optional. |
p. 45 lines 34–35 | 28 Jun.‘12 |
223 | Because of changes to the licensing of KEGG, we should remove the use of KEGG as examples in the specification. The sample on p. 94 should be updated to use ChEBI URI references instead of KEGG URI references. On p. 93, instead of referencing KEGG, we should reference the entry in Wikipathways. | p. 93 line 46; p. 94 line 29 |
16 Sep.‘13 |
224 | The Dublin Core Metadata Initiative has updated the namespace http://purl.org/dc/terms/ to include the terms in http://purl.org/dc/elements/1.1/ . Therefore, SBML does not need to declare the second namespace, contrary to the examples in Section 6. The use of the namespace will be deprecated in SBML Level 3 Version 2. |
Section 6 | 9 Dec.‘13 |
225 | Support for vCard version 4 will be added. The text for SBML Level 3 Version 2 will indicate that the use of vCard version 3 is deprecated. | Section 6 | 9 Dec.‘13 |
226 | Update specification to most recent version of SBO. | Section 5.2 | 07 Sept. ‘16 |
230 | The statement that stoichiometry values “should be greater than zero” should be removed. (There was never a validation warning associated with this statement.) | p 62 | 01 Jan.‘14 |
236 | The statement about using SBML Constraints for flux balance analysis should be removed. The Level 3 FBA package is now the preferred means of supporting flux balance analysis. | p. 58 lines 2–3 | 9 Dec.‘13 |
250 | Clarify the meaning of the ‘required’ flag: it should apply to the presence of the package in relation to the Core model and should be applied on a per package basis; it is not intended to be reflective of the actual model and constructs used in a particular instance. | p. 29 Section 4.1.2 | 16 Sep.‘13 |
251 | The ‘id’ of UnitDefinition is of type UnitSId, not UnitSIdRef. | 15 Aug.‘13 | |
257 | Add ‘hasTaxon’ to the list of Biological Qualifiers. | p. 64 line 45,53 | 11 June ‘14 |
258 | ‘Vn’ (a volume) is encased in square brackets, which is supposed to indicate a concentration. The brackets should be removed. | p. 118 line 39 | 04 May ‘14 |
259 | Add validation rule claiming that delay may not be used in FunctionDefinitions. |
Appendix A | 7 July ‘14 |
262 | Two closing tags in the XML example read </listProducts> instead of </listOfProducts> . |
p. 69 line 53,61 | 14 May ‘14 |
265 | Remove statement that referencing Reaction IDs that don’t have kinetic laws is an error. | p. 21 line 16 | 7 July ‘14 |
268 | Modify validation rule 20303 to forbid indirectly-recursive FunctionDefinitions. | Appendix A | 7 July ‘14 |
270 | Remove erroneous extra line between S1 and law in figure in Appendix D. |
Appendix D | 21 July ‘14 |
271 | Add a validation warning about what SBO branch a LocalParameter should inherit from. | Page 147 | 25 July ‘14 |
275 | The section on SBO should mention the version of SBO described. | Section 5 | 10 Oct. ‘14 |
280 | Need new unit validation error for nonexistent units. | Appendix A | 22 Apr. ‘15 |
284 | Link to MIRIAM URIs instead linked to MIRIAM qualifiers. | Page 90 | 15 May ‘15 |
288 | Add clarification that even when species levels drop to zero, reactions are still to fire. | Page 77 | 22 Jan. ‘16 |
292 | Clarify that the variable attribute of Rules must point to a valid SId, not just ‘can’ point to a valid SId. |
Pages 60, 61 | 23 Nov. ‘15 |
293 | Correct namespace for protein modification ontology to psimod . |
Page 105 | 01 Jan. ‘16 |
295 | Boolean should be capitalized when not talking about the attribute type, and in typewriter font otherwise. |
(many) | 23 Nov. ‘15 |
298 | Move general XML information to beginning of chapter. | Page 30 | 4 Feb. ‘16 |
304 | Allow SBO terms from the ‘modeling framework’ branch for Model objects. | Table 6 | 31 Mar. ‘16 |
312 | Add statement that identifiers.org is not required, but best practice. | Section 6.8 | 15 Mar. ‘16 |
325 | Add sentence about variable-stoichiometry models. | Page 67 | 15 June ‘16 |
326 | Relax validation warnings about substance, volume, etc. by allowing combinations of units of the appropriate types. | Appendix A | 07 Sept ‘16 |
328 | Better explain that the constant flag can be used to determine what variable AlgebraicRules pertain to. |
(several) | 17 May ‘16 |
336 | Relax SBO terms for Parameter, LocalParameter, Species, and Compartment. | Table 6 | 1 Nov. ‘16 |
337 | Fix MathML in avogadro example, and describe said formula. | Page 24 | 18 Aug. ‘16 |
338 | Change ‘an event assignment’ to ‘the assignments from a given event’ since assignments are executed as a block. | Page 80 | 14 Sept. ‘16 |
339 | Clarify that XML namespaces may be declared on containing elements. | Page 15 | 1 Nov. ‘16 |