Changing and Generating XML
Just
like for HTML and other kinds of structured text, the simplest way to
output an XML document is often to prepare and write it using
Python’s normal string and file operations, covered
in Chapter 9 and Chapter 10. Templating, covered in Chapter 22, is also often the best approach. Subclassing
class XMLGenerator, covered earlier in this
chapter, is a good way to generate an XML document that is like an
input XML document, except for a few changes.
The xml.dom.minidom module offers yet another
possibility, because its classes support methods to generate, insert,
remove, and alter nodes in a DOM tree representing the document. You
can create a DOM tree by parsing and then alter it, or you can create
an empty DOM tree and populate it, and then output the resulting XML
document with methods toxml,
toprettyxml, or writexml of the
Document instance. You can also output a subtree
of the DOM tree by calling these methods on the
Node that is the subtree’s root.
Factory Methods of a Document Object
The
Document class supplies factory methods to create
new instances of subclasses of Node. The most
frequently used factory methods of a Document
instance d are as follows.
Mutating Methods of an Element Object
An
instance e of class
Element supplies the following methods to remove
and add attributes.
Mutating Methods of a Node Object
An instance n
of class Node supplies the following methods to
remove, add, and replace children.