def _dict2xml_recurse(parent, dictitem): assert type(dictitem) is not type(list) if isinstance(dictitem, dict): for (tag, child) in dictitem.iteritems(): if isinstance(child, basestring): child = _xml_escape(child) if str(tag) == '_text': parent.text = str(child) elif type(child) is type(list): for listchild in child: elem = ElementTree.Element(tag) parent.append(elem) _dict2xml_recurse (elem, listchild) else: elem = ElementTree.Element(tag) parent.append(elem) _dict2xml_recurse (elem, child) else: parent.text = str(dictitem)
def xml_escape(string): if string is None: return return _xml_escape(string, _extra_entities)
def xml_escape(*a, **k): result = _xml_escape(*a, **k) result = result.replace('"', '"') return result
def xml_escape(str): return _xml_escape(str, entities={"'": "'", "\"": """})