summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFred Drake <fdrake@acm.org>2001-10-26 20:09:49 (GMT)
committerFred Drake <fdrake@acm.org>2001-10-26 20:09:49 (GMT)
commite21e2bb1219cbac16bfec768f018c103c5688321 (patch)
treeccea57957772bf154262e1e7a3f25d8451773f7f
parentb83769cb828e97796fecb0336f05b21ae98eacc7 (diff)
downloadcpython-e21e2bb1219cbac16bfec768f018c103c5688321.zip
cpython-e21e2bb1219cbac16bfec768f018c103c5688321.tar.gz
cpython-e21e2bb1219cbac16bfec768f018c103c5688321.tar.bz2
Fix up a number of small problems with the DOM documentation.
There's still a lot to do, but it's better now.
-rw-r--r--Doc/lib/xmldom.tex22
-rw-r--r--Doc/lib/xmldomminidom.tex33
2 files changed, 35 insertions, 20 deletions
diff --git a/Doc/lib/xmldom.tex b/Doc/lib/xmldom.tex
index eca4c6c..b97d972 100644
--- a/Doc/lib/xmldom.tex
+++ b/Doc/lib/xmldom.tex
@@ -114,8 +114,15 @@ raise an \exception{ImportError}. The features list must be a sequence of
% Should the Node documentation go here?
-In addition, \module{xml.dom} contains the \class{Node}, and the DOM
-exceptions.
+In addition, \module{xml.dom} contains a base \class{Node} class and
+the DOM exception classes. The \class{Node} class provided by this
+module does not implement any of the methods or attributes defined by
+the DOM specification; concrete DOM implementations must provide
+those. The \class{Node} class provided as part of this module does
+provide the constants used for the \member{nodeType} attribute on
+concrete \class{Node} objects; they are located within the class
+rather than at the module level to conform with the DOM
+specifications.
\subsection{Objects in the DOM \label{dom-objects}}
@@ -358,7 +365,10 @@ Information about the notations and entities declared by a document
(including the external subset if the parser uses it and can provide
the information) is available from a \class{DocumentType} object. The
\class{DocumentType} for a document is available from the
-\class{Document} object's \member{doctype} attribute.
+\class{Document} object's \member{doctype} attribute; if there is no
+\code{DOCTYPE} declaration for the document, the document's
+\member{doctype} attribute will be set to \code{None} instead of an
+instance of this interface.
\class{DocumentType} is a specialization of \class{Node}, and adds the
following attributes:
@@ -381,8 +391,7 @@ following attributes:
\begin{memberdesc}[DocumentType]{name}
The name of the root element as given in the \code{DOCTYPE}
- declaration, if present. If the was no \code{DOCTYPE} declaration,
- this will be \code{None}.
+ declaration, if present.
\end{memberdesc}
\begin{memberdesc}[DocumentType]{entities}
@@ -589,7 +598,8 @@ DOM. Each item is an attribute node. Get its value with the
There are also experimental methods that give this class more mapping
behavior. You can use them or you can use the standardized
-\method{getAttribute*()}-family methods on the \class{Element} objects.
+\method{getAttribute*()} family of methods on the \class{Element}
+objects.
\subsubsection{Comment Objects \label{dom-comment-objects}}
diff --git a/Doc/lib/xmldomminidom.tex b/Doc/lib/xmldomminidom.tex
index 884e0c5..d743c7d 100644
--- a/Doc/lib/xmldomminidom.tex
+++ b/Doc/lib/xmldomminidom.tex
@@ -180,8 +180,10 @@ following mapping rules apply:
\item The type \code{DOMString} maps to Python strings.
\refmodule{xml.dom.minidom} supports either byte or Unicode
- strings, but will normally produce Unicode strings. Attributes
- of type \code{DOMString} may also be \code{None}.
+ strings, but will normally produce Unicode strings. Values
+ of type \code{DOMString} may also be \code{None} where allowed
+ to have the IDL \code{null} value by the DOM specification from
+ the W3C.
\item \keyword{const} declarations map to variables in their
respective scope
@@ -193,9 +195,12 @@ following mapping rules apply:
\refmodule{xml.dom.minidom} uses standard Python exceptions such
as \exception{TypeError} and \exception{AttributeError}.
-\item \class{NodeList} objects are implemented as Python's built-in
- list type, so don't support the official API, but are much more
- ``Pythonic.''
+\item \class{NodeList} objects are implemented using Python's built-in
+ list type. Starting with Python 2.2, these objects provide the
+ interface defined in the DOM specification, but with earlier
+ versions of Python they do not support the official API. They
+ are, however, much more ``Pythonic'' than the interface defined
+ in the W3C recommendations.
\end{itemize}
@@ -203,23 +208,23 @@ The following interfaces have no implementation in
\refmodule{xml.dom.minidom}:
\begin{itemize}
-\item DOMTimeStamp
+\item \class{DOMTimeStamp}
-\item DocumentType (added in Python 2.1)
+\item \class{DocumentType} (added in Python 2.1)
-\item DOMImplementation (added in Python 2.1)
+\item \class{DOMImplementation} (added in Python 2.1)
-\item CharacterData
+\item \class{CharacterData}
-\item CDATASection
+\item \class{CDATASection}
-\item Notation
+\item \class{Notation}
-\item Entity
+\item \class{Entity}
-\item EntityReference
+\item \class{EntityReference}
-\item DocumentFragment
+\item \class{DocumentFragment}
\end{itemize}
Most of these reflect information in the XML document that is not of