August 2018
Intermediate to advanced
366 pages
10h 14m
English
The actual document generation is performed by xml.etree.ElementTree, but if we had to generate the same document with plain xml.etree.ElementTree, it would have resulted in a bunch of el.append calls:
root = ET.Element('html')
head = ET.Element('head')
root.append(head)
title = ET.Element('title')
title.text = 'This is the title'
head.append(title)
This makes it really hard to have any understanding of where we are. In this example, we were just building a structure, <html><head><title>This is the title</title></head></html>, but it was already pretty hard to follow that title was inside head and so on. For a more complex document, it would become impossible.
So while our XMLDocument preserves the root of the document tree ...