diff --git Lib/test/test_xml_etree.py Lib/test/test_xml_etree.py index f1990d1..b85319f 100644 --- Lib/test/test_xml_etree.py +++ Lib/test/test_xml_etree.py @@ -1271,6 +1271,14 @@ XINCLUDE["C2.xml"] = """\ XINCLUDE["count.txt"] = "324387" +XINCLUDE["C2b.xml"] = """\ + + +

This document has been accessed + times.

+
+""" + XINCLUDE["C3.xml"] = """\ @@ -1346,6 +1354,16 @@ def xinclude(): 324387 times.

+ Textual inclusion after sibling element (based on modified XInclude C.2) + + >>> document = xinclude_loader("C2b.xml") + >>> ElementInclude.include(document, xinclude_loader) + >>> print(serialize(document)) # C2b + +

This document has been accessed + 324387 times.

+
+ Textual inclusion of XML example (XInclude C.3) >>> document = xinclude_loader("C3.xml") diff --git Lib/xml/etree/ElementInclude.py Lib/xml/etree/ElementInclude.py index dde0a41..84fd754 100644 --- Lib/xml/etree/ElementInclude.py +++ Lib/xml/etree/ElementInclude.py @@ -125,7 +125,7 @@ def include(elem, loader=None): ) if i: node = elem[i-1] - node.tail = (node.tail or "") + text + node.tail = (node.tail or "") + text + (e.tail or "") else: elem.text = (elem.text or "") + text + (e.tail or "") del elem[i]