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.
Output Methods of a Node Object ...
Get Python in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.