def start_element_handler(self, name, attributes): ExpatBuilderNS.start_element_handler(self, name, attributes) # use attribute format {namespace}localName attrList = [] for i in range(0, len(attributes), 2): attrName = attributes[i] attrNameSplit = string.split(attrName, " ") if len(attrNameSplit) > 1: attrName = (attrNameSplit[0], attrNameSplit[1]) attrList.extend([attrName, attributes[i + 1]]) internalMinidomElementWrapper = InternalMinidomElementWrapper(self.curNode, self.treeWrapper.getTree()) XmlIfBuilderExtensionDom.startElementHandler( self, internalMinidomElementWrapper, self.getParser().ErrorLineNumber, self.curNamespaces[:], attrList ) if self.curNode.parentNode.nodeType == Node.DOCUMENT_NODE: for namespace in self.curNamespaces: if namespace[0] != None: internalMinidomElementWrapper.xmlIfExtElementWrapper.attributeSequence.append( (XMLNS_NAMESPACE, namespace[0]) ) else: internalMinidomElementWrapper.xmlIfExtElementWrapper.attributeSequence.append("xmlns")
def start_element_handler(self, name, attributes): ExpatBuilderNS.start_element_handler(self, name, attributes) # use attribute format {namespace}localName attrList = [] for i in range(0, len(attributes), 2): attrName = attributes[i] attrNameSplit = string.split(attrName, " ") if len(attrNameSplit) > 1: attrName = (attrNameSplit[0], attrNameSplit[1]) attrList.extend([attrName, attributes[i + 1]]) internalMinidomElementWrapper = InternalMinidomElementWrapper( self.curNode, self.treeWrapper.getTree()) XmlIfBuilderExtensionDom.startElementHandler( self, internalMinidomElementWrapper, self.getParser().ErrorLineNumber, self.curNamespaces[:], attrList) if self.curNode.parentNode.nodeType == Node.DOCUMENT_NODE: for namespace in self.curNamespaces: if namespace[0] != None: internalMinidomElementWrapper.xmlIfExtElementWrapper.attributeSequence.append( (XMLNS_NAMESPACE, namespace[0])) else: internalMinidomElementWrapper.xmlIfExtElementWrapper.attributeSequence.append( "xmlns")
def __init__ (self, filePath, absUrl, xmlIf): ExpatBuilderNS.__init__(self) internalMinidomTreeWrapper = InternalMinidomTreeWrapper(self.document) self.treeWrapper = xmlIf.treeWrapperClass(self, internalMinidomTreeWrapper, xmlIf.useCaching) XmlIfBuilderExtensionDom.__init__(self, filePath, absUrl, self.treeWrapper, xmlIf.elementWrapperClass) # set EndNamespaceDeclHandler, currently not used by minidom self.getParser().EndNamespaceDeclHandler = self.end_namespace_decl_handler self.curNamespaces = []
def startElement(self, name, attribs): XmlDomGenerator.startElement(self, name, attribs) if not self.treeWrapper: self.treeWrapper = self.xmlIf.treeWrapperClass(self, InternalDomTreeWrapper(self._rootNode), self.xmlIf.useCaching) XmlIfBuilderExtensionDom.__init__(self, self.filePath, self.absUrl, self.treeWrapper, self.xmlIf.elementWrapperClass) curNode = self._nodeStack[-1] internal4DomElementWrapper = InternalDomElementWrapper(curNode, self.treeWrapper.getTree()) curNs = self._namespaces.items() try: curNs.remove( (None,None) ) except: pass XmlIfBuilderExtensionDom.startElementHandler (self, internal4DomElementWrapper, self.parser.getLineNumber(), curNs)
def end_element_handler(self, name): XmlIfBuilderExtensionDom.endElementHandler( self, self.curNode.xmlIfExtInternalWrapper, self.getParser().ErrorLineNumber) ExpatBuilderNS.end_element_handler(self, name)
def endElement(self, name): curNode = self._nodeStack[-1] XmlIfBuilderExtensionDom.endElementHandler (self, curNode.xmlIfExtInternalWrapper, self.parser.getLineNumber()) XmlDomGenerator.endElement(self, name)
def end_element_handler(self, name): XmlIfBuilderExtensionDom.endElementHandler (self, self.curNode.xmlIfExtInternalWrapper, self.getParser().ErrorLineNumber) ExpatBuilderNS.end_element_handler(self, name)
def endElement(self, name): curNode = self._nodeStack[-1] XmlIfBuilderExtensionDom.endElementHandler( self, curNode.xmlIfExtInternalWrapper, self.parser.getLineNumber()) XmlDomGenerator.endElement(self, name)