class XElementParser: def __init__(self, moduleList, parser=None): if parser == None: self.parser = make_parser() else: self.parser = parser self.parser_error_handler = ErrorPrinter() self.parser.setErrorHandler(self.parser_error_handler) self.xth = XTreeHandler(IgnoreWhiteSpace='yes', RemoveWhiteSpace='yes', CreateElementMap='yes', RequireUserClasses='yes') for module in moduleList: if type(module) == types.ModuleType: self.xth.registerNamespace(module) self.parser.setFeature(handler.feature_namespaces, 1) self.parser.setFeature(handler.feature_namespace_prefixes, 1) self.parser.setContentHandler(self.xth) def process(self, document_uri): Ok = None try: self.parser_error_handler.reset() self.parser.parse(document_uri) if self.parser_error_handler.has_errors(): raise "validation failed" return self.xth.getDocument().getChild() except: return "Unknown exception: George needs to work on this."
def __init__(self, moduleList, parser=None): if parser == None: self.parser = make_parser() else: self.parser = parser self.parser_error_handler = ErrorPrinter() self.parser.setErrorHandler(self.parser_error_handler) self.xth = XTreeHandler(IgnoreWhiteSpace='yes', RemoveWhiteSpace='yes', CreateElementMap='yes', RequireUserClasses='yes') for module in moduleList: if type(module) == types.ModuleType: self.xth.registerNamespace(module) self.parser.setFeature(handler.feature_namespaces, 1) self.parser.setFeature(handler.feature_namespace_prefixes, 1) self.parser.setContentHandler(self.xth)