def _xmlprocParseFile(self, pathOrFile):
     proc = XMLProcessor()
     proc.app.handle_start_tag = self.startElementHandler
     proc.app.handle_end_tag = self.endElementHandler
     proc.app.handle_data = self._xmlprocDataHandler
     if isinstance(pathOrFile, (str, unicode)):
         f = open(pathOrFile)
         didOpen = 1
     else:
         didOpen = 0
         f = pathOrFile
     proc.parseStart()
     proc.read_from(f)
     proc.flush()
     proc.parseEnd()
     proc.deref()
     if didOpen:
         f.close()
     return self.getRoot()
 def _xmlprocParseFile(self, pathOrFile):
     proc = XMLProcessor()
     proc.app.handle_start_tag = self.startElementHandler
     proc.app.handle_end_tag = self.endElementHandler
     proc.app.handle_data = self._xmlprocDataHandler
     if isinstance(pathOrFile, (bytes, basestring)):
         with open(pathOrFile) as f:
             proc.parseStart()
             proc.read_from(f)
             proc.flush()
             proc.parseEnd()
             proc.deref()
     else:
         f = pathOrFile
         proc.parseStart()
         proc.read_from(f)
         proc.flush()
         proc.parseEnd()
         proc.deref()
     return self.getRoot()