Document reader that attempts to transform a structured XML document into a
nested group of document objects. This class creates documents whenever an
XML element is determined to have multiple complex children, and links them
to the parent document as objects of the keys. It uses the element tag names
for the document keys.
Extensible method which performs any special processing on a particular
element and its associated document. This method may be extended by
subclasses to handle particular XML formats or schemas. The default
implementation does nothing.
Read the data, creating DocData elements. This method reads through the
top-level elements, creating DocData objects for each one. It creates
sub-documents whenever it finds a complex xml element, and links it to
the parent document through the document tags. If a child element is
simply a wrapper around a text node, it adds a string tag (or a
collection of strings) to the appropriate tag