libSBML Python API  5.8.0
 All Classes Namespaces Files Functions Variables Pages
libsbml.XMLNamespaces Class Reference
Inheritance diagram for libsbml.XMLNamespaces:
[legend]

Detailed Description

Representation of XML Namespaces.

This class of objects is defined by libSBML only and has no direct equivalent in terms of SBML components. This class is not prescribed by the SBML specifications, although it is used to implement features defined in SBML.

This class serves to organize functionality for tracking XML namespaces in a document or data stream. The namespace declarations are stored as a list of pairs of XML namespace URIs and prefix strings. These correspond to the parts of a namespace declaration on an XML element. For example, in the following XML fragment,

 <annotation>
     <mysim:nodecolors xmlns:mysim='urn:lsid:mysim.org'
          mysim:bgcolor='green' mysim:fgcolor='white'/>
 </annotation>

there is one namespace declaration. Its URI is urn:lsid:mysim.org and its prefix is mysim. This pair could be stored as one item in an XMLNamespaces list.

XMLNamespaces provides various methods for manipulating the list of prefix-URI pairs. Individual namespaces stored in a given XMLNamespace object instance can be retrieved based on their index using XMLNamespaces.getPrefix(), or by their characteristics such as their URI or position in the list.

Public Member Functions

def add
 
def clear
 
def clone
 
def containsUri
 
def getIndex
 
def getIndexByPrefix
 
def getLength
 
def getNumNamespaces
 
def getPrefix
 
def getURI
 
def hasNS
 
def hasPrefix
 
def hasURI
 
def isEmpty
 
def remove
 

Member Function Documentation

def libsbml.XMLNamespaces.add (   self,
  args 
)

Python method signature(s):

add(XMLNamespaces self, string uri, string prefix="")   int
add(XMLNamespaces self, string uri)   int

Appends an XML namespace prefix and URI pair to this list of namespace declarations.

An XMLNamespaces object stores a list of pairs of namespaces and their prefixes. If there is an XML namespace with the given uri prefix in this list, then its corresponding URI will be overwritten by the new uri unless the uri represents the core sbml namespace. Calling programs could use one of the other XMLNamespaces methods, such as XMLNamespaces.hasPrefix() and XMLNamespaces.hasURI() to inquire whether a given prefix and/or URI is already present in this XMLNamespaces object. If the uri represents the sbml namespaces then it will not be overwritten, as this has potentially serious consequences. If it is necessary to replace the sbml namespace the namespace should be removed prior to adding the new namespace.

Parameters
uria string, the uri for the namespace
prefixa string, the prefix for the namespace
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
Documentation note:
The native C++ implementation of this method defines a default argument value. In the documentation generated for different libSBML language bindings, you may or may not see corresponding arguments in the method declarations. For example, in Java and C#, a default argument is handled by declaring two separate methods, with one of them having the argument and the other one lacking the argument. However, the libSBML documentation will be identical for both methods. Consequently, if you are reading this and do not see an argument even though one is described, please look for descriptions of other variants of this method near where this one appears in the documentation.
def libsbml.XMLNamespaces.clear (   self)

Python method signature(s):

clear(XMLNamespaces self)   int

Clears (deletes) all XML namespace declarations in this XMLNamespaces object.

Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
See Also
remove()
def libsbml.XMLNamespaces.clone (   self)

Representation of XML Namespaces.

This class of objects is defined by libSBML only and has no direct equivalent in terms of SBML components. This class is not prescribed by the SBML specifications, although it is used to implement features defined in SBML.

This class serves to organize functionality for tracking XML namespaces in a document or data stream. The namespace declarations are stored as a list of pairs of XML namespace URIs and prefix strings. These correspond to the parts of a namespace declaration on an XML element. For example, in the following XML fragment,

 <annotation>
 <mysim:nodecolors xmlns:mysim='urn:lsid:mysim.org'
      mysim:bgcolor='green' mysim:fgcolor='white'/>
 </annotation>

there is one namespace declaration. Its URI is urn:lsid:mysim.org and its prefix is mysim. This pair could be stored as one item in an XMLNamespaces list.

XMLNamespaces provides various methods for manipulating the list of prefix-URI pairs. Individual namespaces stored in a given XMLNamespace object instance can be retrieved based on their index using XMLNamespaces.getPrefix(), or by their characteristics such as their URI or position in the list. Python method signature(s):

clone(XMLNamespaces self)   XMLNamespaces

Creates and returns a deep copy of this XMLNamespaces list.

Returns
a (deep) copy of this XMLNamespaces list.
def libsbml.XMLNamespaces.containsUri (   self,
  args 
)

Python method signature(s):

containsUri(XMLNamespaces self, string uri)   bool

Tests whether the given uri is contained in this set of namespaces.

def libsbml.XMLNamespaces.getIndex (   self,
  args 
)

Python method signature(s):

getIndex(XMLNamespaces self, string uri)   int

Look up the index of an XML namespace declaration by URI.

An XMLNamespaces object stores a list of pairs of namespaces and their prefixes. If this XMLNamespaces object contains a pair with the given URI uri, this method returns its index in the list.

Parameters
uria string, the URI of the sought-after namespace.
Returns
the index of the given declaration, or -1 if not present.
def libsbml.XMLNamespaces.getIndexByPrefix (   self,
  args 
)

Python method signature(s):

getIndexByPrefix(XMLNamespaces self, string prefix)   int

Look up the index of an XML namespace declaration by prefix.

An XMLNamespaces object stores a list of pairs of namespaces and their prefixes. If this XMLNamespaces object contains a pair with the given prefix prefix, this method returns its index in the list.

Parameters
prefixa string, the prefix string of the sought-after namespace
Returns
the index of the given declaration, or -1 if not present.
def libsbml.XMLNamespaces.getLength (   self)

Python method signature(s):

getLength(XMLNamespaces self)   int

Returns the total number of URI-and-prefix pairs stored in this particular XMLNamespaces instance.

Returns
the number of namespaces in this list.
def libsbml.XMLNamespaces.getNumNamespaces (   self)

Python method signature(s):

getNumNamespaces(XMLNamespaces self)   int

Returns the total number of URI-and-prefix pairs stored in this particular XMLNamespaces instance.

Returns
the number of namespaces in this list.

This function is an alias for getLength introduced for consistency with other XML classes.

def libsbml.XMLNamespaces.getPrefix (   self,
  args 
)

Python method signature(s):

getPrefix(XMLNamespaces self, int index)   string
getPrefix(XMLNamespaces self, string uri)   string

This method has multiple variants that differ in the arguments they accept. Each is described separately below.


Method variant with the following signature:

getPrefix(int index)

Look up the prefix of an XML namespace declaration by its position.

An XMLNamespaces object stores a list of pairs of namespaces and their prefixes. This method returns the prefix of the nth element in that list (if it exists). Callers should use XMLAttributes.getLength() first to find out how many namespaces are stored in the list.

Parameters
indexan integer, position of the sought-after prefix
Returns
the prefix of an XML namespace declaration in this list (by position), or an empty string if the index is out of range
See Also
getLength()

Method variant with the following signature:

getPrefix(string uri)

Look up the prefix of an XML namespace declaration by its URI.

An XMLNamespaces object stores a list of pairs of namespaces and their prefixes. This method returns the prefix for a pair that has the given uri.

Parameters
uria string, the URI of the prefix being sought
Returns
the prefix of an XML namespace declaration given its URI, or an empty string if no such uri exists in this XMLNamespaces object
def libsbml.XMLNamespaces.getURI (   self,
  args 
)

Python method signature(s):

getURI(XMLNamespaces self, int index)   string
getURI(XMLNamespaces self, string prefix="")   string
getURI(XMLNamespaces self)   string

This method has multiple variants that differ in the arguments they accept. Each is described separately below.


Method variant with the following signature:

getURI(int index)

Look up the URI of an XML namespace declaration by its position.

An XMLNamespaces object stores a list of pairs of namespaces and their prefixes. This method returns the URI of the nth element in that list (if it exists). Callers should use XMLAttributes.getLength() first to find out how many namespaces are stored in the list.

Parameters
indexan integer, position of the required URI.
Returns
the URI of an XML namespace declaration in this list (by position), or an empty string if the index is out of range.
See Also
getLength()

Method variant with the following signature:

getURI(string prefix = '')

Look up the URI of an XML namespace declaration by its prefix.

An XMLNamespaces object stores a list of pairs of namespaces and their prefixes. This method returns the namespace URI for a pair that has the given prefix.

Parameters
prefixa string, the prefix of the required URI
Returns
the URI of an XML namespace declaration having the given prefix, or an empty string if no such prefix-and-URI pair exists in this XMLNamespaces object
Documentation note:
The native C++ implementation of this method defines a default argument value. In the documentation generated for different libSBML language bindings, you may or may not see corresponding arguments in the method declarations. For example, in Java and C#, a default argument is handled by declaring two separate methods, with one of them having the argument and the other one lacking the argument. However, the libSBML documentation will be identical for both methods. Consequently, if you are reading this and do not see an argument even though one is described, please look for descriptions of other variants of this method near where this one appears in the documentation.
See Also
getURI()
def libsbml.XMLNamespaces.hasNS (   self,
  args 
)

Python method signature(s):

hasNS(XMLNamespaces self, string uri, string prefix)   bool

Predicate returning True or False depending on whether an XML Namespace with the given URI and prefix pair is contained in this XMLNamespaces list.

Parameters
uria string, the URI for the namespace
prefixa string, the prefix for the namespace
Returns
True if an XML Namespace with the given uri/prefix pair is contained in this XMLNamespaces list, False otherwise.
def libsbml.XMLNamespaces.hasPrefix (   self,
  args 
)

Python method signature(s):

hasPrefix(XMLNamespaces self, string prefix)   bool

Predicate returning True or False depending on whether an XML Namespace with the given prefix is contained in this XMLNamespaces list.

Parameters
prefixa string, the prefix for the namespace
Returns
True if an XML Namespace with the given URI is contained in this XMLNamespaces list, False otherwise.
def libsbml.XMLNamespaces.hasURI (   self,
  args 
)

Python method signature(s):

hasURI(XMLNamespaces self, string uri)   bool

Predicate returning True or False depending on whether an XML Namespace with the given URI is contained in this XMLNamespaces list.

Parameters
uria string, the uri for the namespace
Returns
True if an XML Namespace with the given URI is contained in this XMLNamespaces list, False otherwise.
def libsbml.XMLNamespaces.isEmpty (   self)

Python method signature(s):

isEmpty(XMLNamespaces self)   bool

Predicate returning True or False depending on whether this XMLNamespaces list is empty.

Returns
True if this XMLNamespaces list is empty, False otherwise.
def libsbml.XMLNamespaces.remove (   self,
  args 
)

Python method signature(s):

remove(XMLNamespaces self, int index)   int
remove(XMLNamespaces self, string prefix)   int

This method has multiple variants that differ in the arguments they accept. Each is described separately below.


Method variant with the following signature:

remove(int index)

Removes an XML Namespace stored in the given position of this list.

Parameters
indexan integer, position of the namespace to remove.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
Method variant with the following signature:
remove(string prefix)

Removes an XML Namespace with the given prefix.

Parameters
prefixa string, prefix of the required namespace.
Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
See Also
remove()