| General rules concerning basic XML requirements |
| 10101. |
|
An SBML XML file must use UTF-8 as the character encoding. More precisely, the
encoding attribute of the XML declaration at the beginning of the XML data stream cannot have a value other than “
UTF-8“. An example valid declaration is
<?xml version=“1.0” encoding=“UTF-8”?>. (References: SBML L3V1 Section 4.1.) |
| 10102. |
|
An SBML XML document must not contain undefined elements or attributes in the SBML Level 3 Core namespace or in a SBML Level 3 package namespace. Documents containing unknown elements or attributes placed in an SBML namespace do not conform to the SBML specification. (References: SBML L3V1 Section 4.1.) |
|
10104. |
|
An SBML document must conform to the rules of XML well-formedness defined in the XML 1.0 specification. These rules define the basic structural and syntactic constraints with which all XML documents must comply. (References: SBML L3V1 Section 4.1.) |
| General rules for MathML content in SBML |
| 10201. |
|
Wherever MathML content appears in an SBML document, the MathML content must be placed within a
math element, and that
math element must be either explicitly or implicitly declared to be in the XML namespace “http://www.w3.org/1998/Math/MathML”. (References: SBML L3V1 Section 3.4.) |
| 10202. |
|
The following is a list of the only MathML 2.0 elements permitted in SBML Level 3:
abs,
and,
annotation,
annotation-xml,
apply,
arccosh,
arccos,
arccoth,
arccot,
arccsch,
arccsc,
arcsech,
arcsec,
arcsinh,
arcsin,
arctanh,
arctan,
bvar,
ceiling,
ci,
cn,
cosh,
cos,
coth,
cot,
csch,
csc,
csymbol,
degree,
divide,
eq,
exponentiale,
exp,
factorial,
false,
floor,
geq,
gt,
infinity,
lambda,
leq,
ln,
logbase,
log,
lt,
minus,
neq,
notanumber,
not,
or,
otherwise,
piecewise,
piece,
pi,
plus,
power,
root,
sech,
sec,
semantics,
sep,
sinh,
sin,
tanh,
tan,
times,
true, and
xor. (References: SBML L3V1 Section 3.4.1.) |
| 10203. |
|
In the SBML subset of MathML 2.0, the MathML attribute
encoding is only permitted on
csymbol,
annotation and
annotation-xml. No other MathML elements may have an
encoding attribute. (References: SBML L3V1 Section 3.4.1.) |
| 10204. |
|
In the SBML subset of MathML 2.0, the MathML attribute
definitionURL is only permitted on
ci,
csymbol and
semantics. No other MathML elements may have a
definitionURL attribute. (References: SBML L3V1 Section 3.4.1.) |
| 10205. |
|
In SBML Level 3, the only values permitted for the attribute
definitionURL on a
csymbol are “http://www.sbml.org/sbml/symbols/time”, “http://www.sbml.org/sbml/symbols/delay” and “http://www.sbml.org/sbml/symbols/avogadro”. (References: SBML L3V1 Section 3.4.6.) |
| 10206. |
|
In the SBML subset of MathML 2.0, the MathML attribute
type is only permitted on the
cn construct. No other MathML elements may have a
type attribute. (References: SBML L3V1 Section 3.4.1.) |
| 10207. |
|
The only permitted values for the attribute
type on MathML
cn elements are “
e-notation“, “
real“, “
integer“, and “
rational“. (References: SBML L3V1 Section 3.4.2.) |
| 10208. |
|
MathML
lambda elements are only permitted as either the first element inside the
math element of a FunctionDefinition object, or as the first element of a
semantics element immediately inside the
math element of a FunctionDefinition object. MathML
lambda elements may not be used elsewhere in an SBML model. (References: SBML L3V1 Sections 3.4.1 and 4.3.2.) |
| 10209. |
|
The arguments of the MathML logical operators
and,
not,
or, and
xor must evaluate to boolean values. (References: SBML L3V1 Section 3.4.9.) |
| 10210. |
|
The arguments to the following MathML constructs must evaluate to numeric values (more specifically, they must evaluate to MathML real, integer, rational, or “e-notation” numbers, or the time, delay or avogadro
csymbol elements):
abs,
arccosh,
arccos,
arccoth,
arccot,
arccsch,
arccsc,
arcsech,
arcsec,
arcsinh,
arcsin,
arctanh,
arctan,
ceiling,
cosh,
cos,
coth,
cot,
csch,
csc,
divide,
exp,
factorial,
floor,
ln,
log,
minus,
plus,
power,
root,
sech,
sec,
sinh,
sin,
tanh,
tan, and
times. (References: SBML L3V1 Section 3.4.9.) |
| 10211. |
|
The values of all arguments to MathML
eq and
neq operators must evaluate to the same type, either all boolean or all numeric. (References: SBML L3V1 Section 3.4.9.) |
| 10212. |
|
The types of the values within MathML
piecewise operators must all be consistent; i.e., the set of expressions that make up the first arguments of the
piece and
otherwise operators within the same
piecewise operator must all return values of the same type. (References: SBML L3V1 Section 3.4.9.) |
| 10213. |
|
The second argument of a MathML
piece operator must evaluate to a boolean value. (References: SBML L3V1 Section 3.4.9.) |
| 10214. |
|
Outside of a FunctionDefinition object, if a MathML
ci element is the first element within a MathML
apply element, then the
ci element’s value can only be chosen from the set of identifiers of FunctionDefinition objects defined in the enclosing SBML Model object. (References: SBML L3V1 Section 4.3.2.) |
| 10215. |
|
Outside of a FunctionDefinition object, if a MathML
ci element is not the first element within a MathML
apply, then the
ci element’s value may only be chosen from the set of identifiers of the Species, Compartment, Parameter, SpeciesReference or Reaction objects defined in the enclosing Model object. (References: SBML L3V1 Section 3.4.3.) |
| 10216. |
|
The
id attribute value of a LocalParameter object defined within a KineticLaw object may only be used in MathML
ci elements within the
math element of that same KineticLaw; in other words, the identifier of the LocalParameter object is not visible to other parts of the model outside of that KineticLaw instance. (References: SBML L3V1 Sections 3.3.1, 3.4.3 and 4.11.5.) |
| 10217. |
|
The MathML formulas in the following elements must yield numeric values (that is, MathML real, integer or “e-notation” numbers, or the time, delay or avogadro
csymbol):
math in KineticLaw,
math in InitialAssignment,
math in AssignmentRule,
math in RateRule,
math in AlgebraicRule,
math in Event Delay, and
math in EventAssignment. (References: SBML L3V1 Sections 4.8, 4.9, 4.11 and 4.12.) |
| 10218. |
|
A MathML operator must be supplied the number of arguments appropriate for that operator. (References: SBML L3V1 Section 3.4.1.) |
| 10219. |
|
The number of arguments used in a call to a function defined by a FunctionDefinition object must equal the number of arguments accepted by that function, or in other words, must equal the number of MathML
bvar elements inside the
lambda element of the function definition. (References: SBML L3V1 Section 4.3.4.) |
|
10220. |
|
The SBML attribute
units may only be added to MathML
cn elements; no other MathML elements are permitted to have the
units attribute. (References: SBML L2V3 Section 3.4.2.) |
|
10221. |
|
The value of the SBML attribute
units on a MathML
cn element must be chosen from either the set of identifiers of UnitDefinition objects in the model, or the set of base units defined by SBML. (References: SBML L3V1 Section 3.4.2.) |
| General rules for identifiers |
| 10301. |
|
The value of the attribute
id on every instance of the following classes of objects must be unique across the set of all
id attribute values of all such objects in a model: Model, FunctionDefinition, Compartment, Species, Reaction, SpeciesReference, ModifierSpeciesReference, Event, and Parameter. (References: SBML L3V1 Section 3.3.) |
| 10302. |
|
The value of the attribute
id of every UnitDefinition object must be unique across the set of all the UnitDefinition objects in the entire model. (References: SBML L3V1 Sections 3.3 and 4.4.) |
| 10303. |
|
The value of the attribute
id of every LocalParameter object defined within a KineticLaw object must be unique across the set of all such parameter definitions within that particular KineticLaw instance. (References: SBML L3V1 Sections 3.3.1 and 4.11.5.) |
| 10304. |
|
The value of the attribute
variable of every AssignmentRule and RateRule objects must be unique across the set of all AssignmentRule and RateRule objects in a model. In other words, a given model component cannot be the subject of both an assignment rule and a rate rule simultaneously. (References: SBML L3V1 Section 4.9.3.) |
| 10305. |
|
In every Event object, the value of the attribute
variable within each EventAssignment subobject must be unique across the set of all such EventAssignment subobjects within that particular Event object. In other words, a single Event cannot make more than one assignment to the same model component. (References: SBML L3V1 4.12.5.) |
| 10306. |
|
An identifier used as the value of the attribute
variable of an EventAssignment object cannot also appear as the value of the
variable attribute in an AssignmentRule object. In other words, a given model component cannot be the subject of both an assignment rule and an assignment by an event. (References: SBML L3V1 Section 4.12.5.) |
| 10307. |
|
Every
metaid attribute value must be unique across the set of all
metaid values in a model. (References: SBML L3V1 Sections 3.2.1 and 3.1.6.) |
| 10308. |
|
The value of the attribute
sboTerm must always conform to the syntax of the SBML data type
SBOTerm, which is a string consisting of the characters ‘S’, ‘B’, ‘O’, ’:’, followed by exactly seven digits. (References: SBML L3V1 Section 3.1.11.) |
| 10309. |
|
The value of a
metaid attribute must always conform to the syntax of the XML data type
ID. (References: SBML L3V1 Sections 3.2.1 and 3.1.6.) |
| 10310. |
|
The value of an
id attribute must always conform to the syntax of the SBML data type
SId. (References: SBML L3V1 Section 3.1.7.) |
| 10311. |
|
Unit identifiers (that is, the values of the
id attribute on UnitDefinition, the
units attribute on Compartment, the
units attribute on Parameter, the
substanceUnits attribute on Species, the SBML
units attribute on MathML
ci elements, and the
substanceUnits,
volumeUnits,
areaUnits,
lengthUnits,
timeUnits and
extentUnits on Model) must always conform to the syntax of the SBML data type
UnitSId. (References: SBML L3V1 Section 3.1.9.) |
|
10312. |
|
The value of a
name attribute must always conform to the syntax of type
string. (References: SBML L3V1 Section 3.1.1.) |
|
General rules for
annotation
elements
|
| 10401. |
|
Every top-level XML element within an Annotation object must have an XML namespace declared. (References: SBML L3V1 Section 3.2.4.) |
| 10402. |
|
A given XML namespace cannot be the namespace of more than one top-level element within a given Annotation object. (References: SBML L3V1 Section 3.2.4.) |
|
10404. |
|
A given SBML element may contain at most one Annotation subobject. (References: SBML L3V1 Section 3.2.) |
| General rules for units |
| 10501. |
|
The units of the expressions used as arguments to a function call should match the units expected for the arguments of that function. (References: SBML L3V1 Section 3.4.) |
|
10503. |
|
The unit of measurement associated with the mathematical formula in the MathML
math element of every KineticLaw object in a model should be identical to all KineticLaw objects in the model. (References: SBML L3V1 Section 3.4.) |
| 10511. |
|
When the value of the attribute
variable in an AssignmentRule object refers to a Compartment object, the unit of measurement associated with the mathematical expression in the rule’s MathML
math element should be consistent with the unit of that compartment’s size. (References: SBML L3V1 Section 4.9.3.) |
| 10512. |
|
When the value of the attribute
variable in an AssignmentRule object refers to a Species object, the unit of measurement associated with the mathematical expression in the rule’s MathML
math element should be consistent with the unit of that species’ quantity. (References: SBML L3V1 Section 4.9.3.) |
| 10513. |
|
When the value of the attribute
variable in an AssignmentRule object refers to a Parameter object, the unit of measurement associated with the mathematical expression in the rule’s MathML
math element should be consistent with the unit declared for that parameter’s value. (References: SBML L3V1 Section 4.9.3.) |
|
10514. |
|
When the value of the attribute
variable in an AssignmentRule object refers to a SpeciesReference object, the unit of measurement associated with the rule’s right-hand side should be consistent with the unit of stoichiometry, that is,
dimensionless. (References: SBML L3V1 Section 4.9.3.) |
| 10521. |
|
When the value of the attribute
variable in an InitialAssignment object refers to a Compartment object, the unit of measurement associated with the InitialAssignment’s
math expression should be consistent with the unit of that compartment’s size. (References: SBML L3V1 Section 4.8.) |
| 10522. |
|
When the value of the attribute
variable in an InitialAssignment object refers to a Species object, the unit of measurement associated with the InitialAssignment’s
math expression should be consistent with the unit of that species’ quantity. (References: SBML L3V1 Section 4.8.) |
| 10523. |
|
When the value of the attribute
variable in an InitialAssignment object refers to a Parameter object, the unit of measurement associated with the InitialAssignment’s
math expression should be consistent with the unit declared for that parameter’s value. (References: L2V2 SBML L3V1 Section 4.8.) |
|
10524. |
|
When the value of the attribute
variable in an InitialAssignment object refers to a SpeciesReference object, the unit of measurement associated with the InitialAssignment’s
math expression should be consistent with the unit of stoichiometry, that is,
dimensionless. (References: SBML L3V1 Section 4.8.) |
| 10531. |
|
When the value of the attribute
variable in a RateRule object refers to a Compartment object, the unit of measurement associated with the RateRule’s
math expression should be consistent with {unit of compartment size}/{unit of time}. (References: SBML L3V1 Sections 4.5.4, 4.2.4 and 4.9.4.) |
| 10532. |
|
When the value of the attribute
variable in a RateRule object refers to a Species object, the unit of measurement associated with the RateRule’s
math expression should be consistent with {unit of species quantity}/{unit of time}. (References: SBML L3V1 Sections 4.6.5, 4.2.4 and 4.9.4.) |
| 10533. |
|
When the value of the attribute
variable in a RateRule object refers to a Parameter object, the unit of measurement associated with the RateRule’s
math expression should be consistent with {parameter’s
units}/{unit of time}. (References: SBML L3V1 Sections 4.7.3, 4.2.4 and 4.9.4.) |
|
10534. |
|
When the value of the attribute
variable in a RateRule object refers to a SpeciesReference object, the unit of measurement associated with the RateRule’s
math expression should be consistent with {unit derived from
dimensionless}/{unit of time}. (References: SBML L3V1 Sections 4.11.3, 4.2.4 and 4.9.4.) |
| 10541. |
|
In a KineticLaw object, the unit of measurement associated with the formula in the KineticLaw’s
math expression should be equal to {unit of reaction extent}/{unit of time}. (References: SBML L3V1 Sections 4.11.7, 4.2.4 and 4.9.4.) |
|
10542. |
|
For every Species object produced or consumed in a reaction (that is, referenced by a SpeciesReference object), the unit of measurement of the species’ substance should be consistent with the unit of extent for the model times the unit of the conversion factor for that species. More precisely, the product of the units indicated by the Model object’s
extentUnits and the
conversionFactor attribute for that particular Species (whether the attribute is set directly on the Species object or inherited from the enclosing Model object) should be consistent with the unit specified by that Species object’s
substanceUnits attribute value. (References: SBML L3V1 Section 4.2.6.) |
| 10551. |
|
In an Event object, the unit of measurement associated with a Delay object’s
math expression object should be identical to the unit indicated by the Model object’s
timeUnits attribute. (References: SBML L3V1 Section 4.12.4.) |
| 10561. |
|
When the value of the attribute
variable of an EventAssignment object is the identifier of a Compartment object, the unit of measurement associated with the EventAssignment’s
math expression should be consistent with the unit of that compartment’s size. (References: SBML L3V1 Section 4.12.5.) |
| 10562. |
|
When the value of the attribute
variable of an EventAssignment object is the identifier of a Species object, the unit of measurement associated with the EventAssignment’s
math expression should be consistent with the unit of that species’ size. (References: SBML L3V1 Section 4.12.5.) |
| 10563. |
|
When the value of the attribute
variable of an EventAssignment object is the identifier of a Parameter object, the unit of measurement associated with the EventAssignment’s
math expression should be consistent with the unit declared for that parameter’s value. (References: SBML L3V1 Section 4.12.5.) |
|
10564. |
|
When the value of the attribute
variable of an EventAssignment object is the identifier of a SpeciesReference object, the unit of measurement associated with the EventAssignment’s
math expression should be consistent with the unit of stoichiometry, i.e.,
dimensionless. (References: SBML L3V1 Section 4.12.5.) |
|
10565. |
|
In an Event object, the unit of measurement associated with a Priority object’s
math expression object should be
dimensionless. (References: SBML L3V1 Section 4.12.3.) |
| General rules for model definitions |
| 10601. |
|
A system of equations created from an SBML model must not be overdetermined. (References: SBML L3V1 Section 4.9.5.) |
| General rules for SBO usage |
| 10701. |
|
The value of the attribute
sboTerm on a Model object should be an SBO identifier referring to an interaction framework defined in SBO. That is, the value should be a term derived from
SBO:0000231, “interaction”. (References: SBML L3V1 Section 5.) |
| 10702. |
|
The value of the attribute
sboTerm on a FunctionDefinition object should be an SBO identifier referring to a mathematical expression. That is, the value should be a term derived from
SBO:0000064, “mathematical expression”. (References: SBML L3V1 Section 5.) |
| 10703. |
|
The value of the attribute
sboTerm on a Parameter object should be an SBO identifier referring to a quantitative parameter. That is, the value should be a term derived from
SBO:0000002, “quantitative parameter”. (References: SBML L3V1 Section 5.) |
| 10704. |
|
The value of the attribute
sboTerm on an InitialAssignment object should be an SBO identifier referring to a mathematical expression. That is, the value should be a term derived from
SBO:0000064, “mathematical expression”. (References: SBML L3V1 Section 5.) |
| 10705. |
|
The value of the attribute
sboTerm on a AlgebraicRule, RateRule or AssignmentRule object should be an SBO identifier referring to a mathematical expression. That is, the value should be a term derived from
SBO:0000064, “mathematical expression”. (References: SBML L3V1 Section 5.) |
| 10706. |
|
The value of the attribute
sboTerm on a Constraint object should be an SBO identifier referring to a mathematical expression. That is, the value should be a term derived from
SBO:0000064, “mathematical expression”. (References: SBML L3V1 Section 5.) |
| 10707. |
|
The value of the attribute
sboTerm on a Reaction object should be an SBO identifier referring to an interaction framework. That is, the value should be a term derived from
SBO:0000231, “interaction”. (References: SBML L3V1 Section 5.) |
| 10708. |
|
The value of the attribute
sboTerm on a SpeciesReference or a ModifierSpeciesReference object should be an SBO identifier referring to a participant role. That is, the value should be a term derived from
SBO:0000003, “participant role”. The appropriate term depends on whether the entity is a reactant, product or modifier. (References: SBML L3V1 Section 5.) |
| 10709. |
|
The value of the attribute
sboTerm on a KineticLaw object should be an SBO identifier referring to a rate law. That is, the value should be a term derived from
SBO:0000001, “rate law”. (References: SBML L3V1 Section 5.) |
| 10710. |
|
The value of the attribute
sboTerm on an Event object should be an SBO identifier referring to a mathematical expression. That is, the value should be a term derived from
SBO:0000231, “interaction”. (References: SBML L3V1 Section 5.) |
| 10711. |
|
The value of the attribute
sboTerm on an EventAssignment object should be an SBO identifier referring to a mathematical expression. That is, the value should be a term derived from
SBO:0000064, “mathematical expression”. (References: SBML L3V1 Section 5.) |
| 10712. |
|
The value of the attribute
sboTerm on a Compartment object should be an SBO identifier referring to a material entity. That is, the value should be a term derived from
SBO:0000240, “material entity”. (References: SBML L3V1 Section 5.) |
| 10713. |
|
The value of the attribute
sboTerm on a Species object should be an SBO identifier referring to a material entity. That is, the value should be a term derived from
SBO:0000240, “material entity”. (References: SBML L3V1 Section 5.) |
| 10716. |
|
The value of the attribute
sboTerm on a Trigger object should be an SBO identifier referring to a mathematical expression. That is, the value should be a term derived from
SBO:0000064, “mathematical expression”. (References: SBML L3V1 Section 5.) |
| 10717. |
|
The value of the attribute
sboTerm on a Delay object should be an SBO identifier referring to a mathematical expression. That is, the value should be a term derived from
SBO:0000064, “mathematical expression”. (References: SBML L3V1 Section 5.) |
|
General rules for
notes
elements
|
| 10801. |
|
The contents of a Notes object must be explicitly placed in the XHTML XML namespace. (References: SBML L3V1 Section 3.2.3.) |
| 10802. |
|
The contents of a Notes object must not contain an XML declaration, i.e., a string of the form “
<?xml version=“1.0” encoding=“UTF-8”?>“ or similar. (References: SBML L3V1 Section 3.2.3.) |
| 10803. |
|
The content of a Notes object must not contain an XML DOCTYPE declaration, i.e., a string beginning with the characters “
<!DOCTYPE“. (References: SBML L3V1 Section 3.2.3.) |
|
10805. |
|
A given SBML object may contain at most one Notes subobject. (References: SBML L3V1 Section 3.2.) |
|
Rules for the
<sbml>
container element
|
| 20101. |
|
The
sbml container element must declare the XML Namespace for SBML, and this declaration must be consistent with the values of the
level and
version attributes on the
sbml element. (References: SBML L3V1 Section 4.1.) |
| 20102. |
|
The
sbml container element must declare the SBML Level using the attribute
level, and this declaration must be consistent with the XML Namespace declared for the
sbml element. (References: SBML L3V1 Section 4.1.) |
| 20103. |
|
The
sbml container element must declare the SBML Version using the attribute
version, and this declaration must be consistent with the XML Namespace declared for the
sbml element. (References: SBML L3V1 Section 4.1.) |
|
20104. |
|
The
sbml container element must declare the XML Namespace for any SBML Level 3 packages used within the SBML document. This declaration must be consistent with the values of the
level and
version attributes on the
sbml element. (References: SBML L3V1 Section 4.1.2.) |
|
20105. |
|
The attribute
level on the
sbml container element must have a value of type
positiveInteger. (References: SBML L3V1 Section 3.1.4.) |
|
20106. |
|
The attribute
version on the
sbml container element must have a value of type
positiveInteger. (References: SBML L3V1 Section 3.1.4.) |
|
20107. |
|
The attribute
xmlns on the
sbml container element must have a value of type
string. (References: SBML L3V1 Section 3.1.1.) |
|
20108. |
|
The
sbml object may have the optional attributes
metaid and
sboTerm. (References: SBML L3V1 Section 4.2.8.) |
| Rules for Model components |
| 20201. |
|
An SBML document must contain a Model object. (References: SBML L3V1 Section 4.1). |
| 20203. |
|
The various
listOf container objects in a Model instance are optional, but if present, such container elements must not be empty. Specifically, if any of the following is present in a Model, it must not be empty: ListOfFunctionDefinitions, ListOfUnitDefinitions, ListOfCompartments, ListOfSpecies, ListOfParameters, ListOfInitialAssignments, ListOfRules, ListOfConstraints, ListOfReactions and ListOfEvents. (References: SBML L3V1 Section 4.2.) |
| 20204. |
|
If a model defines any Species object, then the model must also define at least one Compartment object. This is an implication of the fact that the
compartment attribute on Species is not optional. (References: SBML L3V1 Section 4.6.3.) |
|
20205. |
|
There may be at most one instance of each of the following kind of object in a Model object: ListOfFunctionDefinitions, ListOfUnitDefinitions, ListOfCompartments, ListOfSpecies, ListOfParameters, ListOfInitialAssignments, ListOfRules, ListOfConstraints, ListOfReactions and ListOfEvents. (References: SBML L3V1 Section 4.2.) |
|
20206. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfFunctionDefinitions container object may only contain FunctionDefinition objects. (References: SBML L3V1 Section 4.2.8.) |
|
20207. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfUnitDefinitions container object may only contain UnitDefinition objects. (References: SBML L3V1 Section 4.2.8.) |
|
20208. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfCompartments container object may only contain Compartment objects. (References: SBML L3V1 Section 4.2.8.) |
|
20209. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfSpecies container object may only contain Species objects. (References: SBML L3V1 Section 4.2.8.) |
|
20210. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfParameters container object may only contain Parameter objects. (References: SBML L3V1 Section 4.2.8.) |
|
20211. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfInitialAssignments container object may only contain InitialAssignment objects. (References: SBML L3V1 Section 4.2.8.) |
|
20212. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfRules container object may only contain AssignmentRule, AlgebraicRule and/or RateRule objects. (References: SBML L3V1 Section 4.2.8.) |
|
20213. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfConstraints container object may only contain Constraint objects. (References: SBML L3V1 Section 4.2.8.) |
|
20214. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfReactions container object may only contain Reaction objects. (References: SBML L3V1 Section 4.2.8.) |
|
20215. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfEvents container object may only contain Event objects. (References: SBML L3V1 Section 4.2.8.) |
|
20216. |
|
The value of the attribute
conversionFactor on a Model object must be the identifier of an existing Parameter object defined in the Model object’s ListOfParameters. (References: SBML L3V1 Section 4.2.) |
|
20217. |
|
The value of the attribute
timeUnits on a Model object should be either the units “
second“, “
dimensionless“, or the identifier of a UnitDefinition object based on these units. (References: SBML L3V1 Section 4.2.4.) |
|
20218. |
|
The value of the attribute
volumeUnits on a Model object should be either the units “
litre“, “
dimensionless“, or the identifier of a UnitDefinition object based on these units or a unit derived from “
metre“ (with an
exponent of “
3“). (References: SBML L3V1 Section 4.2.5.) |
|
20219. |
|
The value of the attribute
areaUnits on a Model object should be either “
dimensionless“ or the identifier of a UnitDefinition object based on “
dimensionless“ or a unit derived from “
metre“ (with an
exponent of “
2“). (References: SBML L3V1 Section 4.2.5.) |
|
20220. |
|
The value of the attribute
lengthUnits on a Model object should be either the units “
metre“, “
dimensionless“, or the identifier of a UnitDefinition object based on these units. (References: SBML L3V1 Section 4.2.5.) |
|
20221. |
|
The value of the attribute
extentUnits on a Model object should be either the units “
mole“, “
item“, “
avogadro“, “
dimensionless“, “
kilogram“, “
gram“, or the identifier of a UnitDefinition object based on these units. (References: SBML L3V1 Section 4.2.6.) |
|
20222. |
|
A Model object may only have the following attributes, all of which are optional:
metaid,
sboTerm,
id,
name,
substanceUnits,
timeUnits,
volumeUnits,
areaUnits,
lengthUnits,
extentUnits and
conversionFactor. No other attributes from the SBML Level 3 Core namespace are permitted on a Model object. (References: SBML L3V1 Section 4.2.) |
|
20223. |
|
A ListOfFunctionDefinitions object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfFunctionDefinitions object. (References: SBML L3V1 Section 4.2.8.) |
|
20224. |
|
A ListOfUnitDefinitions object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfUnitDefinitions object. (References: SBML L3V1 Section 4.2.8.) |
|
20225. |
|
A ListOfCompartments object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfCompartments object. (References: SBML L3V1 Section 4.2.8.) |
|
20226. |
|
A ListOfSpecies object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfSpecies object. (References: SBML L3V1 Section 4.2.8.) |
|
20227. |
|
A ListOfParameters object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfParameters object. (References: SBML L3V1 Section 4.2.8.) |
|
20228. |
|
A ListOfInitialAssignments object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfInitialAssignments object. (References: SBML L3V1 Section 4.2.8.) |
|
20229. |
|
A ListOfRules object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfRules object. (References: SBML L3V1 Section 4.2.8.) |
|
20230. |
|
A ListOfConstraints object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfConstraints object. (References: SBML L3V1 Section 4.2.8.) |
|
20231. |
|
A ListOfReactions object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfReactions object. (References: SBML L3V1 Section 4.2.8.) |
|
20232. |
|
A ListOfEvents object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfEvents object. (References: SBML L3V1 Section 4.2.8.) |
| Rules for FunctionDefinition components |
| 20301. |
|
The top-level element within the MathML
math element in a FunctionDefinition object must be either exactly one MathML
lambda element, or exactly one MathML
semantics element containing exactly one
lambda element. (References: SBML L3V1 Section 4.3.2.) |
| 20303. |
|
Inside the
lambda MathML element within a FunctionDefinition object, the identifier of that object (i.e., value of the FunctionDefinition’s
id attribute) cannot appear as the value of a
ci element. Such usage would entail a recursive function call, but SBML functions are not permitted to be recursive. (References: SBML L3V1 Sections 3.4.3 and 4.3.2.) |
| 20304. |
|
Inside the
lambda MathML element within a FunctionDefinition object, if a
ci element is not the first element within a MathML
apply, then the
ci element’s value may only be an identifier provided as the value of a
bvar element declared in that
lambda. This restriction also applies to the
csymbol objects for time and avogadro. In other words, all model quantities and variables referenced inside a function definition must be passed as arguments to that function. (References: SBML L3V1 Sections 3.4.3 and 4.3.2.) |
| 20305. |
|
The type of value returned by a FunctionDefinition object’s
math MathML expression must be either boolean or numeric. (References: SBML L3V1 Section 3.4.9.) |
|
20306. |
|
A FunctionDefinition object must contain exactly one MathML
math element. (References: SBML L3V1 Section 4.3.) |
|
20307. |
|
A FunctionDefinition object must have the required attribute
id, and may have the optional attributes
metaid,
sboTerm and
name. No other attributes from the SBML Level 3 Core namespace are permitted on a FunctionDefinition object. (References: SBML L3V1 Section 4.3.) |
| Rules for Unit and UnitDefinition components |
| 20401. |
|
The value of the attribute
id in a UnitDefinition object must conform to the syntax of the SBML data type
UnitSId and not be identical to any unit predefined in SBML. That is, the identifier must not be the same as any of the following base units: “
ampere“, “
avogadro“, “
becquerel“, “
candela“, “
coulomb“, “
dimensionless“, “
farad“, “
gram“, “
gray“, “
henry“, “
hertz“, “
item“, “
joule“, “
katal“, “
kelvin“, “
kilogram“, “
litre“, “
lumen“, “
lux“, “
metre“, “
mole“, “
newton“, “
ohm“, “
pascal“, “
radian“, “
second“, “
siemens“, “
sievert“, “
steradian“, “
tesla“, “
volt“, “
watt“, or “
weber“. (References: SBML L3V1 Section 4.4.2.) |
| 20410. |
|
The value of the attribute
kind of a Unit object must conform to the syntax of the SBML data type
UnitSId and may only take on the value of a base unit defined in SBML; that is, the value must be one of the following units: “
ampere“, “
avogadro“, “
becquerel“, “
candela“, “
coulomb“, “
dimensionless“, “
farad“, “
gram“, “
gray“, “
henry“, “
hertz“, “
item“, “
joule“, “
katal“, “
kelvin“, “
kilogram“, “
litre“, “
lumen“, “
lux“, “
metre“, “
mole“, “
newton“, “
ohm“, “
pascal“, “
radian“, “
second“, “
siemens“, “
sievert“, “
steradian“, “
tesla“, “
volt“, “
watt“, or “
weber“. The SBML unit system is not hierarchical, and user-defined units cannot be defined using other user-defined units. (References: SBML L3V1 Section 4.4.2.) |
|
20413. |
|
The ListOfUnits container object in a UnitDefinition object is optional, but if present, it must not be empty. (References: SBML L3V1 Section 4.4.) |
|
20414. |
|
There may be at most one ListOfUnits container objects in a UnitDefinition object. (References: SBML L3V1 Section 4.4.) |
|
20415. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfUnits container object may only contain Unit objects. (References: SBML L3V1 Section 4.2.8.) |
|
20416. |
|
The attribute
exponent on a Unit object must have a value of type
double. (References: SBML L3V1 Section 3.1.5.) |
|
20417. |
|
The attribute
scale on a Unit object must have a value of type
int. (References: SBML L3V1 Section 3.1.3.) |
|
20418. |
|
The attribute
multiplier on a Unit object must have a value of type
double. (References: SBML L3V1 Section 3.1.5.) |
|
20419. |
|
A UnitDefinition object must have the required attribute
id and may have the optional attributes
metaid,
sboTerm and
name. No other attributes from the SBML Level 3 Core namespace are permitted on a UnitDefinition object. (References: SBML L3V1 Section 4.4.) |
|
20420. |
|
A ListOfUnits object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfUnits object. (References: SBML L3V1 Section 4.2.8.) |
|
20421. |
|
A Unit object must have the required attributes
kind,
exponent,
scale and
multiplier, and may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a Unit object. (References: SBML L3V1 Section 4.4.) |
| Rules for Compartment components |
| 20507. |
|
The value of the attribute
units on a Compartment object having
spatialDimensions of “
1“ should be either “
metre“, “
dimensionless“, or the identifier of a UnitDefinition object based on either
metre (with
exponent equal to “
1“) or
dimensionless. (References: SBML L3V1 Section 4.5.4.) |
| 20508. |
|
The value of the attribute
units on a Compartment object having
spatialDimensions of “
2“ should be either “
dimensionless“, or the identifier of a UnitDefinition object based on either
metre (with
exponent equal to “
2“) or
dimensionless. (References: SBML L3V1 Section 4.5.4.) |
| 20509. |
|
The value of the attribute
units on a Compartment object having
spatialDimensions of “
3“ should be either “
litre“, or the identifier of a UnitDefinition object based on either
litre,
metre (with
exponent equal to “
3“), or
dimensionless. (References: SBML L3V1 Section 4.5.4.) |
|
20511. |
|
If the attribute
units on a Compartment object having a
spatialDimensions attribute value of “
1“ has not been set, then the unit of measurement associated with the compartment’s size is determined by the value of the enclosing Model object’s
lengthUnits attribute. If neither the Compartment object’s
units nor the enclosing Model object’s
lengthUnits attributes are set, the unit of compartment size is undefined. (References: SBML L3V1 Section 4.5.4.) |
|
20512. |
|
If the attribute
units on a Compartment object having a
spatialDimensions attribute value of “
2“ has not been set, then the unit of measurement associated with the compartment’s size is determined by the value of the enclosing Model object’s
areaUnits attribute. If neither the Compartment object’s
units nor the enclosing Model object’s
areaUnits attributes are set, the unit of compartment size is undefined. (References: SBML L3V1 Section 4.5.4.) |
|
20513. |
|
If the attribute
units on a Compartment object having a
spatialDimensions attribute value of “
3“ has not been set, then the unit of measurement associated with the compartment’s size is determined by the value of the enclosing Model object’s
volumeUnits attribute. If neither the Compartment object’s
units nor the enclosing Model object’s
volumeUnits attributes are set, the unit of compartment size is undefined. (References: SBML L3V1 Section 4.5.4.) |
|
20514. |
|
The attribute
spatialDimensions on a Compartment object must have a value of type
double. (References: SBML L3V1 Section 3.1.5.) |
|
20515. |
|
The attribute
size on a Compartment object must have a value of type
double. (References: SBML L3V1 Section 3.1.5.) |
|
20516. |
|
The attribute
constant on a Compartment object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
20517. |
|
A Compartment object must have the required attributes
id and
constant, and may have the optional attributes
metaid,
sboTerm,
name,
spatialDimensions,
size and
units. No other attributes from the SBML Level 3 Core namespace are permitted on a Compartment object. (References: SBML L3V1 Section 4.5.) |
|
20518. |
|
If neither the attribute
units nor the attribute
spatialDimensions on a Compartment object is set, the unit associated with that compartment’s size is undefined. |
| Rules for Species components |
| 20601. |
|
The value of the attribute
compartment in a Species object must be the identifier of an existing Compartment object defined in the enclosing Model object. (References: SBML L3V1 Section 4.6.3.) |
| 20608. |
|
The value of a Species object’s
substanceUnits attribute should only be one of the following: “
substance“, “
mole“, “
item“, “
gram“, “
kilogram“, “
dimensionless“, “
avogadro“ or the identifier of a UnitDefinition object derived from “
mole“ (with an
exponent of “
1“), “
item“ (with an
exponent of “
1“), “
gram“ (with an
exponent of “
1“), “
kilogram“ (with an
exponent of “
1“), “
avogadro“ (with an
exponent of “
1“) or “
dimensionless“. (References: SBML L3V1 Section 4.6.5.) |
| 20609. |
|
A Species object cannot have values for both its
initialConcentration and
initialAmount attributes because these attributes are mutually exclusive. (References: SBML L3V1 Section 4.6.4.) |
| 20610. |
|
The quantity of a Species object in a model cannot be determined simultaneously by both reactions and rules. More formally, if the identifier of a Species object having attribute values
boundaryCondition=“
false“ and
constant=“
false“ is referenced by a SpeciesReference object anywhere in a model, then this identifier cannot also appear as the value of a
variable in an AssignmentRule or a RateRule object. (References: SBML L3V1 Section 4.6.6.) |
| 20611. |
|
A Species object having a value of “
false“ for its attribute
boundaryCondition cannot appear as a reactant or product in any reaction if that Species also has a value of “
true“ for its attribute
constant. (References: SBML L3V1 Section 4.6.6.) |
| 20614. |
|
The attribute
compartment in Species is mandatory. A Species object in a model must include a value for this attribute. (References: SBML L3V1 Section 4.6.3.) |
|
20616. |
|
If the attribute
substanceUnits in a Species object has not been set, then the unit of measurement associated with the species’ quantity is determined by the value of the enclosing Model object’s
substanceUnits attribute. If neither the Species object’s
substanceUnits attribute nor the enclosing Model object’s
substanceUnits attribute are set, then the unit of that species’ quantity is undefined. (References: SBML L3V1 Section 4.6.5.) |
|
20617. |
|
The value of the attribute
conversionFactor on a Species object must be the identifier of an existing Parameter object defined in the enclosing Model object. (References: SBML L3V1 Section 4.6.7.) |
|
20618. |
|
The attribute
initialAmount on a Species object must have a value of type
double. (References: SBML L3V1 Section 3.1.5.) |
|
20619. |
|
The attribute
initialConcentration on a Species object must have a value of type
double. (References: SBML L3V1 Section 3.1.5.) |
|
20620. |
|
The attribute
hasOnlySubstanceUnits on a Species object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
20621. |
|
The attribute
boundaryCondition on a Species object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
20622. |
|
The attribute
constant on a Species object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
20623. |
|
A Species object must have the required attributes
id,
compartment,
hasOnlySubstanceUnits,
boundaryCondition and
constant, and may have the optional attributes
metaid,
sboTerm,
name,
initialAmount,
initialConcentration,
substanceUnits and
conversionFactor. No other attributes from the SBML Level 3 Core namespace are permitted on a Species object. (References: SBML L3V1 Section 4.6.) |
| Rules for Parameter components |
| 20701. |
|
The
units attribute of a Parameter object must be a value chosen from among the following: the identifier of a UnitDefinition object in the enclosing Model object, or one of the base units in SBML. (References: SBML L3V1 Section 4.7.3.) |
|
20702. |
|
If the attribute
units on a given Parameter object has not been set, then the unit of measurement associated with that parameter’s value is undefined. (References: SBML L3V1 Section 4.7.3.) |
|
20703. |
|
The attribute
value on a Parameter object must have a value of type
double. (References: SBML L3V1 Section 3.1.5.) |
|
20704. |
|
The attribute
constant on a Parameter object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
20705. |
|
A Parameter object referenced by the attribute
conversionFactor on a Species or Model object must have a value of “
true“ for its attribute
constant. (References: SBML L3V1 Section 4.6.7.) |
|
20706. |
|
A Parameter object must have the required attributes
id and
constant, and may have the optional attributes
metaid,
sboTerm,
name,
value and
units. No other attributes from the SBML Level 3 Core namespace are permitted on a Parameter object. (References: SBML L3V1 Section 4.7.) |
| Rules for InitialAssignment components |
| 20801. |
|
The value of the attribute
symbol in an InitialAssignment object must be the identifier of an existing Compartment, Species, Parameter or SpeciesReference object defined in the model. (References: SBML L3V1 Section 4.8.) |
| 20802. |
|
A given identifier cannot appear as the value of more than one InitialAssignment object’s
symbol attribute across the set of all InitialAssignment objects in a model. (References: SBML L3V1 Section 4.8.) |
| 20803. |
|
The identifier given as the value of the attribute
symbol in any InitialAssignment object cannot also appear as the value of the
variable attribute in an AssignmentRule object. In other words, a model cannot simultaneously define both an initial assignment and an assignment rule for the same species, compartment or parameter in a model. (References: SBML L3V1 Section 4.8.) |
|
20804. |
|
An InitialAssignment object must contain exactly one MathML
math element. (References: SBML L3V1 Section 4.8.) |
|
20805. |
|
An InitialAssignment object must have the required attribute
symbol and may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on an InitialAssignment object. (References: SBML L3V1 Section 4.8.) |
| Rules for AssignmentRule, RateRule and AlgebraicRule components |
| 20901. |
|
The value of an AssignmentRule object’s
variable attribute must be the identifier of an existing Compartment, Species, Parameter or SpeciesReference object defined in the model. (References: SBML L3V1 Section 4.9.3.) |
| 20902. |
|
The value of a RateRule object’s
variable attribute must be the identifier of an existing Species, Compartment, Parameter or SpeciesReference object defined in the model. (References: SBML L3V1 Section 4.9.4.) |
| 20903. |
|
Any Compartment, Species, Parameter or SpeciesReference object whose identifier is the value of the attribute
variable in an AssignmentRule object, must have a value of “
false“ for its
constant attribute. (References: SBML L3V1 Section 4.9.3.) |
| 20904. |
|
Any Compartment, Species, Parameter or SpeciesReference object whose identifier is the value of the attribute
variable in a RateRule object, must have a value of “
false“ for its
constant attribute. (References: SBML L3V1 Section 4.9.4.) |
| 20906. |
|
There must not be circular dependencies in the combined set of InitialAssignment, AssignmentRule and KineticLaw objects in a model. Each of these constructs has the e3ect of assigning a value to an identifier (i.e., the identifier given in the attribute
symbol in InitialAssignment, the attribute
variable in AssignmentRule, and the attribute
id on the KineticLaw’s enclosing Reaction). Each of these constructs computes the value using a mathematical formula. The formula for a given identifier cannot make reference to a second identifier whose own definition depends directly or indirectly on the first identifier. (References: SBML L3V1 Section 4.9.5.) |
|
20907. |
|
Every AssignmentRule, RateRule and AlgebraicRule object must contain exactly one MathML
math element. (References: SBML L3V1 Section 4.9.) |
|
20908. |
|
An AssignmentRule object must have the required attribute
variable and may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on an AssignmentRule object. (References: SBML L3V1 Section 4.9.) |
|
20909. |
|
A RateRule object must have the required attribute
variable and may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a RateRule object. (References: SBML L3V1 Section 4.9.) |
|
20910. |
|
An AlgebraicRule object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on an AlgebraicRule object. (References: SBML L3V1 Section 4.9.) |
| Rules for Constraint components |
| 21001. |
|
The MathML
math element in a Constraint object must evaluate to a value of type
boolean. (References: SBML L3V1 Section 4.10.) |
| 21004. |
|
The contents of the Message subobject in a Constraint object must not contain an XML declaration (i.e., a string of the form “
<?xml version=“1.0” encoding=“UTF-8”?>“ or similar). (References: SBML L3V1 Section 4.10.2.) |
| 21005. |
|
The contents of the Message subobject in a Constraint object must not contain an XML DOC-TYPE declaration (i.e., a string beginning with the characters “
<!DOCTYPE“. (References: SBML L3V1 Section 4.10.2.) |
|
21007. |
|
A Constraint object must contain exactly one MathML
math element. (References: SBML L3V1 Section 4.10.) |
|
21008. |
|
A Constraint object may contain at most one Message subobject. (References: SBML L3V1 Section 4.10.) |
|
21009. |
|
A Constraint object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a Constraint object. (References: SBML L3V1 Section 4.10.) |
| Rules for Reaction components |
| 21101. |
|
A Reaction object must contain at least one SpeciesReference object, either in its
listOfReactants or its
listOfProducts element. A reaction without any reactant or product species is not permitted, regardless of whether the reaction has any modifier species. (References: SBML L3V1 Section 4.11.3.) |
| 21103. |
|
The following are all optional in a Reaction object, but if any is present, it must not be empty: KineticLaw, the elements
listOfReactants and
listOfProducts (both ListOfSpeciesReferences objects) and the element
listOfModifiers (a ListOfModifierSpeciesReferences object). (References: SBML L3V1 Section 4.11.) |
| 21104. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, the ListOfSpeciesReferences container objects (i.e., the Reaction elements
listOfReactants and
listOfProducts) may only contain SpeciesReference objects. (References: SBML L3V1 Section 4.11.) |
| 21105. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, ListOfModifierSpeciesReferences container objects (i.e., the Reaction element
listOfModifiers) may only contain ModifierSpeciesReference objects. (References: SBML L3V1 Section 4.11.) |
|
21106. |
|
A Reaction object may contain at most one of each of the following elements:
listOfReactants,
listOfProducts,
listOfModifiers, and
kineticLaw. (References: SBML L3V1 Section 4.11.) |
|
21107. |
|
The value of the attribute
compartment in a Reaction object is optional, but if present, must be the identifier of an existing Compartment object defined in the model. (References: SBML L3V1 Section 4.11.1.) |
|
21108. |
|
The attribute
reversible on a Reaction object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
21109. |
|
The attribute
fast on a Reaction object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
21110. |
|
A Reaction object must have the required attributes
id,
reversible and
fast, and may have the optional attributes
metaid,
sboTerm,
name and
compartment. No other attributes from the SBML Level 3 Core namespace are permitted on a Reaction object. (References: SBML L3V1 Section 4.11.) |
|
21150. |
|
A ListOfSpeciesReferences object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfSpeciesReferences object. (References: SBML L3V1 Section 4.11.) |
|
21151. |
|
A ListOfModifierSpeciesReferences object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on an object of class ListOfModifierSpeciesReferences. (References: SBML L3V1 Section 4.11.) |
| Rules for SpeciesReference and ModifierSpeciesReference components |
| 21111. |
|
The value of a SpeciesReference object’s
species attribute must be the identifier of an existing Species object in the model. (References: SBML L3V1 Section 4.11.3.) |
|
21114. |
|
The attribute
stoichiometry on a SpeciesReference object must have a value of type
double. (References: SBML L3V1 Section 3.1.5.) |
|
21115. |
|
The attribute
constant on a SpeciesReference object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
21116. |
|
A SpeciesReference object must have the required attributes
species and
constant, and may have the optional attributes
metaid,
sboTerm,
id,
name and
stoichiometry. No other attributes from the SBML Level 3 Core namespace are permitted on a SpeciesReference object. (References: SBML L3V1 Section 4.11.) |
|
21117. |
|
A ModifierSpeciesReference object must have the required attribute
species and may have the optional attributes
metaid,
sboTerm,
id and
name. No other attributes from the SBML Level 3 Core namespace are permitted on a ModifierSpeciesReference object. (References: SBML L3V1 Section 4.11.) |
| Rules for KineticLaw components |
| 21121. |
|
All Species objects referenced in the MathML
math element of a KineticLaw object within a given Reaction object must first be declared using SpeciesReference or ModifierSpeciesReference objects. In other words, if a Species object identifier appears in a MathML
ci element within the Reaction’s KineticLaw
math content, that same species’ identifier must also appear in at least one object of type SpeciesReference or ModifierSpeciesReference within the
listOfReactants,
listOfProducts and/or
listOfModifiers elements of the Reaction object. (References: SBML L3V1 Section 4.11.5.) |
| 21123. |
|
The ListOfLocalParameters container object in a KineticLaw object is optional, but if present, it must not be empty. (References: SBML L3V1 Section 4.11.) |
|
21127. |
|
A KineticLaw object may contain at most one ListOfLocalParameters container object. (References: SBML L3V1 Section 4.11.) |
|
21128. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfLocalParameters container object may only contain LocalParameter objects. (References: SBML L3V1 Section 4.2.8.) |
|
21129. |
|
A ListOfLocalParameters object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfLocalParameters object. (References: SBML L3V1 Section 4.11.) |
|
21130. |
|
A KineticLaw object must contain exactly one MathML
math element. (References: SBML L3V1 Section 4.11.) |
|
21132. |
|
A KineticLaw object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a KineticLaw. (References: SBML L3V1 Section 4.11.) |
| Rules for LocalParameter components |
|
21171. |
|
The attribute
value on a LocalParameter object must have a value of type
double. (References: SBML L3V1 Section 3.1.5.) |
|
21172. |
|
A LocalParameter object must have the required attribute
id and may have the optional attributes
metaid,
sboTerm,
name,
value and
units. No other attributes from the SBML Level 3 Core namespace are permitted on a LocalParameter object. (References: SBML L3V1 Section 4.11.) |
| Rules for Event components |
| 21201. |
|
An Event object must contain exactly one Trigger object. (References: SBML L3V1 Section 4.12.2.) |
| 21202. |
|
The MathML
math element of a Trigger object must evaluate to a value of type
boolean. (References: SBML L3V1 Section 4.12.2.) |
| 21203. |
|
The ListOfEventAssignments container object in an Event object is optional, but if present, it must not be empty. (References: SBML L3V1 Section 4.12.) |
|
21208. |
|
The attribute
useValuesFromTriggerTime on an Event object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
21209. |
|
A Trigger object must contain exactly one MathML
math element. (References: SBML L3V1 Section 4.12.) |
|
21210. |
|
A Delay object must contain exactly one MathML
math element. (References: SBML L3V1 Section 4.12.) |
|
21221. |
|
An Event object may contain at most one Delay object. (References: SBML L3V1 Section 4.12.) |
|
21222. |
|
An Event object may contain at most one ListOfEventAssignments object. (References: SBML L3V1 Section 4.12.) |
|
21223. |
|
Apart from the general notes and annotation subobjects permitted on all SBML components, a ListOfEventAssignments container object may only contain EventAssignment objects. (References: SBML L3V1 Section 4.12.5.) |
|
21224. |
|
A ListOfEventAssignments object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a ListOfEventAssignments object. (References: SBML L3V1 Section 4.12.5.) |
|
21225. |
|
An Event object must have the required attribute
useValuesFromTriggerTime, and in addition, may have the optional attributes
metaid,
sboTerm,
id, and
name. No other attributes from the SBML Level 3 Core namespace are permitted on an Event object. (References: SBML L3V1 Section 4.12.) |
|
21226. |
|
A Trigger object must have the required attributes
persistent and
initialValue, and in addition, may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a Trigger object. (References: SBML L3V1 Section 4.12.) |
|
21227. |
|
A Delay object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a Delay object. (References: SBML L3V1 Section 4.12.) |
|
21228. |
|
The attribute
persistent on an Trigger object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
21229. |
|
The attribute
initialValue on a Trigger object must have a value of type
boolean. (References: SBML L3V1 Section 3.1.2.) |
|
21230. |
|
An Event object may contain at most one Priority object. (References: SBML L3V1 Section 4.12.) |
|
21231. |
|
A Priority object must contain exactly one MathML
math element. (References: SBML L3V1 Section 4.12.) |
|
21232. |
|
A Priority object may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on a Priority object. (References: SBML L3V1 Section 4.12.) |
| Rules for EventAssignment components |
| 21211. |
|
The value of the attribute
variable in an EventAssignment object may only be the identifier of an existing Compartment, Species, Parameter or SpeciesReference object in the model. (References: SBML L3V1 Section 4.12.5.) |
| 21212. |
|
Any Compartment, Species, Parameter or SpeciesReference object whose identifier is used as the value of the attribute
variable of an EventAssignment object, must have a value of “
false“ for its
constant attribute. (References: SBML L3V1 Section 4.12.5.) |
|
21213. |
|
An EventAssignment object must contain exactly one MathML
math element. (References: SBML L3V1 Section 4.12.) |
|
21214. |
|
An EventAssignment object must have the required attribute
variable and may have the optional attributes
metaid and
sboTerm. No other attributes from the SBML Level 3 Core namespace are permitted on an EventAssignment object. (References: SBML L3V1 Section 4.12.) |