]> granicus.if.org Git - python/commitdiff
New method getnamespace.
authorSjoerd Mullender <sjoerd@acm.org>
Thu, 31 Aug 2000 10:27:00 +0000 (10:27 +0000)
committerSjoerd Mullender <sjoerd@acm.org>
Thu, 31 Aug 2000 10:27:00 +0000 (10:27 +0000)
Since the application never gets to see the namespace abbreviation
used in the XML document, but some applications may need to know them,
we provide this method.

Doc/lib/libxmllib.tex
Lib/xmllib.py

index 62fb26b7465bcb178edd8b192baccf69bdd067f0..10d76ec36c9aea94d62eff74c4e4961f6fa6fa0e 100644 (file)
@@ -92,6 +92,11 @@ Translate all entity and character references in \var{data} and
 return the translated string.
 \end{methoddesc}
 
+\begin{methoddesc}{getnamespace}{}
+Return a mapping of namespace abbreviations to namespace URIs that are
+currently in effect.
+\end{methoddesc}
+
 \begin{methoddesc}{handle_xml}{encoding, standalone}
 This method is called when the \samp{<?xml ...?>} tag is processed.
 The arguments are the values of the encoding and standalone attributes 
index 06b599fa7654ec425536fdd4971c7713c14733f1..b8422cb4508c175d22f38059d2adf281c92805f2 100644 (file)
@@ -222,6 +222,13 @@ class XMLParser:
             else:
                 i = s + len(str)
 
+    # Interface - return a dictionary of all namespaces currently valid
+    def getnamespace(self):
+        nsdict = {}
+        for t, d, nst in self.stack:
+            nsdict.update(d)
+        return nsdict
+
     # Internal -- handle data as far as reasonable.  May leave state
     # and data to be processed by a subsequent call.  If 'end' is
     # true, force handling all data as if followed by EOF marker.