libSBML Python API  5.11.0
libsbml.Deletion Class Reference
Inheritance diagram for libsbml.Deletion:
[legend]

Detailed Description

comp Deletion of an object from a submodel.

The Deletion class was introduced by the SBML Level 3 Hierarchical Model Composition package (“comp”) to allow elements of submodels to be removed before instantiation. The Deletion object class is used to define a deletion operation to be applied when a submodel instantiates a model definition. Deletions may be useful in hierarchical model composition scenarios for various reasons. For example, some components in a submodel may be redundant in the composed model, perhaps because the same features are implemented in a different way in the new model. Deletions function as follows. When the Model to which the Submodel object refers (via the 'modelRef' attribute) is read and processed for inclusion into the composed model, each Deletion object identifies an object to remove from that Model instance. The resulting submodel instance consists of everything in the Model object instance minus the entities referenced by the list of Deletion objects.

As might be expected, deletions can have wide-ranging implications, especially when the object deleted has substantial substructure, as in the case of reactions. The following are rules regarding deletions and their effects.

  • An object that has been deleted is considered inaccessible. Any element that has been deleted (or replaced) may not be referenced by an SBaseRef object.
  • If the deleted object has child objects and other structures, the child objects and substructure are also considered to be deleted.
  • It is not an error to delete explicitly an object that is already deleted by implication (for example as a result of the second point above). The resulting model is the same.
  • If the deleted object is from an SBML namespace that is not understood by the interpreter, the deletion must be ignored—the object will not need to be deleted, as the interpreter could not understand the package. If an interpreter cannot tell whether a referenced object does not exist or if exists in an unparsed namespace it may produce a warning.

The Deletion object class is subclassed from SBaseRef, and reuses all the machinery provided by SBaseRef. In addition, it defines two optional attributes, 'id' and 'name'. The 'id' attribute can be used to give an identifier to a given deletion operation. The identifier has no mathematical meaning, but it may be useful for creating submodels that can be manipulated more directly by other submodels. (Indeed, it is legitimate for an enclosing model definition to delete a deletion!)

The optional 'name' attribute is provided on Deletion for the same reason it is provided on other elements that have identifiers; viz., to provide for the possibility of giving a human-readable name to the object. The name may be useful in situations when deletions are displayed to modelers.

Public Member Functions

def __init__ (self, args)
 comp Deletion of an object from a submodel. More...
 
def clearReferencedElement (self)
 Removes the saved referenced element, if it had been saved earlier. More...
 
def clone (self)
 Creates and returns a deep copy of this Deletion object. More...
 
def connectToChild (self)
 
def createSBaseRef (self)
 Creates a new, empty SBaseRef, adds it to this SBaseRef and returns the created SBaseRef. More...
 
def getElementByMetaId (self, metaid)
 Returns the first child element it can find with the given metaid, 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 getElementName (self)
 Returns the XML element name of this SBML object. More...
 
def getId (self)
 Returns the value of the 'id' attribute of this Deletion. More...
 
def getIdRef (self)
 Returns the value of the 'idRef' attribute of this SBaseRef. More...
 
def getMetaIdRef (self)
 Returns the value of the 'metaIdRef' attribute of this SBaseRef. More...
 
def getName (self)
 Returns the value of the 'name' attribute of this Deletion. More...
 
def getNumReferents (self)
 Returns how many elements are being referred to by this SBaseRef. More...
 
def getPortRef (self)
 Returns the value of the 'portRef' attribute of this SBaseRef. More...
 
def getReferencedElement (self)
 Returns the object pointed to by this element. More...
 
def getReferencedElementFrom (self, model)
 Examines the referenced Model for the referenced object, and returns it, if found. More...
 
def getSBaseRef (self, args)
 Get the child sBaseRef of this sBaseRef. More...
 
def getTypeCode (self)
 Returns the libSBML type code of this object instance. More...
 
def getUnitRef (self)
 Returns the value of the 'unitRef' attribute of this SBaseRef. More...
 
def hasRequiredAttributes (self)
 Returns true if getNumReferents() is exactly 1. More...
 
def isSetId (self)
 Predicate returning True or False depending on whether this object's 'id' attribute has been set. More...
 
def isSetIdRef (self)
 Predicate returning True or False depending on whether this SBaseRef's 'idRef' attribute has been set. More...
 
def isSetMetaIdRef (self)
 Predicate returning True or False depending on whether this SBaseRef's 'metaIdRef' attribute has been set. More...
 
def isSetName (self)
 Predicate returning True or False depending on whether this object's 'name' attribute has been set. More...
 
def isSetPortRef (self)
 Predicate returning True or False depending on whether this SBaseRef's 'portRef' attribute has been set. More...
 
def isSetSBaseRef (self)
 Predicate for testing whether the sBaseRef for this SBaseRef is set. More...
 
def isSetUnitRef (self)
 Predicate returning True or False depending on whether this SBaseRef's 'unitRef' attribute has been set. More...
 
def performDeletion (self)
 DEPRECATED FUNCTION: DO NOT USE. More...
 
def removeFromParentAndDelete (self)
 Finds this SBaseRef's parent, which can either be a List or can be another SBaseRef, and tells it to remove this. More...
 
def renameSIdRefs (self, oldid, newid)
 Replaces all uses of a given SIdRef type attribute value with another value. More...
 
def saveReferencedElement (self)
 Finds and stores the referenced object. More...
 
def setId (self, id)
 Sets the value of the 'id' attribute of this Deletion. More...
 
def setIdRef (self, id)
 Sets the value of the 'idRef' attribute of this SBaseRef. More...
 
def setMetaIdRef (self, id)
 Sets the value of the 'metaIdRef' attribute of this SBaseRef. More...
 
def setName (self, name)
 Sets the value of the 'name' attribute of this Deletion. More...
 
def setPortRef (self, id)
 Sets the value of the 'portRef' attribute of this SBaseRef. More...
 
def setSBaseRef (self, sBaseRef)
 Sets the sBaseRef definition of this SBaseRef to a copy of the given SBaseRef object instance. More...
 
def setUnitRef (self, id)
 Sets the value of the 'unitRef' attribute of this SBaseRef. More...
 
def unsetId (self)
 Unsets the value of the 'id' attribute of this Deletion. More...
 
def unsetIdRef (self)
 Unsets the value of the 'idRef' attribute of this SBaseRef. More...
 
def unsetMetaIdRef (self)
 Unsets the value of the 'metaIdRef' attribute of this SBaseRef. More...
 
def unsetName (self)
 Unsets the value of the 'name' attribute of this Deletion. More...
 
def unsetPortRef (self)
 Unsets the value of the 'portRef' attribute of this SBaseRef. More...
 
def unsetSBaseRef (self)
 Unsets the child SBaseRef of this SBaseRef. More...
 
def unsetUnitRef (self)
 Unsets the value of the 'unitRef' attribute of this SBaseRef. More...
 

Member Function Documentation

def libsbml.SBaseRef.clearReferencedElement (   self)
inherited

Removes the saved referenced element, if it had been saved earlier.

clearReferencedElement()
def libsbml.Deletion.clone (   self)

Creates and returns a deep copy of this Deletion object.

clone()   Deletion
Returns
a (deep) copy of this Deletion object
def libsbml.SBaseRef.connectToChild (   self)
inherited
connectToChild()
def libsbml.SBaseRef.createSBaseRef (   self)
inherited

Creates a new, empty SBaseRef, adds it to this SBaseRef and returns the created SBaseRef.

createSBaseRef()   SBaseRef
Returns
the newly created SBaseRef object instance.
def libsbml.SBaseRef.getElementByMetaId (   self,
  metaid 
)
inherited

Returns the first child element it can find with the given metaid, or itself if it has the given metaid, or None if no such object is found.

getElementByMetaId(string metaid)   SBase
Parameters
metaidstring representing the metaid of objects to find
Returns
a pointer to the SBase element with the given metaid.
def libsbml.SBaseRef.getElementBySId (   self,
  id 
)
inherited

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.

getElementBySId(string id)   SBase
Parameters
idstring representing the id of objects to find
Returns
a pointer to the SBase element with the given id.
def libsbml.Deletion.getElementName (   self)

Returns the XML element name of this SBML object.

getElementName()   string
Returns
the name of this element, as a text string.
def libsbml.Deletion.getId (   self)

Returns the value of the 'id' attribute of this Deletion.

getId()   string
Returns
the name of this Deletion.
def libsbml.SBaseRef.getIdRef (   self)
inherited

Returns the value of the 'idRef' attribute of this SBaseRef.

getIdRef()   string
Returns
the value of the 'idRef' attribute of this SBaseRef.
def libsbml.SBaseRef.getMetaIdRef (   self)
inherited

Returns the value of the 'metaIdRef' attribute of this SBaseRef.

getMetaIdRef()   string
Returns
the value of the 'metaIdRef' attribute of this SBaseRef.
def libsbml.Deletion.getName (   self)

Returns the value of the 'name' attribute of this Deletion.

getName()   string
Returns
the name of this Deletion.
def libsbml.SBaseRef.getNumReferents (   self)
inherited

Returns how many elements are being referred to by this SBaseRef.

getNumReferents()   int

A valid SBaseRef will have exactly one. Possible referents are portRef, idRef, unitRef, and metaIdRef.

Returns
integer value between 0 and 4: the number of different ways this element points to its referent.
def libsbml.SBaseRef.getPortRef (   self)
inherited

Returns the value of the 'portRef' attribute of this SBaseRef.

getPortRef()   string
Returns
the value of the 'portRef' attribute of this SBaseRef.
def libsbml.SBaseRef.getReferencedElement (   self)
inherited

Returns the object pointed to by this element.

getReferencedElement()   SBase

If that element was previously found and set with 'saveReferencedElement', that element is returned; otherwise, 'saveReferencedElement' is called first, and the found element is returned.

def libsbml.SBaseRef.getReferencedElementFrom (   self,
  model 
)
inherited

Examines the referenced Model for the referenced object, and returns it, if found.

getReferencedElementFrom(Model model)   SBase
Parameters
modelthe Model in which to look for the object referenced by this SBaseRef.
Returns
the element in the referenced Model to which this SBaseRef refers. If this object references an object in a Submodel, the returned object will be in the instantiated Model in that Submodel.
def libsbml.SBaseRef.getSBaseRef (   self,
  args 
)
inherited

Get the child sBaseRef of this sBaseRef.

getSBaseRef()   SBaseRef
Returns
the SBaseRef child of this SBaseRef, or None if none exists.
def libsbml.Deletion.getTypeCode (   self)

Returns the libSBML type code of this object instance.

getTypeCode()   int
LibSBML attaches an identifying code to every kind of SBML object. These are integer constants known as SBML type codes. The names of all the codes begin with the characters SBML_. In the Python language interface for libSBML, the type codes are defined as static integer constants in the interface class libsbml. Note that different Level 3 package plug-ins may use overlapping type codes; to identify the package to which a given object belongs, call the getPackageName() method on the object.
Returns
the SBML type code for this object: SBML_COMP_DELETION
Warning
The specific integer values of the possible type codes may be reused by different Level 3 package plug-ins. Thus, to identifiy the correct code, it is necessary to invoke both getTypeCode() and getPackageName().
See also
getElementName()
getPackageName()
def libsbml.SBaseRef.getUnitRef (   self)
inherited

Returns the value of the 'unitRef' attribute of this SBaseRef.

getUnitRef()   string
Returns
the value of the 'unitRef' attribute of this SBaseRef.
def libsbml.SBaseRef.hasRequiredAttributes (   self)
inherited

Returns true if getNumReferents() is exactly 1.

hasRequiredAttributes()   bool
Returns
boolean: 'true' if the attributes are correctly set; 'false' if not.
def libsbml.Deletion.isSetId (   self)

Predicate returning True or False depending on whether this object's 'id' attribute has been set.

isSetId()   bool
Some words of explanation about the set/unset/isSet methods: The SBML specifications define certain attributes on some classes of objects as being optional. This requires an application to be careful about the distinction between two cases when reading a model: (1) a given attribute has never been set to a value, and therefore should be assumed to have the SBML-defined default value if one exists, and (2) a given attribute has been set to a value, but the value happens to be an empty string. The situation can be ambiguous when reading a model from a file or data stream and then examining the data objects that libSBML constructs as a result. 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 'id' attribute of this object has been set, False otherwise.
def libsbml.SBaseRef.isSetIdRef (   self)
inherited

Predicate returning True or False depending on whether this SBaseRef's 'idRef' attribute has been set.

isSetIdRef()   bool
Returns
True if this SBaseRef's 'idRef' attribute has been set, otherwise False is returned.
def libsbml.SBaseRef.isSetMetaIdRef (   self)
inherited

Predicate returning True or False depending on whether this SBaseRef's 'metaIdRef' attribute has been set.

isSetMetaIdRef()   bool
Returns
True if this SBaseRef's 'metaIdRef' attribute has been set, otherwise False is returned.
def libsbml.Deletion.isSetName (   self)

Predicate returning True or False depending on whether this object's 'name' attribute has been set.

isSetName()   bool
Some words of explanation about the set/unset/isSet methods: The SBML specifications define certain attributes on some classes of objects as being optional. This requires an application to be careful about the distinction between two cases when reading a model: (1) a given attribute has never been set to a value, and therefore should be assumed to have the SBML-defined default value if one exists, and (2) a given attribute has been set to a value, but the value happens to be an empty string. The situation can be ambiguous when reading a model from a file or data stream and then examining the data objects that libSBML constructs as a result. 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 'name' attribute of this object has been set, False otherwise.
def libsbml.SBaseRef.isSetPortRef (   self)
inherited

Predicate returning True or False depending on whether this SBaseRef's 'portRef' attribute has been set.

isSetPortRef()   bool
Returns
True if this SBaseRef's 'portRef' attribute has been set, otherwise False is returned.
def libsbml.SBaseRef.isSetSBaseRef (   self)
inherited

Predicate for testing whether the sBaseRef for this SBaseRef is set.

isSetSBaseRef()   bool
Returns
True if the sBaseRef of this SBaseRef is set, False otherwise.
def libsbml.SBaseRef.isSetUnitRef (   self)
inherited

Predicate returning True or False depending on whether this SBaseRef's 'unitRef' attribute has been set.

isSetUnitRef()   bool
Returns
True if this SBaseRef's 'unitRef' attribute has been set, otherwise False is returned.
def libsbml.SBaseRef.performDeletion (   self)
inherited

DEPRECATED FUNCTION: DO NOT USE.

Deletes the referenced object, plus any other elements that element points to through ReplacedElement or ReplacedBy children.

performDeletion()   int

Instead of calling this function directly, use 'CompModelPlugin::instantiateSubmodels' instead, which deals with all the intricacies of replacements and deletions, and gives you access to the non-flattened hierarchical form of the model.

def libsbml.SBaseRef.removeFromParentAndDelete (   self)
inherited

Finds this SBaseRef's parent, which can either be a List or can be another SBaseRef, and tells it to remove this.

removeFromParentAndDelete()   int
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.renameSIdRefs (   self,
  oldid,
  newid 
)
inherited

Replaces all uses of a given SIdRef type attribute value with another value.

renameSIdRefs(string oldid, string newid)
In SBML, object identifiers are of a data type called 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 SIdRefin 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.

Parameters
oldidthe old identifier
newidthe new identifier
def libsbml.Deletion.saveReferencedElement (   self)

Finds and stores the referenced object.

saveReferencedElement()   int

It finds its Submodel parent, gets its instantiated Model object, calls 'getReferencedElementFrom' on that model, and stores the result.

Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Deletion.setId (   self,
  id 
)

Sets the value of the 'id' attribute of this Deletion.

setId(string id)   int

This method fails if the id is not a valid syntax for an SId.

Parameters
idthe identifier to use
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.setIdRef (   self,
  id 
)
inherited

Sets the value of the 'idRef' attribute of this SBaseRef.

setIdRef(string id)   int

This method fails if the id is not a valid syntax for an SIdRef (LIBSBML_INVALID_ATTRIBUTE_VALUE), or if the SBaseRef already points to an element of the submodel using a different interface (LIBSBML_OPERATION_FAILED). A sBaseRef must use exactly one method to point to a submodel element.

Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.setMetaIdRef (   self,
  id 
)
inherited

Sets the value of the 'metaIdRef' attribute of this SBaseRef.

setMetaIdRef(string id)   int

This method fails if the id is not a valid syntax for an IDREF (LIBSBML_INVALID_ATTRIBUTE_VALUE), or if the SBaseRef already points to an element of the submodel using a different interface (LIBSBML_OPERATION_FAILED). An sBaseRef must use exactly one method to point to a submodel element.

Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Deletion.setName (   self,
  name 
)

Sets the value of the 'name' attribute of this Deletion.

setName(string name)   int

The string in name is copied.

Parameters
namethe new name for the Deletion
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.setPortRef (   self,
  id 
)
inherited

Sets the value of the 'portRef' attribute of this SBaseRef.

setPortRef(string id)   int

Fails if the id is not a valid syntax for a PortSIdRef (LIBSBML_INVALID_ATTRIBUTE_VALUE), or if the SBaseRef already points to an element of the submodel using a different interface (LIBSBML_OPERATION_FAILED). An SBaseRef must use exactly one method to point to a submodel element.

Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.setSBaseRef (   self,
  sBaseRef 
)
inherited

Sets the sBaseRef definition of this SBaseRef to a copy of the given SBaseRef object instance.

setSBaseRef(SBaseRef sBaseRef)   int

This method fails if the added sBaseRef does not match the level/version/package of the parent object or if the added sBaseRef cannot be copied.

Parameters
sBaseRefthe SBaseRef object instance to use.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.setUnitRef (   self,
  id 
)
inherited

Sets the value of the 'unitRef' attribute of this SBaseRef.

setUnitRef(string id)   int

This method fails if the id is not a valid syntax for a UnitSIdRef (LIBSBML_INVALID_ATTRIBUTE_VALUE), or if the SBaseRef already points to an element of the submodel using a different interface (LIBSBML_OPERATION_FAILED). A sBaseRef must use exactly one method to point to a submodel element.

Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Deletion.unsetId (   self)

Unsets the value of the 'id' attribute of this Deletion.

unsetId()   int
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.unsetIdRef (   self)
inherited

Unsets the value of the 'idRef' attribute of this SBaseRef.

unsetIdRef()   int
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.unsetMetaIdRef (   self)
inherited

Unsets the value of the 'metaIdRef' attribute of this SBaseRef.

unsetMetaIdRef()   int
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.Deletion.unsetName (   self)

Unsets the value of the 'name' attribute of this Deletion.

unsetName()   int
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.unsetPortRef (   self)
inherited

Unsets the value of the 'portRef' attribute of this SBaseRef.

unsetPortRef()   int
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.unsetSBaseRef (   self)
inherited

Unsets the child SBaseRef of this SBaseRef.

unsetSBaseRef()   int

Deletes the former SBaseRef child, if one existed.

Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
def libsbml.SBaseRef.unsetUnitRef (   self)
inherited

Unsets the value of the 'unitRef' attribute of this SBaseRef.

unsetUnitRef()   int
Returns
integer value indicating success/failure of the function. The possible values returned by this function are: