if self.attributename: try: val = self.nodes[-1].get(self.attributename) n = self.nodes[-1] except: val = "" if self.attributename in ["valuelist"]: self.nodes[-1].set( self.attributename, (val + data.encode("utf-8")).replace("\n\n", "\n").replace("\n", ";").replace(";;", ";"), ) else: self.nodes[-1].set(self.attributename, val + data.encode("utf-8")) tree.registerNodeFunction("writexml", writexml) def parseNodeXML(s): return _NodeLoader(StringIO.StringIO(s)).root def readNodeXML(filename): try: return _NodeLoader(open(filename, "rb")).root except IOError: return None def writeNodeXML(node, filename): fi = open(filename, "wb")
def xml_char_data(self, data): if self.node_already_seen: return if self.attributename: try: val = self.nodes[-1].get(self.attributename) n = self.nodes[-1] except: val = "" if self.attributename in ["valuelist"]: self.nodes[-1].set(self.attributename, (val + data.encode("utf-8")).replace("\n\n", "\n").replace("\n", ";").replace(";;", ";")) else: self.nodes[-1].set(self.attributename, val + data.encode("utf-8")) tree.registerNodeFunction("writexml", writexml) def parseNodeXML(s): return _NodeLoader(StringIO.StringIO(s)).root def readNodeXML(filename): try: return _NodeLoader(open(filename, "rb")).root except IOError: return None def writeNodeXML(node, filename): fi = open(filename, "wb")
def register_node_functions(): import schema.schema as schema tree.registerNodeFunction("getMetaFields", schema.node_getMetaFields) tree.registerNodeFunction("getMetaField", schema.node_getMetaField) tree.registerNodeFunction("getSearchFields", schema.node_getSearchFields) tree.registerNodeFunction("getSortFields", schema.node_getSortFields) tree.registerNodeFunction("getMasks", schema.node_getMasks) tree.registerNodeFunction("getMask", schema.node_getMask) tree.registerNodeFunction("getDescription", schema.node_getDescription)