libSBML Python API
5.18.0
|
The CompModelPlugin class inherits from the SBMLSBasePlugin class, and codifies the extensions to the Model class defined in the SBML Level 3 Hierarchical Model Composition (“comp”) package. This extension allows a Model to define Submodels (other Models that are instantiated as new parts of the parent Model), and Ports, a defined interface for including the given Model as a Submodel of a different Model.
Submodels are stored in an optional child ListOfSubmodels object, which, if present, must contain one or more Submodel objects. All of the Submodels present in the ListOfSubmodels are defined to be instantiated in the 'complete' Model.
Ports are stored in an optional child ListOfPorts object, which, if present, must contain one or more Port objects. All of the Ports present in the ListOfPorts collectively define the 'port interface' of the Model.
Public Member Functions | |
def | __init__ (self, args) |
This method has multiple variants; they differ in the arguments they accept. More... | |
def | addPort (self, port) |
Adds a copy of the given Port object to the list of ports. More... | |
def | addReplacedElement (self, replacedElement) |
Adds a copy of the given ReplacedElement object to the list of ReplacedElements. More... | |
def | addSubmodel (self, submodel) |
Adds a copy of the given Submodel object to the list of submodels. More... | |
def | clearReplacedElements (self) |
Remove all ReplacedElements, if any exist. More... | |
def | clone (self) |
Creates and returns a deep copy of this CompModelPlugin object. More... | |
def | createPort (self) |
Creates a Port object, adds it to the end of the port objects list and returns a pointer to the newly created object. More... | |
def | createReplacedBy (self) |
Creates a new, empty ReplacedBy, adds it to this CompSBasePlugin and returns the created ReplacedBy. More... | |
def | createReplacedElement (self) |
Creates a ReplacedElement object, adds it to the end of the ReplacedElement objects list and returns a pointer to the newly created object. More... | |
def | createSubmodel (self) |
Creates a Submodel object, adds it to the end of the submodel objects list and returns a pointer to the newly created object. More... | |
def | getDivider (self) |
Get the string used as the divider between names when renaming and flattening models. More... | |
def | getElementByMetaId (self, metaid) |
Returns the first child element it can find with the given meta identifier, or itself if it has the given metaid , or None if no such object is found. More... | |
def | getElementBySId (self, id) |
Returns the first child element found that has the given id in the model-wide SId namespace, or None if no such object is found. More... | |
def | getElementNamespace (self) |
Returns the namespace URI of the package to which this plugin object belongs. More... | |
def | getLevel (self) |
Returns the SBML Level of the package extension of this plugin object. More... | |
def | getListOfAllElements (self, filter=None) |
Returns an SBaseList of all child SBase objects, including those nested to an arbitrary depth. More... | |
def | getListOfPorts (self, args) |
Returns the ListOfPorts from this CompModelPlugin. More... | |
def | getListOfReplacedElements (self, args) |
Returns the ListOf object that holds all replacedElements. More... | |
def | getListOfSubmodels (self, args) |
Returns the ListOfSubmodels from this CompModelPlugin. More... | |
def | getNumPorts (self) |
Returns the number of ports for this CompModelPlugin. More... | |
def | getNumReplacedElements (self) |
Returns the number of ReplacedElements for this CompSBasePlugin. More... | |
def | getNumSubmodels (self) |
Returns the number of submodels for this CompModelPlugin. More... | |
def | getPackageName (self) |
Returns the short-form name of the package to which this plugin object belongs. More... | |
def | getPackageVersion (self) |
Returns the package version of the package extension of this plugin object. More... | |
def | getParentSBMLObject (self, args) |
Returns the parent object to which this plugin object is connected. More... | |
def | getPort (self, args) |
This method has multiple variants; they differ in the arguments they accept. More... | |
def | getPrefix (self) |
Returns the XML namespace prefix of the package to which this plugin object belongs. More... | |
def | getReplacedBy (self, args) |
Get the child ReplacedBy of this SBase. More... | |
def | getReplacedElement (self, args) |
Returns the ReplacedElement with the given index. More... | |
def | getSBMLDocument (self, args) |
Returns the SBMLDocument object containing this object instance. More... | |
def | getSubmodel (self, args) |
This method has multiple variants; they differ in the arguments they accept. More... | |
def | getTransformer (self) |
def | getURI (self) |
Returns the XML namespace URI for the package to which this object belongs. More... | |
def | getVersion (self) |
Returns the Version within the SBML Level of the package extension of this plugin object. More... | |
def | isSetReplacedBy (self) |
Predicate for testing whether the ReplacedBy for this SBase is set. More... | |
def | isSetTransformer (self) |
def | isValidTypeForList (self, item) |
def | logInvalidId (self, attribute, wrongattribute) |
Helper to log a common type of error. More... | |
def | removePort (self, index) |
Removes the port with the given index. More... | |
def | removeReplacedElement (self, index) |
Removes the ReplacedElement with the given index. More... | |
def | removeSubmodel (self, index) |
Removes the submodel with the given index. More... | |
def | renameMetaIdRefs (self, oldid, newid) |
Replaces all uses of a given meta identifier attribute value with another value. More... | |
def | renameSIdRefs (self, oldid, newid) |
Replaces all uses of a given SIdRef type attribute value with another value. More... | |
def | renameUnitSIdRefs (self, oldid, newid) |
Replaces all uses of a given UnitSIdRef type attribute value with another value. More... | |
def | setDivider (self, divider) |
Set the string used as the divider between names when renaming and flattening models. More... | |
def | setElementNamespace (self, uri) |
Sets the XML namespace to which this object belongs. More... | |
def | setReplacedBy (self, replacedBy) |
Sets the ReplacedBy definition of this SBase to a copy of the given ReplacedBy object instance. More... | |
def | setTransformer (self, transformer) |
def | unsetReplacedBy (self) |
Unsets the child ReplacedBy of this SBase. More... | |
def | unsetTransformer (self) |
Unsets any custom prefix transformers. More... | |
def libsbml.CompModelPlugin.__init__ | ( | self, | |
args | |||
) |
This method has multiple variants; they differ in the arguments they accept.
__init__(string uri, string prefix, CompPkgNamespaces compns) CompModelPlugin __init__(CompModelPlugin orig) CompModelPlugin
Each variant is described separately below.
CompModelPlugin(string uri, string prefix, CompPkgNamespaces compns)
Creates a new CompModelPlugin object using the given parameters.
'http://www.sbml.org/sbml/level3/version1/core'
. Individual SBML Level 3 packages define their own XML namespaces; for example, all elements belonging to the SBML Level 3 Layout Version 1 package must be placed in the XML namespace 'http://www.sbml.org/sbml/level3/version1/layout/version1/'
.uri | the URI of the SBML Level 3 package implemented by this libSBML package extension. |
prefix | the XML namespace prefix being used for the package. |
compns | the namespaces object for the package. |
CompModelPlugin(CompModelPlugin orig)
Copy constructor. Creates a copy of this CompModelPlugin object.
orig | the instance to copy. |
def libsbml.CompModelPlugin.addPort | ( | self, | |
port | |||
) |
Adds a copy of the given Port object to the list of ports.
addPort(Port port) int
port | the Port object to be added to the list of ports. Fails if the added port is None , does not match the level/version/package of the parent object, or cannot be added to the list of ports. |
|
inherited |
Adds a copy of the given ReplacedElement object to the list of ReplacedElements.
addReplacedElement(ReplacedElement replacedElement) int
replacedElement | the ReplacedElement object to be added to the list of ReplacedElements. Fails if the added ReplacedElement is None , does not match the level/version/package of the parent object, or cannot be added to the list of replaced elements. |
def libsbml.CompModelPlugin.addSubmodel | ( | self, | |
submodel | |||
) |
Adds a copy of the given Submodel object to the list of submodels.
addSubmodel(Submodel submodel) int
Fails if the added submodel is None
, does not match the level/version/package of the parent object, or cannot be added to the list of submodels.
submodel | the Submodel object to be added to the list of submodels. |
|
inherited |
Remove all ReplacedElements, if any exist.
clearReplacedElements()
def libsbml.CompModelPlugin.clone | ( | self | ) |
Creates and returns a deep copy of this CompModelPlugin object.
clone() CompModelPlugin
def libsbml.CompModelPlugin.createPort | ( | self | ) |
|
inherited |
Creates a new, empty ReplacedBy, adds it to this CompSBasePlugin and returns the created ReplacedBy.
createReplacedBy() ReplacedBy
|
inherited |
Creates a ReplacedElement object, adds it to the end of the ReplacedElement objects list and returns a pointer to the newly created object.
createReplacedElement() ReplacedElement
def libsbml.CompModelPlugin.createSubmodel | ( | self | ) |
def libsbml.CompModelPlugin.getDivider | ( | self | ) |
Get the string used as the divider between names when renaming and flattening models.
getDivider() string
The divider string consists of two underscore characters ("__
") by default, and can be overridden with the setDivider() function.
def libsbml.CompModelPlugin.getElementByMetaId | ( | self, | |
metaid | |||
) |
Returns the first child element it can find with the given meta identifier, or itself if it has the given metaid
, or None
if no such object is found.
getElementByMetaId(string metaid) SBase
metaid | a string representing the metaid of the object to find. |
metaid
. def libsbml.CompModelPlugin.getElementBySId | ( | self, | |
id | |||
) |
|
inherited |
Returns the namespace URI of the package to which this plugin object belongs.
getElementNamespace() string
|
inherited |
Returns the SBML Level of the package extension of this plugin object.
getLevel() long
|
inherited |
Returns an SBaseList of all child SBase objects, including those nested to an arbitrary depth.
getListOfAllElements(ElementFilter filter) SBaseList getListOfAllElements() SBaseList
def libsbml.CompModelPlugin.getListOfPorts | ( | self, | |
args | |||
) |
Returns the ListOfPorts from this CompModelPlugin.
getListOfPorts() ListOfPorts
|
inherited |
Returns the ListOf object that holds all replacedElements.
getListOfReplacedElements() ListOfReplacedElements
def libsbml.CompModelPlugin.getListOfSubmodels | ( | self, | |
args | |||
) |
Returns the ListOfSubmodels from this CompModelPlugin.
getListOfSubmodels() ListOfSubmodels
def libsbml.CompModelPlugin.getNumPorts | ( | self | ) |
Returns the number of ports for this CompModelPlugin.
getNumPorts() long
|
inherited |
Returns the number of ReplacedElements for this CompSBasePlugin.
getNumReplacedElements() long
def libsbml.CompModelPlugin.getNumSubmodels | ( | self | ) |
Returns the number of submodels for this CompModelPlugin.
getNumSubmodels() long
|
inherited |
Returns the short-form name of the package to which this plugin object belongs.
getPackageName() string
|
inherited |
Returns the package version of the package extension of this plugin object.
getPackageVersion() long
|
inherited |
Returns the parent object to which this plugin object is connected.
getParentSBMLObject() SBase
def libsbml.CompModelPlugin.getPort | ( | self, | |
args | |||
) |
This method has multiple variants; they differ in the arguments they accept.
getPort(long n) Port getPort(string id) Port
Each variant is described separately below.
getPort(string id)
Returns the port with the given identifier.
id | the id of the Port to get. |
None
is returned.getPort(long n)
Returns the port with the given index.
n | the index number of the Port to get. |
n
is invalid, None
is returned.
|
inherited |
Returns the XML namespace prefix of the package to which this plugin object belongs.
getPrefix() string
|
inherited |
Get the child ReplacedBy of this SBase.
getReplacedBy() ReplacedBy
|
inherited |
Returns the ReplacedElement with the given index.
getReplacedElement(long n) ReplacedElement
n | the index number of the ReplacedElement to get. |
None
is returned.
|
inherited |
Returns the SBMLDocument object containing this object instance.
getSBMLDocument() SBMLDocument
This method allows the caller to obtain the SBMLDocument for the current object.
def libsbml.CompModelPlugin.getSubmodel | ( | self, | |
args | |||
) |
This method has multiple variants; they differ in the arguments they accept.
getSubmodel(long n) Submodel getSubmodel(string id) Submodel
Each variant is described separately below.
getSubmodel(string id)
Returns the submodel with the given identifier.
id | the identifier of the Submodel to get. |
id
exists, None
is returned.getSubmodel(long n)
Returns the submodel with the given index.
n | the index number of the Submodel to get. |
n
is invalid, None
is returned. def libsbml.CompModelPlugin.getTransformer | ( | self | ) |
getTransformer() PrefixTransformer *
|
inherited |
Returns the XML namespace URI for the package to which this object belongs.
getURI() string
'http://www.sbml.org/sbml/level3/version1/core'
. Individual SBML Level 3 packages define their own XML namespaces; for example, all elements belonging to the SBML Level 3 Layout Version 1 package must be placed in the XML namespace 'http://www.sbml.org/sbml/level3/version1/layout/version1/'
.This method first looks into the SBMLNamespaces object possessed by the parent SBMLDocument object of the current object. If this cannot be found, this method returns the result of getElementNamespace().
|
inherited |
Returns the Version within the SBML Level of the package extension of this plugin object.
getVersion() long
|
inherited |
Predicate for testing whether the ReplacedBy for this SBase is set.
isSetReplacedBy() bool
True
if the ReplacedBy of this SBase is set, False
otherwise. def libsbml.CompModelPlugin.isSetTransformer | ( | self | ) |
isSetTransformer() bool
|
inherited |
isValidTypeForList(SBase item) bool
|
inherited |
Helper to log a common type of error.
logInvalidId(string attribute, string wrongattribute)
def libsbml.CompModelPlugin.removePort | ( | self, | |
index | |||
) |
Removes the port with the given index.
removePort(long index) Port
The caller owns the returned item and is responsible for deleting it.
index | the index of the Port object to remove. |
None
is returned if the given index is out of range.
|
inherited |
Removes the ReplacedElement with the given index.
removeReplacedElement(long index) ReplacedElement
A pointer to the ReplacedElement that was removed is returned. If no ReplacedElement has been removed, None
is returned.
index | the index of the ReplacedElement object to remove. |
None
is returned if the given index is out of range. def libsbml.CompModelPlugin.removeSubmodel | ( | self, | |
index | |||
) |
Removes the submodel with the given index.
removeSubmodel(long index) Submodel
A pointer to the submodel that was removed is returned. The caller owns the returned item and is responsible for deleting it.
index | the index of the Submodel object to remove. |
None
is returned if the given index
is out of range and no submodel has been removed, None
is returned.
|
inherited |
Replaces all uses of a given meta identifier attribute value with another value.
renameMetaIdRefs(string oldid, string newid)
ID
; the SBML object attribute itself is typically named metaid
. All attributes that hold values referring to values of type ID
are of the XML data type IDREF
. They are also sometimes informally referred to as 'metaid refs', in analogy to the SBML-defined type SIdRef
.This method works by looking at all meta-identifier attribute values, comparing the identifiers to the value of oldid
. If any matches are found, the matching identifiers are replaced with newid
. The method does not descend into child elements.
oldid | the old identifier. |
newid | the new identifier. |
|
inherited |
Replaces all uses of a given SIdRef
type attribute value with another value.
renameSIdRefs(string oldid, string newid)
SId
. In SBML Level 3, an explicit data type called SIdRef
was introduced for attribute values that refer to SId
values; in previous Levels of SBML, this data type did not exist and attributes were simply described to as 'referring to an identifier', but the effective data type was the same as SIdRef
in Level 3. These and other methods of libSBML refer to the type SIdRef
for all Levels of SBML, even if the corresponding SBML specification did not explicitly name the data type.This method works by looking at all attributes and (if appropriate) mathematical formulas in MathML content, comparing the referenced identifiers to the value of oldid
. If any matches are found, the matching values are replaced with newid
. The method does not descend into child elements.
oldid | the old identifier. |
newid | the new identifier. |
|
inherited |
Replaces all uses of a given UnitSIdRef
type attribute value with another value.
renameUnitSIdRefs(string oldid, string newid)
UnitSId
. In SBML Level 3, an explicit data type called UnitSIdRef
was introduced for attribute values that refer to UnitSId
values; in previous Levels of SBML, this data type did not exist and attributes were simply described to as 'referring to a unit identifier', but the effective data type was the same as UnitSIdRef
in Level 3. These and other methods of libSBML refer to the type UnitSIdRef
for all Levels of SBML, even if the corresponding SBML specification did not explicitly name the data type.This method works by looking at all unit identifier attribute values (including, if appropriate, inside mathematical formulas), comparing the referenced unit identifiers to the value of oldid
. If any matches are found, the matching values are replaced with newid
. The method does not descend into child elements.
oldid | the old identifier. |
newid | the new identifier. |
def libsbml.CompModelPlugin.setDivider | ( | self, | |
divider | |||
) |
Set the string used as the divider between names when renaming and flattening models.
setDivider(string divider) int
The divider string consists of two underscore characters ("__
") by default. This method will fail if called with an empty divider
, or a divider
that cannot be used internally as part of a valid SBML SId.
|
inherited |
Sets the XML namespace to which this object belongs.
setElementNamespace(string uri) int
'http://www.sbml.org/sbml/level3/version1/core'
. Individual SBML Level 3 packages define their own XML namespaces; for example, all elements belonging to the SBML Level 3 Layout Version 1 package must be placed in the XML namespace 'http://www.sbml.org/sbml/level3/version1/layout/version1/'
.uri | the URI to assign to this object. |
|
inherited |
Sets the ReplacedBy definition of this SBase to a copy of the given ReplacedBy object instance.
setReplacedBy(ReplacedBy replacedBy) int
This method fails if the added ReplacedBy does not match the level/version/package of the parent object or if the added ReplacedBy cannot be copied.
replacedBy | the ReplacedBy object instance to use. |
def libsbml.CompModelPlugin.setTransformer | ( | self, | |
transformer | |||
) |
setTransformer(PrefixTransformer * transformer)
Sets the custom transformer that is to be used, instead of the standard prefixing with the given divider. This makes it possible to finely control how elements are altered.
If not set, only ids and meta ids will be prefixed.
NOTE: the model plugin only holds the pointer to the element it does not take ownership of it. Thus the calling program is responsible of freeing the transformer when no longer needed (i.e after the SBML document has been deleted)
transformer | the prefix transformer to use. |
|
inherited |
Unsets the child ReplacedBy of this SBase.
unsetReplacedBy() int
def libsbml.CompModelPlugin.unsetTransformer | ( | self | ) |
Unsets any custom prefix transformers.
unsetTransformer()