
In SBML, rules provide additional ways to define the values of variables in a model, their relationships, and the dynamical behaviors of those variables. They enable encoding relationships that cannot be expressed using Reaction nor InitialAssignment objects alone.
The libSBML implementation of rules mirrors the SBML Level 2 Version 4 definition, with Rule being the parent class of three subclasses as explained below. The Rule class itself cannot be instantiated by user programs and has no constructor; only the subclasses AssignmentRule, AlgebraicRule and RateRule can be instantiated directly.
In SBML Level 2, rules are separated into three subclasses for the benefit of model analysis software. The three subclasses are based on the following three different possible functional forms (where x is a variable, f is some arbitrary function returning a numerical result, V is a vector of variables that does not include x, and W is a vector of variables that may include x):
| Algebraic: | left-hand side is zero | 0 = f(W) |
| Assignment: | left-hand side is a scalar: | x = f(V) |
| Rate: | left-hand side is a rate-of-change: | dx/dt = f(W) |
In their general form given above, there is little to distinguish between assignment and algebraic rules. They are treated as separate cases for the following reasons:
The approach taken to covering these cases in SBML is to define an abstract Rule structure containing a subelement, "math", to hold the right-hand side expression, then to derive subtypes of Rule that add attributes to distinguish the cases of algebraic, assignment and rate rules. The "math" subelement must contain a MathML expression defining the mathematical formula of the rule. This MathML formula must return a numerical value. The formula can be an arbitrary expression referencing the variables and other entities in an SBML model.
Each of the three subclasses of Rule (AssignmentRule, AlgebraicRule, RateRule) inherit the the "math" subelement and other fields from SBase. The AssignmentRule and RateRule classes add an additional attribute, "variable". See the definitions of AssignmentRule, AlgebraicRule and RateRule for details about the structure and interpretation of each one.
An important design goal of SBML rule semantics is to ensure that a model's simulation and analysis results will not be dependent on when or how often rules are evaluated. To achieve this, SBML needs to place two restrictions on rule use. The first concerns algebraic loops in the system of assignments in a model, and the second concerns overdetermined systems.
The combined set of InitialAssignment, AssignmentRule and KineticLaw objects in a model constitute a set of assignment statements that should be considered as a whole. (A KineticLaw object is counted as an assignment because it assigns a value to the symbol contained in the "id" attribute of the Reaction object in which it is defined.) This combined set of assignment statements must not contain algebraic loops—dependency chains between these statements must terminate. To put this more formally, consider a directed graph in which nodes are assignment statements and directed arcs exist for each occurrence of an SBML species, compartment or parameter symbol in an assignment statement's "math" subelement. Let the directed arcs point from the statement assigning the symbol to the statements that contain the symbol in their "math" subelement expressions. This graph must be acyclic.
SBML does not specify when or how often rules should be evaluated. Eliminating algebraic loops ensures that assignment statements can be evaluated any number of times without the result of those evaluations changing. As an example, consider the set of equations x = x + 1, y = z + 200 and z = y + 100. If this set of equations were interpreted as a set of assignment statements, it would be invalid because the rule for x refers to x (exhibiting one type of loop), and the rule for y refers to z while the rule for z refers back to y (exhibiting another type of loop). Conversely, the following set of equations would constitute a valid set of assignment statements: x = 10, y = z + 200, and z = x + 100.
An SBML model must not be overdetermined; that is, a model must not define more equations than there are unknowns in a model. An SBML model that does not contain AlgebraicRule structures cannot be overdetermined.
LibSBML implements the static analysis procedure described in Appendix D of the SBML Level 2 Version 4 specification for assessing whether a model is overdetermined.
(In summary, assessing whether a given continuous, deterministic, mathematical model is overdetermined does not require dynamic analysis; it can be done by analyzing the system of equations created from the model. One approach is to construct a bipartite graph in which one set of vertices represents the variables and the other the set of vertices represents the equations. Place edges between vertices such that variables in the system are linked to the equations that determine them. For algebraic equations, there will be edges between the equation and each variable occurring in the equation. For ordinary differential equations (such as those defined by rate rules or implied by the reaction rate definitions), there will be a single edge between the equation and the variable determined by that differential equation. A mathematical model is overdetermined if the maximal matchings of the bipartite graph contain disconnected vertexes representing equations. If one maximal matching has this property, then all the maximal matchings will have this property; i.e., it is only necessary to find one maximal matching.)
SBML Level 1 uses a different scheme than SBML Level 2 for distinguishing rules; specifically, it uses an attribute whose value is drawn from an enumeration. LibSBML supports this using methods that work with the RuleType_t enumeration.
| Enumerator | Meaning |
| RULE_TYPE_RATE | Indicates the rule is a "rate" rule. |
| RULE_TYPE_SCALAR | Indicates the rule is a "scalar" rule. |
| RULE_TYPE_UNKNOWN | Indicates the rule type is unknown or not yet set. |
Definition at line 16211 of file libsbml.py.
| def libsbml.SBase.__eq__ | ( | self, | ||
| rhs | ||||
| ) | [inherited] |
Definition at line 3296 of file libsbml.py.
| def libsbml.SBase.__init__ | ( | self, | ||
| args, | ||||
| kwargs | ||||
| ) | [inherited] |
| def libsbml.Rule.__init__ | ( | self, | ||
| args | ||||
| ) |
Python method signature(s):
__init__(self, Rule orig)Rule
Only subclasses may create Rules.
Reimplemented in libsbml.AlgebraicRule, libsbml.AssignmentRule, and libsbml.RateRule.
Definition at line 16241 of file libsbml.py.
| def libsbml.SBase.__ne__ | ( | self, | ||
| rhs | ||||
| ) | [inherited] |
Definition at line 3303 of file libsbml.py.
| def libsbml.SBase.addCVTerm | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
addCVTerm(self, CVTerm term)int
Adds a copy of the given CVTerm to this SBML object.
| term | the CVTerm to assign |
Definition at line 2974 of file libsbml.py.
| def libsbml.SBase.appendAnnotation | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
appendAnnotation(self, XMLNode annotation)int appendAnnotation(self, string annotation)
int
Appends the annotation content given by annotation to any existing content in the 'annotation' subelement of this object.
Whereas the SBase 'notes' subelement is a container for content to be shown directly to humans, the 'annotation' element is a container for optional software-generated content not meant to be shown to humans. Every object derived from SBase can have its own value for 'annotation'. The element's content type is XML type any, allowing essentially arbitrary well-formed XML data content.
SBML places a few restrictions on the organization of the content of annotations; these are intended to help software tools read and write the data as well as help reduce conflicts between annotations added by different tools. Please see the SBML specifications for more details.
Unlike SBase.setAnnotation(const XMLNode* annotation) or SBase.setAnnotation(const std.string& annotation), this method allows other annotations to be preserved when an application adds its own data.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
| annotation | an XML string that is to be copied and appended to the content of the 'annotation' subelement of this object |
setAnnotation(const XMLNode* annotation)
setAnnotation(const std.string& annotation)
appendAnnotation(const XMLNode* annotation)
Reimplemented in libsbml.Model, and libsbml.SpeciesReference.
Definition at line 2624 of file libsbml.py.
| def libsbml.SBase.appendNotes | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
appendNotes(self, XMLNode notes)int appendNotes(self, string notes)
int
Appends notes content to the 'notes' element attached to this object.
The content in notes is copied.
The optional element named 'notes', present on every major SBML component type, is intended as a place for storing optional information intended to be seen by humans. An example use of the 'notes' element would be to contain formatted user comments about the model element in which the 'notes' element is enclosed. Every object derived directly or indirectly from type SBase can have a separate value for 'notes', allowing users considerable freedom when adding comments to their models. The format of 'notes' elements must be XHTML 1.0. The SBML Level 2 specification has considerable detail about how 'notes' element content must be handled; please refer to the specifications.
| notes | an XML string that is to appended to the content of the 'notes' subelement of this object |
setNotes(const XMLNode* notes)
setNotes(const std.string& notes)
appendNotes(const XMLNode* notes)
Definition at line 2726 of file libsbml.py.
| def libsbml.Rule.clone | ( | self | ) |
Python method signature(s):
clone(self)Rule
Creates and returns a deep copy of this Rule.
Reimplemented from libsbml.SBase.
Reimplemented in libsbml.AlgebraicRule, libsbml.AssignmentRule, and libsbml.RateRule.
Definition at line 16256 of file libsbml.py.
| def libsbml.Rule.containsUndeclaredUnits | ( | self, | ||
| args | ||||
| ) |
Python method signature(s):
containsUndeclaredUnits(self)bool containsUndeclaredUnits(self)
bool
Predicate returning true or false depending on whether the math expression of this Rule contains parameters/numbers with undeclared units.
true if the math expression of this Rule includes parameters/numbers with undeclared units, false otherwise.true indicates that the UnitDefinition returned by getDerivedUnitDefinition() may not accurately represent the units of the expression.Definition at line 16577 of file libsbml.py.
| def libsbml.SBase.getAncestorOfType | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
getAncestorOfType(self, SBMLTypeCode_t type)SBase
Returns the ancestor SBML object that corresponds to the given SBMLTypeCode_t.
This function allows any object to determine its exact location/function within a model. For example a StoichiometryMath object has ancestors of type SpeciesReference, ListOfProducts/ListOfReactants/ListOfModifiers, Reaction, ListOfReactions and Model; any of which can be accessed via this function.
| type | the SBMLTypeCode_t of the ancestor to be returned. |
Definition at line 2115 of file libsbml.py.
| def libsbml.SBase.getAnnotation | ( | self | ) | [inherited] |
Python method signature(s):
getAnnotation(self)XMLNode
Returns the content of the 'annotation' subelement of this object as an XML node tree.
Whereas the SBase 'notes' subelement is a container for content to be shown directly to humans, the 'annotation' element is a container for optional software-generated content not meant to be shown to humans. Every object derived from SBase can have its own value for 'annotation'. The element's content type is XML type any, allowing essentially arbitrary well-formed XML data content.
SBML places a few restrictions on the organization of the content of annotations; these are intended to help software tools read and write the data as well as help reduce conflicts between annotations added by different tools. Please see the SBML specifications for more details.
The annotations returned by this method will be in XML form. LibSBML provides an object model and related interfaces for certain specific kinds of annotations, namely model history information and RDF content. See the ModelHistory, CVTerm and RDFAnnotationParser classes for more information about the facilities available.
setAnnotation(const XMLNode* annotation)
setAnnotation(const std.string& annotation)
appendAnnotation(const XMLNode* annotation)
appendAnnotation(const std.string& annotation)
Definition at line 1971 of file libsbml.py.
| def libsbml.SBase.getAnnotationString | ( | self | ) | [inherited] |
Python method signature(s):
getAnnotationString(self)string
Returns the content of the 'annotation' subelement of this object as a character string.
Whereas the SBase 'notes' subelement is a container for content to be shown directly to humans, the 'annotation' element is a container for optional software-generated content not meant to be shown to humans. Every object derived from SBase can have its own value for 'annotation'. The element's content type is XML type any, allowing essentially arbitrary well-formed XML data content.
SBML places a few restrictions on the organization of the content of annotations; these are intended to help software tools read and write the data as well as help reduce conflicts between annotations added by different tools. Please see the SBML specifications for more details.
The annotations returned by this method will be in string form.
setAnnotation(const XMLNode* annotation)
setAnnotation(const std.string& annotation)
appendAnnotation(const XMLNode* annotation)
appendAnnotation(const std.string& annotation)
Definition at line 2014 of file libsbml.py.
| def libsbml.SBase.getColumn | ( | self | ) | [inherited] |
Python method signature(s):
getColumn(self)unsigned int
Returns the column number on which this object first appears in the XML representation of the SBML document.
Definition at line 2217 of file libsbml.py.
| def libsbml.SBase.getCVTerm | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
getCVTerm(self, unsigned int n)CVTerm
Returns the nth CVTerm in the list of CVTerms of this SBML object.
| n | unsigned int the index of the CVTerm to retrieve |
Definition at line 3042 of file libsbml.py.
| def libsbml.SBase.getCVTerms | ( | self | ) | [inherited] |
Python method signature(s):
getCVTerms(self)CVTermList
Get the CVTermList of CVTerm objects in this SBase.
Definition at line 3010 of file libsbml.py.
| def libsbml.Rule.getDerivedUnitDefinition | ( | self, | ||
| args | ||||
| ) |
Python method signature(s):
getDerivedUnitDefinition(self)UnitDefinition getDerivedUnitDefinition(self)
UnitDefinition
Calculates and returns a UnitDefinition that expresses the units of measurement assumed for the 'math' expression of this Rule.
The units are calculated based on the mathematical expression in the Rule and the model quantities referenced by <ci> elements used within that expression. The getDerivedUnitDefinition() method returns the calculated units.
Note that the functionality that facilitates unit analysis depends on the model as a whole. Thus, in cases where the object has not been added to a model or the model itself is incomplete, unit analysis is not possible and this method will return NULL.
Definition at line 16534 of file libsbml.py.
| def libsbml.Rule.getElementName | ( | self | ) |
Python method signature(s):
getElementName(self)string
Returns the XML element name of this object, which can be any of a number of different strings depending on the SBML Level and the kind of rule this is.
The rules as of libSBML 3.0.0 are the following:
'rateRule' 'assignmentRule' 'algebraicRule' 'specieConcentrationRule' 'speciesConcentrationRule' 'compartmentVolumeRule' 'parameterRule' 'unknownRule'
Reimplemented from libsbml.SBase.
Definition at line 16785 of file libsbml.py.
| def libsbml.Rule.getFormula | ( | self | ) |
Python method signature(s):
getFormula(self)string
Returns the mathematical expression of this Rule in text-string form.
Definition at line 16271 of file libsbml.py.
| def libsbml.Rule.getId | ( | self | ) |
Python method signature(s):
getId(self)string
Predicate returning true or false depending on whether all the required attributes for this Rule object have been set.
Reimplemented from libsbml.SBase.
Definition at line 16877 of file libsbml.py.
| def libsbml.Rule.getL1TypeCode | ( | self | ) |
Python method signature(s):
getL1TypeCode(self)SBMLTypeCode_t
Returns the SBML Level 1 type code for this Rule, or SBML_UNNOWN.
SBML_COMPARTMENT_VOLUME_RULE, SBML_PARAMETER_RULE, or SBML_SPECIES_CONCENTRATION_RULE) or SBML_UNKNOWN (default). Definition at line 16768 of file libsbml.py.
| def libsbml.SBase.getLevel | ( | self | ) | [inherited] |
Python method signature(s):
getLevel(self)unsigned int
Returns the SBML Level of the overall SBML document.
Definition at line 3134 of file libsbml.py.
| def libsbml.SBase.getLine | ( | self | ) | [inherited] |
Python method signature(s):
getLine(self)unsigned int
Returns the line number on which this object first appears in the XML representation of the SBML document.
Definition at line 2199 of file libsbml.py.
| def libsbml.Rule.getMath | ( | self | ) |
| def libsbml.SBase.getMetaId | ( | self | ) | [inherited] |
Python method signature(s):
getMetaId(self)string
Returns the value of the 'metaid' attribute of this object.
The optional attribute named 'metaid', present on every major SBML component type, is for supporting metadata annotations using RDF (Resource Description Format). The attribute value has the data type XML ID, the XML identifier type, which means each 'metaid' value must be globally unique within an SBML file. (Importantly, this uniqueness criterion applies across any attribute with type XML ID, not just the 'metaid' attribute used by SBML—something to be aware of if your application-specific XML content inside the 'annotation' subelement happens to use XML ID.) The 'metaid' value serves to identify a model component for purposes such as referencing that component from metadata placed within 'annotation' subelements.
setMetaId(const std.string& metaid)
Definition at line 1790 of file libsbml.py.
| def libsbml.SBase.getModel | ( | self | ) | [inherited] |
Python method signature(s):
getModel(self)Model
Returns the Model object in which the current object is located.
Definition at line 3119 of file libsbml.py.
| def libsbml.SBase.getName | ( | self | ) | [inherited] |
Python method signature(s):
getName(self)string
Returns the value of the 'metaid' attribute of this object.
The optional attribute named 'metaid', present on every major SBML component type, is for supporting metadata annotations using RDF (Resource Description Format). The attribute value has the data type XML ID, the XML identifier type, which means each 'metaid' value must be globally unique within an SBML file. (Importantly, this uniqueness criterion applies across any attribute with type XML ID, not just the 'metaid' attribute used by SBML—something to be aware of if your application-specific XML content inside the 'annotation' subelement happens to use XML ID.) The 'metaid' value serves to identify a model component for purposes such as referencing that component from metadata placed within 'annotation' subelements.
setMetaId(const std.string& metaid)
Reimplemented in libsbml.Model, libsbml.FunctionDefinition, libsbml.UnitDefinition, libsbml.CompartmentType, libsbml.SpeciesType, libsbml.Compartment, libsbml.Species, libsbml.Parameter, libsbml.Reaction, libsbml.SimpleSpeciesReference, and libsbml.Event.
Definition at line 1857 of file libsbml.py.
| def libsbml.SBase.getNamespaces | ( | self | ) | [inherited] |
Python method signature(s):
getNamespaces(self)XMLNamespaces
Returns a list of the XML Namespaces declared on this SBML document.
Reimplemented in libsbml.SBMLDocument.
Definition at line 2053 of file libsbml.py.
| def libsbml.SBase.getNotes | ( | self | ) | [inherited] |
Python method signature(s):
getNotes(self)XMLNode
Returns the content of the 'notes' subelement of this object as a tree of XML nodes.
The optional element named 'notes', present on every major SBML component type, is intended as a place for storing optional information intended to be seen by humans. An example use of the 'notes' element would be to contain formatted user comments about the model element in which the 'notes' element is enclosed. Every object derived directly or indirectly from type SBase can have a separate value for 'notes', allowing users considerable freedom when adding comments to their models. The format of 'notes' elements must be XHTML 1.0. The SBML Level 2 specification has considerable detail about how 'notes' element content must be handled; please refer to the specifications.
The 'notes' element content returned by this method will be in XML form, but libSBML does not provide an object model specifically for the content of notes. Callers will need to traverse the XML tree structure using the facilities available on XMLNode and related objects.
setNotes(const XMLNode* notes)
setNotes(const std.string& notes)
appendNotes(const XMLNode* notes)
appendNotes(const std.string& notes)
Definition at line 1891 of file libsbml.py.
| def libsbml.SBase.getNotesString | ( | self | ) | [inherited] |
Python method signature(s):
getNotesString(self)string
Returns the content of the 'notes' subelement of this object as a string.
The optional element named 'notes', present on every major SBML component type, is intended as a place for storing optional information intended to be seen by humans. An example use of the 'notes' element would be to contain formatted user comments about the model element in which the 'notes' element is enclosed. Every object derived directly or indirectly from type SBase can have a separate value for 'notes', allowing users considerable freedom when adding comments to their models. The format of 'notes' elements must be XHTML 1.0. The SBML Level 2 specification has considerable detail about how 'notes' element content must be handled; please refer to the specifications.
setNotes(const XMLNode* notes)
setNotes(const std.string& notes)
appendNotes(const XMLNode* notes)
appendNotes(const std.string& notes)
Definition at line 1934 of file libsbml.py.
| def libsbml.SBase.getNumCVTerms | ( | self | ) | [inherited] |
Python method signature(s):
getNumCVTerms(self)unsigned int
Returns the number of CVTerm objects in the annotations of this SBML object.
Definition at line 3026 of file libsbml.py.
| def libsbml.SBase.getParentSBMLObject | ( | self | ) | [inherited] |
Python method signature(s):
getParentSBMLObject(self)SBase
Returns the parent SBML object.
This method is convenient when holding an object nested inside other objects in an SBML model. It allows direct access to the <model> element containing it.
Definition at line 2096 of file libsbml.py.
| def libsbml.SBase.getResourceBiologicalQualifier | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
getResourceBiologicalQualifier(self, string resource)BiolQualifierType_t
Returns the BiologicalQualifier associated with this resource, or BQB_UNKNOWN if the resource does not exist.
| resource | string representing the resource; e.g., 'http://www.geneontology.org/GO:0005892' |
Definition at line 3081 of file libsbml.py.
| def libsbml.SBase.getResourceModelQualifier | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
getResourceModelQualifier(self, string resource)ModelQualifierType_t
Returns the ModelQualifier associated with this resource, or BQM_UNKNOWN if the resource does not exist.
| resource | string representing the resource; e.g., 'http://www.geneontology.org/GO:0005892' |
Definition at line 3100 of file libsbml.py.
| def libsbml.SBase.getSBMLDocument | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
getSBMLDocument(self)SBMLDocument getSBMLDocument(self)
SBMLDocument
Returns the parent SBMLDocument object.
LibSBML uses the class SBMLDocument as a top-level container for storing SBML content and data associated with it (such as warnings and error messages). An SBML model in libSBML is contained inside an SBMLDocument object. SBMLDocument corresponds roughly to the class Sbml defined in the SBML Level 2 specification, but it does not have a direct correspondence in SBML Level 1. (But, it is created by libSBML no matter whether the model is Level 1 or Level 2.)
This method allows the SBMLDocument for the current object to be retrieved.
Definition at line 2068 of file libsbml.py.
| def libsbml.SBase.getSBOTerm | ( | self | ) | [inherited] |
Python method signature(s):
getSBOTerm(self)int
Returns the integer portion of the value of the 'sboTerm' attribute of this object.
In SBML Level 2 Versions 2, 3 and 4, the data type of the attribute is a string of the form SBO:NNNNNNN, where NNNNNNN is a seven digit integer number; libSBML simplifies the representation by only storing the NNNNNNN integer portion. Thus, in libSBML, the 'sboTerm' attribute on SBase has data type int, and SBO identifiers are stored simply as integers. SBO terms are a type of optional annotation, and each different class of SBML object derived from SBase imposes its own requirements about the values permitted for 'sboTerm'. Please consult the SBML Level 2 Version 4 specification for more information about the use of SBO and the 'sboTerm' attribute.
-1 if the value is not set. Definition at line 2141 of file libsbml.py.
| def libsbml.SBase.getSBOTermID | ( | self | ) | [inherited] |
Python method signature(s):
getSBOTermID(self)string
Returns the string representation of the 'sboTerm' attribute of this object.
In SBML Level 2 Versions 2, 3 and 4, the data type of the attribute is a string of the form SBO:NNNNNNN, where NNNNNNN is a seven digit integer number; libSBML simplifies the representation by only storing the NNNNNNN integer portion. Thus, in libSBML, the 'sboTerm' attribute on SBase has data type int, and SBO identifiers are stored simply as integers. This function recreates the string representation from the stored value. SBO terms are a type of optional annotation, and each different class of SBML object derived from SBase imposes its own requirements about the values permitted for 'sboTerm'. Please consult the SBML Level 2 Version 4 specification for more information about the use of SBO and the 'sboTerm' attribute.
Definition at line 2169 of file libsbml.py.
| def libsbml.Rule.getType | ( | self | ) |
Python method signature(s):
getType(self)RuleType_t
(SBML Level 1) Get the type of rule this is.
RULE_TYPE_RATE or RULE_TYPE_SCALAR. Definition at line 16603 of file libsbml.py.
| def libsbml.Rule.getTypeCode | ( | self | ) |
Python method signature(s):
getTypeCode(self)SBMLTypeCode_t
Returns the libSBML type code for this SBML object.
SBML_UNKNOWN (default).Reimplemented from libsbml.SBase.
Definition at line 16739 of file libsbml.py.
| def libsbml.Rule.getUnits | ( | self | ) |
Python method signature(s):
getUnits(self)string
(SBML Level 1 ParameterRule only) Returns the units for the mathematical formula of this Rule.
Definition at line 16321 of file libsbml.py.
| def libsbml.Rule.getVariable | ( | self | ) |
Python method signature(s):
getVariable(self)string
Get the value of the 'variable' attribute of this Rule.
This applies to AssignmentRule and RateRule, which have explicit left-hand sides in their equations. AlgebraicRule does not have a variable field.
Definition at line 16301 of file libsbml.py.
| def libsbml.SBase.getVersion | ( | self | ) | [inherited] |
Python method signature(s):
getVersion(self)unsigned int
Returns the Version within the SBML Level of the overall SBML document.
Definition at line 3151 of file libsbml.py.
| def libsbml.Rule.hasRequiredAttributes | ( | self | ) |
Python method signature(s):
hasRequiredAttributes(self)bool
Predicate returning true or false depending on whether all the required attributes for this Rule object have been set.
Reimplemented from libsbml.SBase.
Reimplemented in libsbml.AlgebraicRule, libsbml.AssignmentRule, and libsbml.RateRule.
Definition at line 16858 of file libsbml.py.
| def libsbml.Rule.hasRequiredElements | ( | self | ) |
Python method signature(s):
hasRequiredElements(self)bool
Predicate returning true or false depending on whether all the required elements for this Rule object have been set.
Reimplemented from libsbml.SBase.
Definition at line 16839 of file libsbml.py.
| def libsbml.SBase.hasValidLevelVersionNamespaceCombination | ( | self | ) | [inherited] |
Python method signature(s):
hasValidLevelVersionNamespaceCombination(self)bool
Predicate returning true or false depending on whether this object's level/version and namespace values correspond to a valid SBML specification.
The valid combinations of SBML Level, Version and Namespace as of this release of libSBML are the following:
true if the level, version and namespace values of this SBML object correspond to a valid set of values, false otherwise. Definition at line 3192 of file libsbml.py.
| def libsbml.Rule.isAlgebraic | ( | self | ) |
Python method signature(s):
isAlgebraic(self)bool
Predicate returning true or false depending on whether this Rule is an AlgebraicRule.
true if this Rule is an AlgebraicRule, false otherwise. Definition at line 16620 of file libsbml.py.
| def libsbml.Rule.isAssignment | ( | self | ) |
Python method signature(s):
isAssignment(self)bool
Predicate returning true or false depending on whether this Rule is an AssignmentRule.
true if this Rule is an AssignmentRule, false otherwise. Definition at line 16636 of file libsbml.py.
| def libsbml.Rule.isCompartmentVolume | ( | self | ) |
Python method signature(s):
isCompartmentVolume(self)bool
(SBML Level 1 only) Predicate returning true or false depending on whether this Rule is an CompartmentVolumeRule.
true if this Rule is a CompartmentVolumeRule, false otherwise. Definition at line 16652 of file libsbml.py.
| def libsbml.Rule.isParameter | ( | self | ) |
Python method signature(s):
isParameter(self)bool
(SBML Level 1 only) Predicate returning true or false depending on whether this Rule is an ParameterRule.
true if this Rule is a ParameterRule, false otherwise. Definition at line 16669 of file libsbml.py.
| def libsbml.Rule.isRate | ( | self | ) |
Python method signature(s):
isRate(self)bool
Predicate returning true or false depending on whether this Rule is a RateRule (SBML Level 2) or has a 'type' attribute value of 'rate' (SBML Level 1).
Definition at line 16686 of file libsbml.py.
| def libsbml.Rule.isScalar | ( | self | ) |
Python method signature(s):
isScalar(self)bool
Predicate returning true or false depending on whether this Rule is an AssignmentRule (SBML Level 2) or has a 'type' attribute value of 'scalar' (SBML Level 1).
true if this Rule is an AssignmentRule (Level 2) or has type 'scalar' (Level 1), false otherwise. Definition at line 16704 of file libsbml.py.
| def libsbml.SBase.isSetAnnotation | ( | self | ) | [inherited] |
Python method signature(s):
isSetAnnotation(self)bool
Predicate returning true or false depending on whether this object's 'annotation' subelement exists and has content.
Whereas the SBase 'notes' subelement is a container for content to be shown directly to humans, the 'annotation' element is a container for optional software-generated content not meant to be shown to humans. Every object derived from SBase can have its own value for 'annotation'. The element's content type is XML type any, allowing essentially arbitrary well-formed XML data content.
SBML places a few restrictions on the organization of the content of annotations; these are intended to help software tools read and write the data as well as help reduce conflicts between annotations added by different tools. Please see the SBML specifications for more details.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
true if a 'annotation' subelement exists, false otherwise.setAnnotation(const XMLNode* annotation)
setAnnotation(const std.string& annotation)
appendAnnotation(const XMLNode* annotation)
appendAnnotation(const std.string& annotation)
Definition at line 2387 of file libsbml.py.
| def libsbml.Rule.isSetFormula | ( | self | ) |
Python method signature(s):
isSetFormula(self)bool
Predicate returning true or false depending on whether this Rule's mathematical expression has been set.
This method is equivalent to isSetMath(). This version is present for easier compatibility with SBML Level 1, in which mathematical formulas were written in text-string form.
true if the mathematical formula for this Rule has been set, false otherwise. Definition at line 16337 of file libsbml.py.
| def libsbml.SBase.isSetId | ( | self | ) | [inherited] |
Python method signature(s):
isSetId(self)bool
Predicate returning true or false depending on whether this object's 'metaid' attribute has been set.
The optional attribute named 'metaid', present on every major SBML component type, is for supporting metadata annotations using RDF (Resource Description Format). The attribute value has the data type XML ID, the XML identifier type, which means each 'metaid' value must be globally unique within an SBML file. (Importantly, this uniqueness criterion applies across any attribute with type XML ID, not just the 'metaid' attribute used by SBML—something to be aware of if your application-specific XML content inside the 'annotation' subelement happens to use XML ID.) The 'metaid' value serves to identify a model component for purposes such as referencing that component from metadata placed within 'annotation' subelements.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
true if the 'metaid' attribute of this SBML object has been set, false otherwise.setMetaId(const std.string& metaid)
Reimplemented in libsbml.Model, libsbml.FunctionDefinition, libsbml.UnitDefinition, libsbml.CompartmentType, libsbml.SpeciesType, libsbml.Compartment, libsbml.Species, libsbml.Parameter, libsbml.Reaction, libsbml.SimpleSpeciesReference, and libsbml.Event.
Definition at line 2272 of file libsbml.py.
| def libsbml.Rule.isSetMath | ( | self | ) |
Python method signature(s):
isSetMath(self)bool
Predicate returning true or false depending on whether this Rule's mathematical expression has been set.
This method is equivalent to isSetFormula().
true if the formula (or equivalently the math) for this Rule has been set, false otherwise. Definition at line 16358 of file libsbml.py.
| def libsbml.SBase.isSetMetaId | ( | self | ) | [inherited] |
Python method signature(s):
isSetMetaId(self)bool
Predicate returning true or false depending on whether this object's 'metaid' attribute has been set.
The optional attribute named 'metaid', present on every major SBML component type, is for supporting metadata annotations using RDF (Resource Description Format). The attribute value has the data type XML ID, the XML identifier type, which means each 'metaid' value must be globally unique within an SBML file. (Importantly, this uniqueness criterion applies across any attribute with type XML ID, not just the 'metaid' attribute used by SBML—something to be aware of if your application-specific XML content inside the 'annotation' subelement happens to use XML ID.) The 'metaid' value serves to identify a model component for purposes such as referencing that component from metadata placed within 'annotation' subelements.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
true if the 'metaid' attribute of this SBML object has been set, false otherwise.setMetaId(const std.string& metaid)
Definition at line 2235 of file libsbml.py.
| def libsbml.SBase.isSetName | ( | self | ) | [inherited] |
Python method signature(s):
isSetName(self)bool
Predicate returning true or false depending on whether this object's 'metaid' attribute has been set.
The optional attribute named 'metaid', present on every major SBML component type, is for supporting metadata annotations using RDF (Resource Description Format). The attribute value has the data type XML ID, the XML identifier type, which means each 'metaid' value must be globally unique within an SBML file. (Importantly, this uniqueness criterion applies across any attribute with type XML ID, not just the 'metaid' attribute used by SBML—something to be aware of if your application-specific XML content inside the 'annotation' subelement happens to use XML ID.) The 'metaid' value serves to identify a model component for purposes such as referencing that component from metadata placed within 'annotation' subelements.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
true if the 'metaid' attribute of this SBML object has been set, false otherwise.setMetaId(const std.string& metaid)
Reimplemented in libsbml.Model, libsbml.FunctionDefinition, libsbml.UnitDefinition, libsbml.CompartmentType, libsbml.SpeciesType, libsbml.Compartment, libsbml.Species, libsbml.Parameter, libsbml.Reaction, libsbml.SimpleSpeciesReference, and libsbml.Event.
Definition at line 2310 of file libsbml.py.
| def libsbml.SBase.isSetNotes | ( | self | ) | [inherited] |
Python method signature(s):
isSetNotes(self)bool
Predicate returning true or false depending on whether this object's 'notes' subelement exists and has content.
The optional element named 'notes', present on every major SBML component type, is intended as a place for storing optional information intended to be seen by humans. An example use of the 'notes' element would be to contain formatted user comments about the model element in which the 'notes' element is enclosed. Every object derived directly or indirectly from type SBase can have a separate value for 'notes', allowing users considerable freedom when adding comments to their models. The format of 'notes' elements must be XHTML 1.0. The SBML Level 2 specification has considerable detail about how 'notes' element content must be handled; please refer to the specifications.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
true if a 'notes' subelement exists, false otherwise.setNotes(const XMLNode* notes)
setNotes(const std.string& notes)
appendNotes(const XMLNode* notes)
appendNotes(const std.string& notes)
Definition at line 2348 of file libsbml.py.
| def libsbml.SBase.isSetSBOTerm | ( | self | ) | [inherited] |
Python method signature(s):
isSetSBOTerm(self)bool
Predicate returning true or false depending on whether this object's 'sboTerm' attribute has been set.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
true if the 'sboTerm' attribute of this SBML object has been set, false otherwise. Definition at line 2427 of file libsbml.py.
| def libsbml.Rule.isSetUnits | ( | self | ) |
Python method signature(s):
isSetUnits(self)bool
(SBML Level 1 ParameterRule only) Predicate returning true or false depending on whether this Rule's 'units' attribute has been set.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
true if the units for this Rule has been set, false otherwise Definition at line 16394 of file libsbml.py.
| def libsbml.Rule.isSetVariable | ( | self | ) |
Python method signature(s):
isSetVariable(self)bool
Predicate returning true or false depending on whether this Rule's 'variable' attribute has been set.
true if the variable of this Rule has been set, false otherwise. Definition at line 16377 of file libsbml.py.
| def libsbml.Rule.isSpeciesConcentration | ( | self | ) |
Python method signature(s):
isSpeciesConcentration(self)bool
(SBML Level 1 only) Predicate returning true or false depending on whether this Rule is an SpeciesConcentrationRule.
true if this Rule is a SpeciesConcentrationRule, false otherwise. Definition at line 16722 of file libsbml.py.
| def libsbml.SBase.setAnnotation | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
setAnnotation(self, XMLNode annotation)int setAnnotation(self, string annotation)
int
Sets the value of the 'annotation' subelement of this SBML object to a copy of annotation given as a character string.
Whereas the SBase 'notes' subelement is a container for content to be shown directly to humans, the 'annotation' element is a container for optional software-generated content not meant to be shown to humans. Every object derived from SBase can have its own value for 'annotation'. The element's content type is XML type any, allowing essentially arbitrary well-formed XML data content.
SBML places a few restrictions on the organization of the content of annotations; these are intended to help software tools read and write the data as well as help reduce conflicts between annotations added by different tools. Please see the SBML specifications for more details.
Call this method will result in any existing content of the 'annotation' subelement to be discarded. Unless you have taken steps to first copy and reconstitute any existing annotations into the annotation that is about to be assigned, it is likely that performing such wholesale replacement is unfriendly towards other software applications whose annotations are discarded. An alternative may be to use SBase.appendAnnotation(const XMLNode* annotation) or SBase.appendAnnotation(const std.string& annotation).
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
| annotation | an XML string that is to be used as the content of the 'annotation' subelement of this object |
setAnnotation(const XMLNode* annotation)
appendAnnotation(const XMLNode* annotation)
appendAnnotation(const std.string& annotation)
Reimplemented in libsbml.Model, and libsbml.SpeciesReference.
Definition at line 2568 of file libsbml.py.
| def libsbml.Rule.setFormula | ( | self, | ||
| args | ||||
| ) |
Python method signature(s):
setFormula(self, string formula)int
Sets the 'math' subelement of this Rule to an expression in text-string form.
This is equivalent to setMath(). The provision of using text-string formulas is retained for easier SBML Level 1 compatibility. The formula is converted to an ASTNode internally.
| formula | a mathematical formula in text-string form. |
Definition at line 16413 of file libsbml.py.
| def libsbml.SBase.setId | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
setId(self, string sid)int
Sets the value of the 'metaid' attribute of this object.
The string metaid is copied. The value of metaid must be an identifier conforming to the syntax defined by the XML 1.0 data type ID. Among other things, this type requires that a value is unique among all the values of type XML ID in an SBMLDocument. Although SBML only uses XML ID for the 'metaid' attribute, callers should be careful if they use XML ID's in XML portions of a model that are not defined by SBML, such as in the application-specific content of the 'annotation' subelement.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
| metaid | the identifier string to use as the value of the 'metaid' attribute |
Reimplemented in libsbml.Model, libsbml.FunctionDefinition, libsbml.UnitDefinition, libsbml.CompartmentType, libsbml.SpeciesType, libsbml.Compartment, libsbml.Species, libsbml.Parameter, libsbml.Reaction, libsbml.SimpleSpeciesReference, and libsbml.Event.
Definition at line 2486 of file libsbml.py.
| def libsbml.Rule.setL1TypeCode | ( | self, | ||
| args | ||||
| ) |
Python method signature(s):
setL1TypeCode(self, SBMLTypeCode_t type)int
Sets the SBML Level 1 typecode for this Rule.
| type | the SBML Level 1 typecode for this Rule (SBML_COMPARTMENT_VOLUME_RULE, SBML_PARAMETER_RULE, or SBML_SPECIES_CONCENTRATION_RULE). |
Definition at line 16814 of file libsbml.py.
| def libsbml.Rule.setMath | ( | self, | ||
| args | ||||
| ) |
Python method signature(s):
setMath(self, ASTNode math)int
Sets the 'math' subelement of this Rule to a copy of the given ASTNode.
| math | the ASTNode structure of the mathematical formula. |
Definition at line 16440 of file libsbml.py.
| def libsbml.SBase.setMetaId | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
setMetaId(self, string metaid)int
Sets the value of the 'metaid' attribute of this object.
The string metaid is copied. The value of metaid must be an identifier conforming to the syntax defined by the XML 1.0 data type ID. Among other things, this type requires that a value is unique among all the values of type XML ID in an SBMLDocument. Although SBML only uses XML ID for the 'metaid' attribute, callers should be careful if they use XML ID's in XML portions of a model that are not defined by SBML, such as in the application-specific content of the 'annotation' subelement.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
| metaid | the identifier string to use as the value of the 'metaid' attribute |
Definition at line 2446 of file libsbml.py.
| def libsbml.SBase.setName | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
setName(self, string name)int
Sets the value of the 'metaid' attribute of this object.
The string metaid is copied. The value of metaid must be an identifier conforming to the syntax defined by the XML 1.0 data type ID. Among other things, this type requires that a value is unique among all the values of type XML ID in an SBMLDocument. Although SBML only uses XML ID for the 'metaid' attribute, callers should be careful if they use XML ID's in XML portions of a model that are not defined by SBML, such as in the application-specific content of the 'annotation' subelement.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
| metaid | the identifier string to use as the value of the 'metaid' attribute |
Reimplemented in libsbml.Model, libsbml.FunctionDefinition, libsbml.UnitDefinition, libsbml.CompartmentType, libsbml.SpeciesType, libsbml.Compartment, libsbml.Species, libsbml.Parameter, libsbml.Reaction, libsbml.SimpleSpeciesReference, and libsbml.Event.
Definition at line 2527 of file libsbml.py.
| def libsbml.SBase.setNamespaces | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
setNamespaces(self, XMLNamespaces xmlns)int
Sets the namespaces relevant of this SBML object.
| xmlns | the namespaces to set |
Definition at line 2811 of file libsbml.py.
| def libsbml.SBase.setNotes | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
setNotes(self, XMLNode notes)int setNotes(self, string notes)
int
Sets the value of the 'notes' subelement of this SBML object to a copy of the string notes.
Any existing content of the 'notes' subelement is discarded.
The optional element named 'notes', present on every major SBML component type, is intended as a place for storing optional information intended to be seen by humans. An example use of the 'notes' element would be to contain formatted user comments about the model element in which the 'notes' element is enclosed. Every object derived directly or indirectly from type SBase can have a separate value for 'notes', allowing users considerable freedom when adding comments to their models. The format of 'notes' elements must be XHTML 1.0. The SBML Level 2 specification has considerable detail about how 'notes' element content must be handled; please refer to the specifications.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
| notes | an XML string that is to be used as the content of the 'notes' subelement of this object |
setNotes(const XMLNode* notes)
appendNotes(const XMLNode* notes)
appendNotes(const std.string& notes)
Definition at line 2676 of file libsbml.py.
| def libsbml.SBase.setSBOTerm | ( | self, | ||
| args | ||||
| ) | [inherited] |
Python method signature(s):
setSBOTerm(self, int value)int setSBOTerm(self, string sboid)
int
Sets the value of the 'sboTerm' attribute.
In SBML Level 2 Versions 2, 3 and 4, the data type of the SBML 'sboTerm' attribute is a string of the form SBO:NNNNNNN, where NNNNNNN is a seven digit integer number; libSBML simplifies the representation by only storing the NNNNNNN integer portion. Thus, in libSBML, the 'sboTerm' attribute on SBase has data type int, and SBO identifiers are stored simply as integers. SBO terms are a type of optional annotation, and each different class of SBML object derived from SBase imposes its own requirements about the values permitted for 'sboTerm'. Please consult the SBML Level 2 Version 4 specification for more information about the use of SBO and the 'sboTerm' attribute.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
| value | the NNNNNNN integer portion of the SBO identifier |
Definition at line 2774 of file libsbml.py.
| def libsbml.Rule.setUnits | ( | self, | ||
| args | ||||
| ) |
Python method signature(s):
setUnits(self, string sname)int
(SBML Level 1 ParameterRule only) Sets the units for this Rule.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
| sname | the identifier of the units |
Definition at line 16487 of file libsbml.py.
| def libsbml.Rule.setVariable | ( | self, | ||
| args | ||||
| ) |
Python method signature(s):
setVariable(self, string sid)int
Sets the 'variable' attribute of this Rule.
| sid | the identifier of a Compartment, Species or Parameter elsewhere in the enclosing Model object. |
Definition at line 16463 of file libsbml.py.
| def libsbml.SBase.toSBML | ( | self | ) | [inherited] |
Python method signature(s):
toSBML(self)char
Returns a string that consists of the partial SBML describing this object. This is primarily provided for testing and debugging purposes. It may be removed in a future version of libSBML.
Definition at line 3237 of file libsbml.py.
| def libsbml.SBase.unsetAnnotation | ( | self | ) | [inherited] |
Python method signature(s):
unsetAnnotation(self)int
Unsets the value of the 'annotation' subelement of this SBML object.
Whereas the SBase 'notes' subelement is a container for content to be shown directly to humans, the 'annotation' element is a container for optional software-generated content not meant to be shown to humans. Every object derived from SBase can have its own value for 'annotation'. The element's content type is XML type any, allowing essentially arbitrary well-formed XML data content.
SBML places a few restrictions on the organization of the content of annotations; these are intended to help software tools read and write the data as well as help reduce conflicts between annotations added by different tools. Please see the SBML specifications for more details.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
setAnnotation(const XMLNode* annotation)
setAnnotation(const std.string& annotation)
appendAnnotation(const XMLNode* annotation)
appendAnnotation(const std.string& annotation)
Definition at line 2910 of file libsbml.py.
| def libsbml.SBase.unsetCVTerms | ( | self | ) | [inherited] |
Python method signature(s):
unsetCVTerms(self)int
Clears the list of CVTerms of this SBML object.
Definition at line 3060 of file libsbml.py.
| def libsbml.SBase.unsetMetaId | ( | self | ) | [inherited] |
Python method signature(s):
unsetMetaId(self)int
Unsets the value of the 'metaid' attribute of this SBML object.
The optional attribute named 'metaid', present on every major SBML component type, is for supporting metadata annotations using RDF (Resource Description Format). The attribute value has the data type XML ID, the XML identifier type, which means each 'metaid' value must be globally unique within an SBML file. (Importantly, this uniqueness criterion applies across any attribute with type XML ID, not just the 'metaid' attribute used by SBML—something to be aware of if your application-specific XML content inside the 'annotation' subelement happens to use XML ID.) The 'metaid' value serves to identify a model component for purposes such as referencing that component from metadata placed within 'annotation' subelements.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
Definition at line 2832 of file libsbml.py.
| def libsbml.SBase.unsetNotes | ( | self | ) | [inherited] |
Python method signature(s):
unsetNotes(self)int
Unsets the value of the 'notes' subelement of this SBML object.
The optional element named 'notes', present on every major SBML component type, is intended as a place for storing optional information intended to be seen by humans. An example use of the 'notes' element would be to contain formatted user comments about the model element in which the 'notes' element is enclosed. Every object derived directly or indirectly from type SBase can have a separate value for 'notes', allowing users considerable freedom when adding comments to their models. The format of 'notes' elements must be XHTML 1.0. The SBML Level 2 specification has considerable detail about how 'notes' element content must be handled; please refer to the specifications.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
setNotes(const XMLNode* notes)
setNotes(const std.string& notes)
appendNotes(const XMLNode* notes)
appendNotes(const std.string& notes)
Definition at line 2869 of file libsbml.py.
| def libsbml.SBase.unsetSBOTerm | ( | self | ) | [inherited] |
Python method signature(s):
unsetSBOTerm(self)int
Unsets the value of the 'sboTerm' attribute of this SBML object.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
Definition at line 2952 of file libsbml.py.
| def libsbml.Rule.unsetUnits | ( | self | ) |
Python method signature(s):
unsetUnits(self)int
(SBML Level 1 ParameterRule only) Unsets the 'units' for this Rule.
Some words of explanation about the
set/unset/isSet methods:
SBML Levels 1 and 2 define certain attributes on some classes of objects as
optional. This requires an application to be careful about the distinction
between two cases: (1) a given attribute has never been set to a
value, and therefore should be assumed to have the SBML-defined default
value, and (2) a given attribute has been set to a value, but the value
happens to be an empty string. LibSBML supports these distinctions by
providing methods to set, unset, and query the status of attributes that
are optional. The methods have names of the form
setAttribute(...),
unsetAttribute(), and
isSetAttribute(), where Attribute
is the the name of the optional attribute in question.
Definition at line 16512 of file libsbml.py.
Reimplemented from libsbml.SBase.
Reimplemented in libsbml.AlgebraicRule, libsbml.AssignmentRule, and libsbml.RateRule.
Definition at line 16255 of file libsbml.py.