X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=python%2Fxmltemplate.py;h=182b8e4a3712953d48a572d4183791ef4c3946ea;hb=c00c787ebcd86ec94285b708db96a20286e57ab0;hp=16225926876eef7dc95791a7c40401af6681b707;hpb=7d86bc42d79ffdf9a9bd601716c2f832a123a1ce;p=xml-template diff --git a/python/xmltemplate.py b/python/xmltemplate.py index 1622592..182b8e4 100644 --- a/python/xmltemplate.py +++ b/python/xmltemplate.py @@ -8,7 +8,7 @@ def process_file(filename, obj, clean = True): return doc def process(node, obj, clean = True): - if isinstance(obj, str): # overwrite + if isinstance(obj, basestring): # overwrite while not node.firstChild is None: node.removeChild(node.firstChild) doc = _get_document_element(node) @@ -35,7 +35,7 @@ def process(node, obj, clean = True): attrs_to_remove = [] if not attrs is None: for i in range(attrs.length): - attr = attrs.item(0) + attr = attrs.item(i) if attr.namespaceURI == "http://template.sesse.net/" and attr.localName == "id": id = attr.value if clean: @@ -63,7 +63,7 @@ def process(node, obj, clean = True): if not processed: process(child, obj, clean) - elif isinstance(obj, list): # repeat + elif hasattr(obj, '__iter__'): # repeat doc = _get_document_element(node) frag = doc.createElement("temporary-fragment") # ugh