libsbml.Rule Class Reference

Inheritance diagram for libsbml.Rule:

Inheritance graph
[legend]

List of all members.


Detailed Description

LibSBML implementation of SBML's Rule construct.

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.

General General summary of SBML rules

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 zero0 = 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.

Additional restrictions on SBML rules

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.

A model must not contain algebraic loops

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.

A model must not be overdetermined

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.)

RuleType_t

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_RATEIndicates the rule is a "rate" rule.
RULE_TYPE_SCALARIndicates the rule is a "scalar" rule.
RULE_TYPE_UNKNOWNIndicates the rule type is unknown or not yet set.

Definition at line 16211 of file libsbml.py.


Public Member Functions

def __eq__
def __init__
def __init__
def __ne__
def addCVTerm
def appendAnnotation
def appendNotes
def clone
def containsUndeclaredUnits
def getAncestorOfType
def getAnnotation
def getAnnotationString
def getColumn
def getCVTerm
def getCVTerms
def getDerivedUnitDefinition
def getElementName
def getFormula
def getId
def getL1TypeCode
def getLevel
def getLine
def getMath
def getMetaId
def getModel
def getName
def getNamespaces
def getNotes
def getNotesString
def getNumCVTerms
def getParentSBMLObject
def getResourceBiologicalQualifier
def getResourceModelQualifier
def getSBMLDocument
def getSBOTerm
def getSBOTermID
def getType
def getTypeCode
def getUnits
def getVariable
def getVersion
def hasRequiredAttributes
def hasRequiredElements
def hasValidLevelVersionNamespaceCombination
def isAlgebraic
def isAssignment
def isCompartmentVolume
def isParameter
def isRate
def isScalar
def isSetAnnotation
def isSetFormula
def isSetId
def isSetMath
def isSetMetaId
def isSetName
def isSetNotes
def isSetSBOTerm
def isSetUnits
def isSetVariable
def isSpeciesConcentration
def setAnnotation
def setFormula
def setId
def setL1TypeCode
def setMath
def setMetaId
def setName
def setNamespaces
def setNotes
def setSBOTerm
def setUnits
def setVariable
def toSBML
def unsetAnnotation
def unsetCVTerms
def unsetMetaId
def unsetNotes
def unsetSBOTerm
def unsetUnits

Public Attributes

 this

Member Function Documentation

def libsbml.SBase.__eq__ (   self,
  rhs 
) [inherited]

Definition at line 3296 of file libsbml.py.

def libsbml.SBase.__init__ (   self,
  args,
  kwargs 
) [inherited]

Reimplemented in libsbml.SimpleSpeciesReference.

Definition at line 1771 of file libsbml.py.

def libsbml.Rule.__init__ (   self,
  args 
)

Python method signature(s):

__init__(self, Rule orig)    Rule

Only subclasses may create Rules.

Deprecated:
libSBML internal

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.

Parameters:
term the CVTerm to assign
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_OPERATION_FAILED
  • LIBSBML_UNEXPECTED_ATTRIBUTE
  • LIBSBML_INVALID_OBJECT
Note:
Since the CV Term uses the metaid of the object as a reference, if the object has no metaid set the CVTerm will not be added.
Warning:
The fact that this method copies the object passed to it means that the caller will be left holding a physically different object instance than the one contained in this object. Changes made to the original object instance (such as resetting attribute values) will not affect the instance added here. In addition, the caller should make sure to free the original object if it is no longer being used, or else a memory leak will result.

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.

Parameters:
annotation an XML string that is to be copied and appended to the content of the 'annotation' subelement of this object
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_OPERATION_FAILED
See also:
getAnnotationString()

isSetAnnotation()

setAnnotation(const XMLNode* annotation)

setAnnotation(const std.string& annotation)

appendAnnotation(const XMLNode* annotation)

unsetAnnotation()

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.

Parameters:
notes an XML string that is to appended to the content of the 'notes' subelement of this object
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_OBJECT
  • LIBSBML_OPERATION_FAILED
See also:
getNotesString()

isSetNotes()

setNotes(const XMLNode* notes)

setNotes(const std.string& notes)

appendNotes(const XMLNode* notes)

unsetNotes()

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.

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.

Returns:
true if the math expression of this Rule includes parameters/numbers with undeclared units, false otherwise.
Note:
A return value of true indicates that the UnitDefinition returned by getDerivedUnitDefinition() may not accurately represent the units of the expression.
See also:
getDerivedUnitDefinition()

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.

Parameters:
type the SBMLTypeCode_t of the ancestor to be returned.
Returns:
the ancestor SBML object of this SBML object, that corresponds to the given SBMLTypeCode_t, NULL if none exists.

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.

Returns:
the annotation of this SBML object as an XMLNode
See also:
getAnnotationString()

isSetAnnotation()

setAnnotation(const XMLNode* annotation)

setAnnotation(const std.string& annotation)

appendAnnotation(const XMLNode* annotation)

appendAnnotation(const std.string& annotation)

unsetAnnotation()

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.

Returns:
the annotation string of this SBML object.
See also:
getAnnotation()

isSetAnnotation()

setAnnotation(const XMLNode* annotation)

setAnnotation(const std.string& annotation)

appendAnnotation(const XMLNode* annotation)

appendAnnotation(const std.string& annotation)

unsetAnnotation()

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.

Returns:
the column number of this SBML object.
See also:
getLine()

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.

Parameters:
n unsigned int the index of the CVTerm to retrieve
Returns:
the nth CVTerm in the list of CVTerms for this SBML object.

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.

Returns:
the CVTermList for 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.

Warning:
Note that it is possible the 'math' expression in the Rule contains pure numbers or parameters with undeclared units. In those cases, it is not possible to calculate the units of the overall expression without making assumptions. LibSBML does not make assumptions about the units, and getDerivedUnitDefinition() only returns the units as far as it is able to determine them. For example, in an expression X + Y, if X has unambiguously-defined units and Y does not, it will return the units of X. It is important that callers also invoke the method containsUndeclaredUnits() to determine whether this situation holds. Callers may wish to take suitable actions in those scenarios.
Returns:
a UnitDefinition that expresses the units of the math expression of this Rule.
See also:
containsUndeclaredUnits()

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:

  • (Level 2) RateRule: returns 'rateRule'
  • (Level 2) AssignmentRule: returns 'assignmentRule'
  • (Level 2) AlgebraicRule: returns 'algebraicRule'
  • (Level 1 Version 1) SpecieConcentrationRule: returns 'specieConcentrationRule'
  • (Level 1 Version 2) SpeciesConcentrationRule: returns 'speciesConcentrationRule'
  • (Level 1) CompartmentVolumeRule: returns 'compartmentVolumeRule'
  • (Level 1) ParameterRule: returns 'parameterRule'
  • Unknown rule type: returns 'unknownRule'

Returns:
the name of this element

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.

Returns:
the formula for this Rule.

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.

Note:
The required elements for a Rule object are: math
Returns:
a boolean value indicating whether all the required elements for this object have been defined.
Deprecated:
libSBML internal

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.

Returns:
the SBML Level 1 typecode for this Rule (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.

Returns:
the SBML level of this SBML object.
See also:
getVersion()

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.

Returns:
the line number of this SBML object.
See also:
getColumn()

Definition at line 2199 of file libsbml.py.

def libsbml.Rule.getMath (   self  ) 

Python method signature(s):

getMath(self)    ASTNode

Get the mathematical formula of this Rule.

Returns:
an ASTNode, the value of the 'math' subelement of this Rule

Definition at line 16286 of file libsbml.py.

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.

Returns:
the metaid of this SBML object.
See also:
isSetMetaId()

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.

Returns:
the parent Model of this SBML object.

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.

Returns:
the metaid of this SBML object.
See also:
isSetMetaId()

setMetaId(const std.string& metaid)

Deprecated:
libSBML internal

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.

Returns:
the XML Namespaces associated with this SBML object

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.

Returns:
the content of the 'notes' subelement of this SBML object.
See also:
getNotesString()

isSetNotes()

setNotes(const XMLNode* notes)

setNotes(const std.string& notes)

appendNotes(const XMLNode* notes)

appendNotes(const std.string& notes)

unsetNotes()

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.

Returns:
the content of the 'notes' subelement of this SBML object.
See also:
getNotes()

isSetNotes()

setNotes(const XMLNode* notes)

setNotes(const std.string& notes)

appendNotes(const XMLNode* notes)

appendNotes(const std.string& notes)

unsetNotes()

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.

Returns:
the number of CVTerms for 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.

Returns:
the parent SBML object of this SBML object.

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.

Parameters:
resource string representing the resource; e.g., 'http://www.geneontology.org/GO:0005892'
Returns:
the BiolQualifierType_t value associated with the resource

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.

Parameters:
resource string representing the resource; e.g., 'http://www.geneontology.org/GO:0005892'
Returns:
the ModelQualifierType_t value associated with the resource

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.

Returns:
the parent SBMLDocument object of this SBML object.

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.

Returns:
the value of the 'sboTerm' attribute as an integer, or -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.

Returns:
the value of the 'sboTerm' attribute as a string of the form SBO:NNNNNNN, or an empty string if the value is not set.

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.

Returns:
the rule type (a value drawn from the enumeration RuleType_t) of this Rule. The value will be either 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.

Returns:
the SBML type code for this object, or SBML_UNKNOWN (default).
See also:
getElementName()

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.

Returns:
the identifier of the units for the expression 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.

Returns:
the identifier string stored as the 'variable' attribute value in this Rule.

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.

Returns:
the SBML version of this SBML object.
See also:
getLevel()

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.

Note:
The required elements for a Rule object are: math
Returns:
a boolean value indicating whether all the required elements for this object have been defined.

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.

Note:
The required elements for a Rule object are: math
Returns:
a boolean value indicating whether all the required elements for this object have been defined.

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:

  • Level 1 Version 2 'http://www.sbml.org/sbml/level1'
  • Level 2 Version 1 'http://www.sbml.org/sbml/level2'
  • Level 2 Version 2 'http://www.sbml.org/sbml/level2/version2'
  • Level 2 Version 3 'http://www.sbml.org/sbml/level2/version3'
  • Level 2 Version 4 'http://www.sbml.org/sbml/level2/version4'

Returns:
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.

Returns:
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.

Returns:
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.

Returns:
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.

Returns:
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).

Returns:
true if this Rule is a RateRule (Level 2) or has type 'rate' (Level 1), false otherwise.

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).

Returns:
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.

Returns:
true if a 'annotation' subelement exists, false otherwise.
See also:
getAnnotation()

getAnnotationString()

setAnnotation(const XMLNode* annotation)

setAnnotation(const std.string& annotation)

appendAnnotation(const XMLNode* annotation)

appendAnnotation(const std.string& annotation)

unsetAnnotation()

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.

Returns:
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.

Returns:
true if the 'metaid' attribute of this SBML object has been set, false otherwise.
See also:
getMetaId()

setMetaId(const std.string& metaid)

Deprecated:
libSBML internal

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().

Returns:
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.

Returns:
true if the 'metaid' attribute of this SBML object has been set, false otherwise.
See also:
getMetaId()

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.

Returns:
true if the 'metaid' attribute of this SBML object has been set, false otherwise.
See also:
getMetaId()

setMetaId(const std.string& metaid)

Deprecated:
libSBML internal

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.

Returns:
true if a 'notes' subelement exists, false otherwise.
See also:
getNotes()

getNotesString()

setNotes(const XMLNode* notes)

setNotes(const std.string& notes)

appendNotes(const XMLNode* notes)

appendNotes(const std.string& notes)

unsetNotes()

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.

Returns:
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.

Returns:
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.

Returns:
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.

Returns:
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.

Parameters:
annotation an XML string that is to be used as the content of the 'annotation' subelement of this object
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_OPERATION_FAILED
See also:
getAnnotationString()

isSetAnnotation()

setAnnotation(const XMLNode* annotation)

appendAnnotation(const XMLNode* annotation)

appendAnnotation(const std.string& annotation)

unsetAnnotation()

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.

Parameters:
formula a mathematical formula in text-string form.
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_OBJECT

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.

Parameters:
metaid the identifier string to use as the value of the 'metaid' attribute
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_ATTRIBUTE_VALUE
  • LIBSBML_UNEXPECTED_ATTRIBUTE
See also:
getMetaId()

isSetMetaId()

Deprecated:
libSBML internal

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.

Parameters:
type the SBML Level 1 typecode for this Rule (SBML_COMPARTMENT_VOLUME_RULE, SBML_PARAMETER_RULE, or SBML_SPECIES_CONCENTRATION_RULE).
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_ATTRIBUTE_VALUE

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.

Parameters:
math the ASTNode structure of the mathematical formula.
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_OBJECT

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.

Parameters:
metaid the identifier string to use as the value of the 'metaid' attribute
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_ATTRIBUTE_VALUE
  • LIBSBML_UNEXPECTED_ATTRIBUTE
See also:
getMetaId()

isSetMetaId()

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.

Parameters:
metaid the identifier string to use as the value of the 'metaid' attribute
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_ATTRIBUTE_VALUE
  • LIBSBML_UNEXPECTED_ATTRIBUTE
See also:
getMetaId()

isSetMetaId()

Deprecated:
libSBML internal

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.

Parameters:
xmlns the namespaces to set
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS

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.

Parameters:
notes an XML string that is to be used as the content of the 'notes' subelement of this object
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_OBJECT
  • LIBSBML_OPERATION_FAILED
See also:
getNotesString()

isSetNotes()

setNotes(const XMLNode* notes)

appendNotes(const XMLNode* notes)

appendNotes(const std.string& notes)

unsetNotes()

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.

Parameters:
value the NNNNNNN integer portion of the SBO identifier
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_ATTRIBUTE_VALUE
  • LIBSBML_UNEXPECTED_ATTRIBUTE

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.

Parameters:
sname the identifier of the units
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_ATTRIBUTE_VALUE
  • LIBSBML_UNEXPECTED_ATTRIBUTE

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.

Parameters:
sid the identifier of a Compartment, Species or Parameter elsewhere in the enclosing Model object.
Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_INVALID_ATTRIBUTE_VALUE
  • LIBSBML_UNEXPECTED_ATTRIBUTE

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.

Returns:
the partial SBML that describes this SBML object.

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.

Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
See also:
getAnnotation()

getAnnotationString()

isSetAnnotation()

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.

Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_OPERATION_FAILED

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.

Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_OPERATION_FAILED

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.

Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
See also:
getNotesString()

isSetNotes()

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.

Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_UNEXPECTED_ATTRIBUTE

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.

Returns:
integer value indicating success/failure of the function. The possible values returned by this function are:
  • LIBSBML_OPERATION_SUCCESS
  • LIBSBML_OPERATION_FAILED

Definition at line 16512 of file libsbml.py.


Member Data Documentation

Reimplemented from libsbml.SBase.

Reimplemented in libsbml.AlgebraicRule, libsbml.AssignmentRule, and libsbml.RateRule.

Definition at line 16255 of file libsbml.py.




HTML documentation generated on Thu Jan 21 16:56:18 2010 using Doxygen 1.5.8.