Example #1
0
class XmlDocument(object):
    def __init__( self ):
        self._domObject = PyXmlDocument()
        self._filename  = ''
        self._elementClasses = {}
    
    def clear( self ):
        """
            \remarks    clears the information for this document
            
            \return     <bool> success
        """
        # make sure we have a valid object
        if ( self._domObject ):
            return False
        
        children = list( self._domObject.childNodes )
        for child in children:
            self._domObject.removeChild( child )
        
        return True
    
    def elementClass( self, objectName = '' ):
        return self._elementClasses.get(objectName)
    
    def domObject( self ):
        """
            \remarks    returns the DOM object associated with this
                        document
            
            \return     <PyXmlDocument> || None
        """
        return self._domObject
    
    def fromString( self, xml ):
        """
            \remarks    parses the inputed xml string into an XmlElement hierarchy
            
            \param      xml     <str>
            
            \return     <bool> success
        """
        # convert the xml to a valid string
        xml = unicode( xml ).encode('utf-8')
        if ( not xml ):
            return False
        
        try:
            domObject = xml.dom.minidom.parseString( xml )
        except Exception, e:
            return False
        
        # make sure we have a valid object
        if ( not domObject ):
            return False
        
        self._domObject = domObject
        self._filename  = ''
        return True
class XmlDocument(object):
    def __init__(self):
        self._domObject = PyXmlDocument()
        self._filename = ''
        self._elementClasses = {}

    def clear(self):
        """
            \remarks    clears the information for this document
            
            \return     <bool> success
        """
        # make sure we have a valid object
        if (self._domObject):
            return False

        children = list(self._domObject.childNodes)
        for child in children:
            self._domObject.removeChild(child)

        return True

    def elementClass(self, objectName=''):
        return self._elementClasses.get(objectName)

    def domObject(self):
        """
            \remarks    returns the DOM object associated with this
                        document
            
            \return     <PyXmlDocument> || None
        """
        return self._domObject

    def fromString(self, xml):
        """
            \remarks    parses the inputed xml string into an XmlElement hierarchy
            
            \param      xml     <str>
            
            \return     <bool> success
        """
        # convert the xml to a valid string
        xml = unicode(xml).encode('utf-8')
        if (not xml):
            return False

        try:
            domObject = xml.dom.minidom.parseString(xml)
        except Exception, e:
            return False

        # make sure we have a valid object
        if (not domObject):
            return False

        self._domObject = domObject
        self._filename = ''
        return True