mirror of
				https://github.com/bunny-lab-io/Borealis.git
				synced 2025-10-27 07:21:58 -06:00 
			
		
		
		
	
		
			
				
	
	
		
			1334 lines
		
	
	
		
			115 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			1334 lines
		
	
	
		
			115 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE html>
 | ||
| 
 | ||
| <html lang="en" data-content_root="../">
 | ||
|   <head>
 | ||
|     <meta charset="utf-8" />
 | ||
|     <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
 | ||
| <meta property="og:title" content="xml.parsers.expat — Fast XML parsing using Expat" />
 | ||
| <meta property="og:type" content="website" />
 | ||
| <meta property="og:url" content="https://docs.python.org/3/library/pyexpat.html" />
 | ||
| <meta property="og:site_name" content="Python documentation" />
 | ||
| <meta property="og:description" content="The xml.parsers.expat module is a Python interface to the Expat non-validating XML parser. The module provides a single extension type, xmlparser, that represents the current state of an XML parser..." />
 | ||
| <meta property="og:image" content="https://docs.python.org/3/_static/og-image.png" />
 | ||
| <meta property="og:image:alt" content="Python documentation" />
 | ||
| <meta name="description" content="The xml.parsers.expat module is a Python interface to the Expat non-validating XML parser. The module provides a single extension type, xmlparser, that represents the current state of an XML parser..." />
 | ||
| <meta property="og:image:width" content="200">
 | ||
| <meta property="og:image:height" content="200">
 | ||
| <meta name="theme-color" content="#3776ab">
 | ||
| 
 | ||
|     <title>xml.parsers.expat — Fast XML parsing using Expat — Python 3.13.3 documentation</title><meta name="viewport" content="width=device-width, initial-scale=1.0">
 | ||
|     
 | ||
|     <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=b86133f3" />
 | ||
|     <link rel="stylesheet" type="text/css" href="../_static/pydoctheme.css?v=23252803" />
 | ||
|     <link id="pygments_dark_css" media="(prefers-color-scheme: dark)" rel="stylesheet" type="text/css" href="../_static/pygments_dark.css?v=5349f25f" />
 | ||
|     
 | ||
|     <script src="../_static/documentation_options.js?v=5d57ca2d"></script>
 | ||
|     <script src="../_static/doctools.js?v=9bcbadda"></script>
 | ||
|     <script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
 | ||
|     
 | ||
|     <script src="../_static/sidebar.js"></script>
 | ||
|     
 | ||
|     <link rel="search" type="application/opensearchdescription+xml"
 | ||
|           title="Search within Python 3.13.3 documentation"
 | ||
|           href="../_static/opensearch.xml"/>
 | ||
|     <link rel="author" title="About these documents" href="../about.html" />
 | ||
|     <link rel="index" title="Index" href="../genindex.html" />
 | ||
|     <link rel="search" title="Search" href="../search.html" />
 | ||
|     <link rel="copyright" title="Copyright" href="../copyright.html" />
 | ||
|     <link rel="next" title="Internet Protocols and Support" href="internet.html" />
 | ||
|     <link rel="prev" title="xml.sax.xmlreader — Interface for XML parsers" href="xml.sax.reader.html" />
 | ||
|     
 | ||
|     <link rel="canonical" href="https://docs.python.org/3/library/pyexpat.html">
 | ||
|     
 | ||
|       
 | ||
|     
 | ||
| 
 | ||
|     
 | ||
|     <style>
 | ||
|       @media only screen {
 | ||
|         table.full-width-table {
 | ||
|             width: 100%;
 | ||
|         }
 | ||
|       }
 | ||
|     </style>
 | ||
| <link rel="stylesheet" href="../_static/pydoctheme_dark.css" media="(prefers-color-scheme: dark)" id="pydoctheme_dark_css">
 | ||
|     <link rel="shortcut icon" type="image/png" href="../_static/py.svg" />
 | ||
|             <script type="text/javascript" src="../_static/copybutton.js"></script>
 | ||
|             <script type="text/javascript" src="../_static/menu.js"></script>
 | ||
|             <script type="text/javascript" src="../_static/search-focus.js"></script>
 | ||
|             <script type="text/javascript" src="../_static/themetoggle.js"></script> 
 | ||
|             <script type="text/javascript" src="../_static/rtd_switcher.js"></script>
 | ||
|             <meta name="readthedocs-addons-api-version" content="1">
 | ||
| 
 | ||
|   </head>
 | ||
| <body>
 | ||
| <div class="mobile-nav">
 | ||
|     <input type="checkbox" id="menuToggler" class="toggler__input" aria-controls="navigation"
 | ||
|            aria-pressed="false" aria-expanded="false" role="button" aria-label="Menu" />
 | ||
|     <nav class="nav-content" role="navigation">
 | ||
|         <label for="menuToggler" class="toggler__label">
 | ||
|             <span></span>
 | ||
|         </label>
 | ||
|         <span class="nav-items-wrapper">
 | ||
|             <a href="https://www.python.org/" class="nav-logo">
 | ||
|                 <img src="../_static/py.svg" alt="Python logo"/>
 | ||
|             </a>
 | ||
|             <span class="version_switcher_placeholder"></span>
 | ||
|             <form role="search" class="search" action="../search.html" method="get">
 | ||
|                 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" class="search-icon">
 | ||
|                     <path fill-rule="nonzero" fill="currentColor" d="M15.5 14h-.79l-.28-.27a6.5 6.5 0 001.48-5.34c-.47-2.78-2.79-5-5.59-5.34a6.505 6.505 0 00-7.27 7.27c.34 2.8 2.56 5.12 5.34 5.59a6.5 6.5 0 005.34-1.48l.27.28v.79l4.25 4.25c.41.41 1.08.41 1.49 0 .41-.41.41-1.08 0-1.49L15.5 14zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
 | ||
|                 </svg>
 | ||
|                 <input placeholder="Quick search" aria-label="Quick search" type="search" name="q" />
 | ||
|                 <input type="submit" value="Go"/>
 | ||
|             </form>
 | ||
|         </span>
 | ||
|     </nav>
 | ||
|     <div class="menu-wrapper">
 | ||
|         <nav class="menu" role="navigation" aria-label="main navigation">
 | ||
|             <div class="language_switcher_placeholder"></div>
 | ||
|             
 | ||
| <label class="theme-selector-label">
 | ||
|     Theme
 | ||
|     <select class="theme-selector" oninput="activateTheme(this.value)">
 | ||
|         <option value="auto" selected>Auto</option>
 | ||
|         <option value="light">Light</option>
 | ||
|         <option value="dark">Dark</option>
 | ||
|     </select>
 | ||
| </label>
 | ||
|   <div>
 | ||
|     <h3><a href="../contents.html">Table of Contents</a></h3>
 | ||
|     <ul>
 | ||
| <li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.parsers.expat</span></code> — Fast XML parsing using Expat</a><ul>
 | ||
| <li><a class="reference internal" href="#xmlparser-objects">XMLParser Objects</a></li>
 | ||
| <li><a class="reference internal" href="#expaterror-exceptions">ExpatError Exceptions</a></li>
 | ||
| <li><a class="reference internal" href="#example">Example</a></li>
 | ||
| <li><a class="reference internal" href="#module-xml.parsers.expat.model">Content Model Descriptions</a></li>
 | ||
| <li><a class="reference internal" href="#module-xml.parsers.expat.errors">Expat error constants</a></li>
 | ||
| </ul>
 | ||
| </li>
 | ||
| </ul>
 | ||
| 
 | ||
|   </div>
 | ||
|   <div>
 | ||
|     <h4>Previous topic</h4>
 | ||
|     <p class="topless"><a href="xml.sax.reader.html"
 | ||
|                           title="previous chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.sax.xmlreader</span></code> — Interface for XML parsers</a></p>
 | ||
|   </div>
 | ||
|   <div>
 | ||
|     <h4>Next topic</h4>
 | ||
|     <p class="topless"><a href="internet.html"
 | ||
|                           title="next chapter">Internet Protocols and Support</a></p>
 | ||
|   </div>
 | ||
|   <div role="note" aria-label="source link">
 | ||
|     <h3>This Page</h3>
 | ||
|     <ul class="this-page-menu">
 | ||
|       <li><a href="../bugs.html">Report a Bug</a></li>
 | ||
|       <li>
 | ||
|         <a href="https://github.com/python/cpython/blob/main/Doc/library/pyexpat.rst"
 | ||
|             rel="nofollow">Show Source
 | ||
|         </a>
 | ||
|       </li>
 | ||
|     </ul>
 | ||
|   </div>
 | ||
|         </nav>
 | ||
|     </div>
 | ||
| </div>
 | ||
| 
 | ||
|   
 | ||
|     <div class="related" role="navigation" aria-label="Related">
 | ||
|       <h3>Navigation</h3>
 | ||
|       <ul>
 | ||
|         <li class="right" style="margin-right: 10px">
 | ||
|           <a href="../genindex.html" title="General Index"
 | ||
|              accesskey="I">index</a></li>
 | ||
|         <li class="right" >
 | ||
|           <a href="../py-modindex.html" title="Python Module Index"
 | ||
|              >modules</a> |</li>
 | ||
|         <li class="right" >
 | ||
|           <a href="internet.html" title="Internet Protocols and Support"
 | ||
|              accesskey="N">next</a> |</li>
 | ||
|         <li class="right" >
 | ||
|           <a href="xml.sax.reader.html" title="xml.sax.xmlreader — Interface for XML parsers"
 | ||
|              accesskey="P">previous</a> |</li>
 | ||
| 
 | ||
|           <li><img src="../_static/py.svg" alt="Python logo" style="vertical-align: middle; margin-top: -1px"/></li>
 | ||
|           <li><a href="https://www.python.org/">Python</a> »</li>
 | ||
|           <li class="switchers">
 | ||
|             <div class="language_switcher_placeholder"></div>
 | ||
|             <div class="version_switcher_placeholder"></div>
 | ||
|           </li>
 | ||
|           <li>
 | ||
|               
 | ||
|           </li>
 | ||
|     <li id="cpython-language-and-version">
 | ||
|       <a href="../index.html">3.13.3 Documentation</a> »
 | ||
|     </li>
 | ||
| 
 | ||
|           <li class="nav-item nav-item-1"><a href="index.html" >The Python Standard Library</a> »</li>
 | ||
|           <li class="nav-item nav-item-2"><a href="markup.html" accesskey="U">Structured Markup Processing Tools</a> »</li>
 | ||
|         <li class="nav-item nav-item-this"><a href=""><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.parsers.expat</span></code> — Fast XML parsing using Expat</a></li>
 | ||
|                 <li class="right">
 | ||
|                     
 | ||
| 
 | ||
|     <div class="inline-search" role="search">
 | ||
|         <form class="inline-search" action="../search.html" method="get">
 | ||
|           <input placeholder="Quick search" aria-label="Quick search" type="search" name="q" id="search-box" />
 | ||
|           <input type="submit" value="Go" />
 | ||
|         </form>
 | ||
|     </div>
 | ||
|                      |
 | ||
|                 </li>
 | ||
|             <li class="right">
 | ||
| <label class="theme-selector-label">
 | ||
|     Theme
 | ||
|     <select class="theme-selector" oninput="activateTheme(this.value)">
 | ||
|         <option value="auto" selected>Auto</option>
 | ||
|         <option value="light">Light</option>
 | ||
|         <option value="dark">Dark</option>
 | ||
|     </select>
 | ||
| </label> |</li>
 | ||
|             
 | ||
|       </ul>
 | ||
|     </div>    
 | ||
| 
 | ||
|     <div class="document">
 | ||
|       <div class="documentwrapper">
 | ||
|         <div class="bodywrapper">
 | ||
|           <div class="body" role="main">
 | ||
|             
 | ||
|   <section id="module-xml.parsers.expat">
 | ||
| <span id="xml-parsers-expat-fast-xml-parsing-using-expat"></span><h1><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.parsers.expat</span></code> — Fast XML parsing using Expat<a class="headerlink" href="#module-xml.parsers.expat" title="Link to this heading">¶</a></h1>
 | ||
| <hr class="docutils" />
 | ||
| <div class="admonition warning">
 | ||
| <p class="admonition-title">Warning</p>
 | ||
| <p>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">pyexpat</span></code> module is not secure against maliciously
 | ||
| constructed data.  If you need to parse untrusted or unauthenticated data see
 | ||
| <a class="reference internal" href="xml.html#xml-vulnerabilities"><span class="std std-ref">XML vulnerabilities</span></a>.</p>
 | ||
| </div>
 | ||
| <p id="index-0">The <a class="reference internal" href="#module-xml.parsers.expat" title="xml.parsers.expat: An interface to the Expat non-validating XML parser."><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.parsers.expat</span></code></a> module is a Python interface to the Expat
 | ||
| non-validating XML parser. The module provides a single extension type,
 | ||
| <code class="xref py py-class docutils literal notranslate"><span class="pre">xmlparser</span></code>, that represents the current state of an XML parser.  After
 | ||
| an <code class="xref py py-class docutils literal notranslate"><span class="pre">xmlparser</span></code> object has been created, various attributes of the object
 | ||
| can be set to handler functions.  When an XML document is then fed to the
 | ||
| parser, the handler functions are called for the character data and markup in
 | ||
| the XML document.</p>
 | ||
| <p id="index-1">This module uses the <code class="xref py py-mod docutils literal notranslate"><span class="pre">pyexpat</span></code> module to provide access to the Expat
 | ||
| parser.  Direct use of the <code class="xref py py-mod docutils literal notranslate"><span class="pre">pyexpat</span></code> module is deprecated.</p>
 | ||
| <p>This module provides one exception and one type object:</p>
 | ||
| <dl class="py exception">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.ExpatError">
 | ||
| <em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.</span></span><span class="sig-name descname"><span class="pre">ExpatError</span></span><a class="headerlink" href="#xml.parsers.expat.ExpatError" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The exception raised when Expat reports an error.  See section
 | ||
| <a class="reference internal" href="#expaterror-objects"><span class="std std-ref">ExpatError Exceptions</span></a> for more information on interpreting Expat errors.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py exception">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.error">
 | ||
| <em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.</span></span><span class="sig-name descname"><span class="pre">error</span></span><a class="headerlink" href="#xml.parsers.expat.error" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Alias for <a class="reference internal" href="#xml.parsers.expat.ExpatError" title="xml.parsers.expat.ExpatError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">ExpatError</span></code></a>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.XMLParserType">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.</span></span><span class="sig-name descname"><span class="pre">XMLParserType</span></span><a class="headerlink" href="#xml.parsers.expat.XMLParserType" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The type of the return values from the <a class="reference internal" href="#xml.parsers.expat.ParserCreate" title="xml.parsers.expat.ParserCreate"><code class="xref py py-func docutils literal notranslate"><span class="pre">ParserCreate()</span></code></a> function.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <p>The <a class="reference internal" href="#module-xml.parsers.expat" title="xml.parsers.expat: An interface to the Expat non-validating XML parser."><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.parsers.expat</span></code></a> module contains two functions:</p>
 | ||
| <dl class="py function">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.ErrorString">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.</span></span><span class="sig-name descname"><span class="pre">ErrorString</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">errno</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.ErrorString" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Returns an explanatory string for a given error number <em>errno</em>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py function">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.ParserCreate">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.</span></span><span class="sig-name descname"><span class="pre">ParserCreate</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">encoding</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">namespace_separator</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.ParserCreate" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Creates and returns a new <code class="xref py py-class docutils literal notranslate"><span class="pre">xmlparser</span></code> object.   <em>encoding</em>, if specified,
 | ||
| must be a string naming the encoding  used by the XML data.  Expat doesn’t
 | ||
| support as many encodings as Python does, and its repertoire of encodings can’t
 | ||
| be extended; it supports UTF-8, UTF-16, ISO-8859-1 (Latin1), and ASCII.  If
 | ||
| <em>encoding</em> <a class="footnote-reference brackets" href="#id3" id="id1" role="doc-noteref"><span class="fn-bracket">[</span>1<span class="fn-bracket">]</span></a> is given it will override the implicit or explicit encoding of the
 | ||
| document.</p>
 | ||
| <p>Expat can optionally do XML namespace processing for you, enabled by providing a
 | ||
| value for <em>namespace_separator</em>.  The value must be a one-character string; a
 | ||
| <a class="reference internal" href="exceptions.html#ValueError" title="ValueError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">ValueError</span></code></a> will be raised if the string has an illegal length (<code class="docutils literal notranslate"><span class="pre">None</span></code>
 | ||
| is considered the same as omission).  When namespace processing is enabled,
 | ||
| element type names and attribute names that belong to a namespace will be
 | ||
| expanded.  The element name passed to the element handlers
 | ||
| <code class="xref py py-attr docutils literal notranslate"><span class="pre">StartElementHandler</span></code> and <code class="xref py py-attr docutils literal notranslate"><span class="pre">EndElementHandler</span></code> will be the
 | ||
| concatenation of the namespace URI, the namespace separator character, and the
 | ||
| local part of the name.  If the namespace separator is a zero byte (<code class="docutils literal notranslate"><span class="pre">chr(0)</span></code>)
 | ||
| then the namespace URI and the local part will be concatenated without any
 | ||
| separator.</p>
 | ||
| <p>For example, if <em>namespace_separator</em> is set to a space character (<code class="docutils literal notranslate"><span class="pre">'</span> <span class="pre">'</span></code>) and
 | ||
| the following document is parsed:</p>
 | ||
| <div class="highlight-xml notranslate"><div class="highlight"><pre><span></span><span class="cp"><?xml version="1.0"?></span>
 | ||
| <span class="nt"><root</span><span class="w"> </span><span class="na">xmlns    =</span><span class="w"> </span><span class="s">"http://default-namespace.org/"</span>
 | ||
| <span class="w">      </span><span class="na">xmlns:py =</span><span class="w"> </span><span class="s">"http://www.python.org/ns/"</span><span class="nt">></span>
 | ||
| <span class="w">  </span><span class="nt"><py:elem1</span><span class="w"> </span><span class="nt">/></span>
 | ||
| <span class="w">  </span><span class="nt"><elem2</span><span class="w"> </span><span class="na">xmlns=</span><span class="s">""</span><span class="w"> </span><span class="nt">/></span>
 | ||
| <span class="nt"></root></span>
 | ||
| </pre></div>
 | ||
| </div>
 | ||
| <p><code class="xref py py-attr docutils literal notranslate"><span class="pre">StartElementHandler</span></code> will receive the following strings for each
 | ||
| element:</p>
 | ||
| <div class="highlight-python3 notranslate"><div class="highlight"><pre><span></span><span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">default</span><span class="o">-</span><span class="n">namespace</span><span class="o">.</span><span class="n">org</span><span class="o">/</span> <span class="n">root</span>
 | ||
| <span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">www</span><span class="o">.</span><span class="n">python</span><span class="o">.</span><span class="n">org</span><span class="o">/</span><span class="n">ns</span><span class="o">/</span> <span class="n">elem1</span>
 | ||
| <span class="n">elem2</span>
 | ||
| </pre></div>
 | ||
| </div>
 | ||
| <p>Due to limitations in the <code class="docutils literal notranslate"><span class="pre">Expat</span></code> library used by <code class="xref py py-mod docutils literal notranslate"><span class="pre">pyexpat</span></code>,
 | ||
| the <code class="xref py py-class docutils literal notranslate"><span class="pre">xmlparser</span></code> instance returned can only be used to parse a single
 | ||
| XML document.  Call <code class="docutils literal notranslate"><span class="pre">ParserCreate</span></code> for each document to provide unique
 | ||
| parser instances.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <div class="admonition seealso">
 | ||
| <p class="admonition-title">See also</p>
 | ||
| <dl class="simple">
 | ||
| <dt><a class="reference external" href="http://www.libexpat.org/">The Expat XML Parser</a></dt><dd><p>Home page of the Expat project.</p>
 | ||
| </dd>
 | ||
| </dl>
 | ||
| </div>
 | ||
| <section id="xmlparser-objects">
 | ||
| <span id="id2"></span><h2>XMLParser Objects<a class="headerlink" href="#xmlparser-objects" title="Link to this heading">¶</a></h2>
 | ||
| <p><code class="xref py py-class docutils literal notranslate"><span class="pre">xmlparser</span></code> objects have the following methods:</p>
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.Parse">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">Parse</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span></em><span class="optional">[</span>, <em class="sig-param"><span class="n"><span class="pre">isfinal</span></span></em><span class="optional">]</span><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.Parse" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Parses the contents of the string <em>data</em>, calling the appropriate handler
 | ||
| functions to process the parsed data.  <em>isfinal</em> must be true on the final call
 | ||
| to this method; it allows the parsing of a single file in fragments,
 | ||
| not the submission of multiple files.
 | ||
| <em>data</em> can be the empty string at any time.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.ParseFile">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">ParseFile</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">file</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.ParseFile" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Parse XML data reading from the object <em>file</em>.  <em>file</em> only needs to provide
 | ||
| the <code class="docutils literal notranslate"><span class="pre">read(nbytes)</span></code> method, returning the empty string when there’s no more
 | ||
| data.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.SetBase">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">SetBase</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">base</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.SetBase" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Sets the base to be used for resolving relative URIs in system identifiers in
 | ||
| declarations.  Resolving relative identifiers is left to the application: this
 | ||
| value will be passed through as the <em>base</em> argument to the
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.ExternalEntityRefHandler" title="xml.parsers.expat.xmlparser.ExternalEntityRefHandler"><code class="xref py py-func docutils literal notranslate"><span class="pre">ExternalEntityRefHandler()</span></code></a>, <a class="reference internal" href="#xml.parsers.expat.xmlparser.NotationDeclHandler" title="xml.parsers.expat.xmlparser.NotationDeclHandler"><code class="xref py py-func docutils literal notranslate"><span class="pre">NotationDeclHandler()</span></code></a>, and
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.UnparsedEntityDeclHandler" title="xml.parsers.expat.xmlparser.UnparsedEntityDeclHandler"><code class="xref py py-func docutils literal notranslate"><span class="pre">UnparsedEntityDeclHandler()</span></code></a> functions.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.GetBase">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">GetBase</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.GetBase" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Returns a string containing the base set by a previous call to <a class="reference internal" href="#xml.parsers.expat.xmlparser.SetBase" title="xml.parsers.expat.xmlparser.SetBase"><code class="xref py py-meth docutils literal notranslate"><span class="pre">SetBase()</span></code></a>,
 | ||
| or <code class="docutils literal notranslate"><span class="pre">None</span></code> if  <a class="reference internal" href="#xml.parsers.expat.xmlparser.SetBase" title="xml.parsers.expat.xmlparser.SetBase"><code class="xref py py-meth docutils literal notranslate"><span class="pre">SetBase()</span></code></a> hasn’t been called.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.GetInputContext">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">GetInputContext</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.GetInputContext" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Returns the input data that generated the current event as a string. The data is
 | ||
| in the encoding of the entity which contains the text. When called while an
 | ||
| event handler is not active, the return value is <code class="docutils literal notranslate"><span class="pre">None</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.ExternalEntityParserCreate">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">ExternalEntityParserCreate</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">context</span></span></em><span class="optional">[</span>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span></em><span class="optional">]</span><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.ExternalEntityParserCreate" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Create a “child” parser which can be used to parse an external parsed entity
 | ||
| referred to by content parsed by the parent parser.  The <em>context</em> parameter
 | ||
| should be the string passed to the <a class="reference internal" href="#xml.parsers.expat.xmlparser.ExternalEntityRefHandler" title="xml.parsers.expat.xmlparser.ExternalEntityRefHandler"><code class="xref py py-meth docutils literal notranslate"><span class="pre">ExternalEntityRefHandler()</span></code></a> handler
 | ||
| function, described below. The child parser is created with the
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.ordered_attributes" title="xml.parsers.expat.xmlparser.ordered_attributes"><code class="xref py py-attr docutils literal notranslate"><span class="pre">ordered_attributes</span></code></a> and <a class="reference internal" href="#xml.parsers.expat.xmlparser.specified_attributes" title="xml.parsers.expat.xmlparser.specified_attributes"><code class="xref py py-attr docutils literal notranslate"><span class="pre">specified_attributes</span></code></a> set to the values of
 | ||
| this parser.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.SetParamEntityParsing">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">SetParamEntityParsing</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">flag</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.SetParamEntityParsing" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Control parsing of parameter entities (including the external DTD subset).
 | ||
| Possible <em>flag</em> values are <code class="xref py py-const docutils literal notranslate"><span class="pre">XML_PARAM_ENTITY_PARSING_NEVER</span></code>,
 | ||
| <code class="xref py py-const docutils literal notranslate"><span class="pre">XML_PARAM_ENTITY_PARSING_UNLESS_STANDALONE</span></code> and
 | ||
| <code class="xref py py-const docutils literal notranslate"><span class="pre">XML_PARAM_ENTITY_PARSING_ALWAYS</span></code>.  Return true if setting the flag
 | ||
| was successful.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.UseForeignDTD">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">UseForeignDTD</span></span><span class="sig-paren">(</span><span class="optional">[</span><em class="sig-param"><span class="n"><span class="pre">flag</span></span></em><span class="optional">]</span><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.UseForeignDTD" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Calling this with a true value for <em>flag</em> (the default) will cause Expat to call
 | ||
| the <a class="reference internal" href="#xml.parsers.expat.xmlparser.ExternalEntityRefHandler" title="xml.parsers.expat.xmlparser.ExternalEntityRefHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">ExternalEntityRefHandler</span></code></a> with <a class="reference internal" href="constants.html#None" title="None"><code class="xref py py-const docutils literal notranslate"><span class="pre">None</span></code></a> for all arguments to
 | ||
| allow an alternate DTD to be loaded.  If the document does not contain a
 | ||
| document type declaration, the <a class="reference internal" href="#xml.parsers.expat.xmlparser.ExternalEntityRefHandler" title="xml.parsers.expat.xmlparser.ExternalEntityRefHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">ExternalEntityRefHandler</span></code></a> will still be
 | ||
| called, but the <a class="reference internal" href="#xml.parsers.expat.xmlparser.StartDoctypeDeclHandler" title="xml.parsers.expat.xmlparser.StartDoctypeDeclHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">StartDoctypeDeclHandler</span></code></a> and
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.EndDoctypeDeclHandler" title="xml.parsers.expat.xmlparser.EndDoctypeDeclHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">EndDoctypeDeclHandler</span></code></a> will not be called.</p>
 | ||
| <p>Passing a false value for <em>flag</em> will cancel a previous call that passed a true
 | ||
| value, but otherwise has no effect.</p>
 | ||
| <p>This method can only be called before the <a class="reference internal" href="#xml.parsers.expat.xmlparser.Parse" title="xml.parsers.expat.xmlparser.Parse"><code class="xref py py-meth docutils literal notranslate"><span class="pre">Parse()</span></code></a> or <a class="reference internal" href="#xml.parsers.expat.xmlparser.ParseFile" title="xml.parsers.expat.xmlparser.ParseFile"><code class="xref py py-meth docutils literal notranslate"><span class="pre">ParseFile()</span></code></a>
 | ||
| methods are called; calling it after either of those have been called causes
 | ||
| <a class="reference internal" href="#xml.parsers.expat.ExpatError" title="xml.parsers.expat.ExpatError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">ExpatError</span></code></a> to be raised with the <a class="reference internal" href="code.html#module-code" title="code: Facilities to implement read-eval-print loops."><code class="xref py py-attr docutils literal notranslate"><span class="pre">code</span></code></a> attribute set to
 | ||
| <code class="docutils literal notranslate"><span class="pre">errors.codes[errors.XML_ERROR_CANT_CHANGE_FEATURE_ONCE_PARSING]</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.SetReparseDeferralEnabled">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">SetReparseDeferralEnabled</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">enabled</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.SetReparseDeferralEnabled" title="Link to this definition">¶</a></dt>
 | ||
| <dd><div class="admonition warning">
 | ||
| <p class="admonition-title">Warning</p>
 | ||
| <p>Calling <code class="docutils literal notranslate"><span class="pre">SetReparseDeferralEnabled(False)</span></code> has security implications,
 | ||
| as detailed below; please make sure to understand these consequences
 | ||
| prior to using the <code class="docutils literal notranslate"><span class="pre">SetReparseDeferralEnabled</span></code> method.</p>
 | ||
| </div>
 | ||
| <p>Expat 2.6.0 introduced a security mechanism called “reparse deferral”
 | ||
| where instead of causing denial of service through quadratic runtime
 | ||
| from reparsing large tokens, reparsing of unfinished tokens is now delayed
 | ||
| by default until a sufficient amount of input is reached.
 | ||
| Due to this delay, registered handlers may — depending of the sizing of
 | ||
| input chunks pushed to Expat — no longer be called right after pushing new
 | ||
| input to the parser.  Where immediate feedback and taking over responsibility
 | ||
| of protecting against denial of service from large tokens are both wanted,
 | ||
| calling <code class="docutils literal notranslate"><span class="pre">SetReparseDeferralEnabled(False)</span></code> disables reparse deferral
 | ||
| for the current Expat parser instance, temporarily or altogether.
 | ||
| Calling <code class="docutils literal notranslate"><span class="pre">SetReparseDeferralEnabled(True)</span></code> allows re-enabling reparse
 | ||
| deferral.</p>
 | ||
| <p>Note that <a class="reference internal" href="#xml.parsers.expat.xmlparser.SetReparseDeferralEnabled" title="xml.parsers.expat.xmlparser.SetReparseDeferralEnabled"><code class="xref py py-meth docutils literal notranslate"><span class="pre">SetReparseDeferralEnabled()</span></code></a> has been backported to some
 | ||
| prior releases of CPython as a security fix.  Check for availability of
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.SetReparseDeferralEnabled" title="xml.parsers.expat.xmlparser.SetReparseDeferralEnabled"><code class="xref py py-meth docutils literal notranslate"><span class="pre">SetReparseDeferralEnabled()</span></code></a> using <a class="reference internal" href="functions.html#hasattr" title="hasattr"><code class="xref py py-func docutils literal notranslate"><span class="pre">hasattr()</span></code></a> if used in code
 | ||
| running across a variety of Python versions.</p>
 | ||
| <div class="versionadded">
 | ||
| <p><span class="versionmodified added">Added in version 3.13.</span></p>
 | ||
| </div>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.GetReparseDeferralEnabled">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">GetReparseDeferralEnabled</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.GetReparseDeferralEnabled" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Returns whether reparse deferral is currently enabled for the given
 | ||
| Expat parser instance.</p>
 | ||
| <div class="versionadded">
 | ||
| <p><span class="versionmodified added">Added in version 3.13.</span></p>
 | ||
| </div>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <p><code class="xref py py-class docutils literal notranslate"><span class="pre">xmlparser</span></code> objects have the following attributes:</p>
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.buffer_size">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">buffer_size</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.buffer_size" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The size of the buffer used when <a class="reference internal" href="#xml.parsers.expat.xmlparser.buffer_text" title="xml.parsers.expat.xmlparser.buffer_text"><code class="xref py py-attr docutils literal notranslate"><span class="pre">buffer_text</span></code></a> is true.
 | ||
| A new buffer size can be set by assigning a new integer value
 | ||
| to this attribute.
 | ||
| When the size is changed, the buffer will be flushed.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.buffer_text">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">buffer_text</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.buffer_text" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Setting this to true causes the <code class="xref py py-class docutils literal notranslate"><span class="pre">xmlparser</span></code> object to buffer textual
 | ||
| content returned by Expat to avoid multiple calls to the
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.CharacterDataHandler" title="xml.parsers.expat.xmlparser.CharacterDataHandler"><code class="xref py py-meth docutils literal notranslate"><span class="pre">CharacterDataHandler()</span></code></a> callback whenever possible.  This can improve
 | ||
| performance substantially since Expat normally breaks character data into chunks
 | ||
| at every line ending.  This attribute is false by default, and may be changed at
 | ||
| any time. Note that when it is false, data that does not contain newlines
 | ||
| may be chunked too.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.buffer_used">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">buffer_used</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.buffer_used" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>If <a class="reference internal" href="#xml.parsers.expat.xmlparser.buffer_text" title="xml.parsers.expat.xmlparser.buffer_text"><code class="xref py py-attr docutils literal notranslate"><span class="pre">buffer_text</span></code></a> is enabled, the number of bytes stored in the buffer.
 | ||
| These bytes represent UTF-8 encoded text.  This attribute has no meaningful
 | ||
| interpretation when <a class="reference internal" href="#xml.parsers.expat.xmlparser.buffer_text" title="xml.parsers.expat.xmlparser.buffer_text"><code class="xref py py-attr docutils literal notranslate"><span class="pre">buffer_text</span></code></a> is false.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.ordered_attributes">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">ordered_attributes</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.ordered_attributes" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Setting this attribute to a non-zero integer causes the attributes to be
 | ||
| reported as a list rather than a dictionary.  The attributes are presented in
 | ||
| the order found in the document text.  For each attribute, two list entries are
 | ||
| presented: the attribute name and the attribute value.  (Older versions of this
 | ||
| module also used this format.)  By default, this attribute is false; it may be
 | ||
| changed at any time.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.specified_attributes">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">specified_attributes</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.specified_attributes" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>If set to a non-zero integer, the parser will report only those attributes which
 | ||
| were specified in the document instance and not those which were derived from
 | ||
| attribute declarations.  Applications which set this need to be especially
 | ||
| careful to use what additional information is available from the declarations as
 | ||
| needed to comply with the standards for the behavior of XML processors.  By
 | ||
| default, this attribute is false; it may be changed at any time.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <p>The following attributes contain values relating to the most recent error
 | ||
| encountered by an <code class="xref py py-class docutils literal notranslate"><span class="pre">xmlparser</span></code> object, and will only have correct values
 | ||
| once a call to <code class="xref py py-meth docutils literal notranslate"><span class="pre">Parse()</span></code> or <code class="xref py py-meth docutils literal notranslate"><span class="pre">ParseFile()</span></code> has raised an
 | ||
| <a class="reference internal" href="#xml.parsers.expat.ExpatError" title="xml.parsers.expat.ExpatError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">xml.parsers.expat.ExpatError</span></code></a> exception.</p>
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.ErrorByteIndex">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">ErrorByteIndex</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.ErrorByteIndex" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Byte index at which an error occurred.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.ErrorCode">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">ErrorCode</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.ErrorCode" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Numeric code specifying the problem.  This value can be passed to the
 | ||
| <a class="reference internal" href="#xml.parsers.expat.ErrorString" title="xml.parsers.expat.ErrorString"><code class="xref py py-func docutils literal notranslate"><span class="pre">ErrorString()</span></code></a> function, or compared to one of the constants defined in the
 | ||
| <code class="docutils literal notranslate"><span class="pre">errors</span></code> object.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.ErrorColumnNumber">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">ErrorColumnNumber</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.ErrorColumnNumber" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Column number at which an error occurred.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.ErrorLineNumber">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">ErrorLineNumber</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.ErrorLineNumber" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Line number at which an error occurred.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <p>The following attributes contain values relating to the current parse location
 | ||
| in an <code class="xref py py-class docutils literal notranslate"><span class="pre">xmlparser</span></code> object.  During a callback reporting a parse event they
 | ||
| indicate the location of the first of the sequence of characters that generated
 | ||
| the event.  When called outside of a callback, the position indicated will be
 | ||
| just past the last parse event (regardless of whether there was an associated
 | ||
| callback).</p>
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.CurrentByteIndex">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">CurrentByteIndex</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.CurrentByteIndex" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Current byte index in the parser input.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.CurrentColumnNumber">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">CurrentColumnNumber</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.CurrentColumnNumber" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Current column number in the parser input.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.CurrentLineNumber">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">CurrentLineNumber</span></span><a class="headerlink" href="#xml.parsers.expat.xmlparser.CurrentLineNumber" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Current line number in the parser input.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <p>Here is the list of handlers that can be set.  To set a handler on an
 | ||
| <code class="xref py py-class docutils literal notranslate"><span class="pre">xmlparser</span></code> object <em>o</em>, use <code class="docutils literal notranslate"><span class="pre">o.handlername</span> <span class="pre">=</span> <span class="pre">func</span></code>.  <em>handlername</em> must
 | ||
| be taken from the following list, and <em>func</em> must be a callable object accepting
 | ||
| the correct number of arguments.  The arguments are all strings, unless
 | ||
| otherwise stated.</p>
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.XmlDeclHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">XmlDeclHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">version</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">encoding</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">standalone</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.XmlDeclHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called when the XML declaration is parsed.  The XML declaration is the
 | ||
| (optional) declaration of the applicable version of the XML recommendation, the
 | ||
| encoding of the document text, and an optional “standalone” declaration.
 | ||
| <em>version</em> and <em>encoding</em> will be strings, and <em>standalone</em> will be <code class="docutils literal notranslate"><span class="pre">1</span></code> if the
 | ||
| document is declared standalone, <code class="docutils literal notranslate"><span class="pre">0</span></code> if it is declared not to be standalone,
 | ||
| or <code class="docutils literal notranslate"><span class="pre">-1</span></code> if the standalone clause was omitted. This is only available with
 | ||
| Expat version 1.95.0 or newer.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.StartDoctypeDeclHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">StartDoctypeDeclHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">doctypeName</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">systemId</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">publicId</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">has_internal_subset</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.StartDoctypeDeclHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called when Expat begins parsing the document type declaration (<code class="docutils literal notranslate"><span class="pre"><!DOCTYPE</span>
 | ||
| <span class="pre">...</span></code>).  The <em>doctypeName</em> is provided exactly as presented.  The <em>systemId</em> and
 | ||
| <em>publicId</em> parameters give the system and public identifiers if specified, or
 | ||
| <code class="docutils literal notranslate"><span class="pre">None</span></code> if omitted.  <em>has_internal_subset</em> will be true if the document
 | ||
| contains and internal document declaration subset. This requires Expat version
 | ||
| 1.2 or newer.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.EndDoctypeDeclHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">EndDoctypeDeclHandler</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.EndDoctypeDeclHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called when Expat is done parsing the document type declaration. This requires
 | ||
| Expat version 1.2 or newer.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.ElementDeclHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">ElementDeclHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">model</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.ElementDeclHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called once for each element type declaration.  <em>name</em> is the name of the
 | ||
| element type, and <em>model</em> is a representation of the content model.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.AttlistDeclHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">AttlistDeclHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">elname</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attname</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">type</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">default</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">required</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.AttlistDeclHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for each declared attribute for an element type.  If an attribute list
 | ||
| declaration declares three attributes, this handler is called three times, once
 | ||
| for each attribute.  <em>elname</em> is the name of the element to which the
 | ||
| declaration applies and <em>attname</em> is the name of the attribute declared.  The
 | ||
| attribute type is a string passed as <em>type</em>; the possible values are
 | ||
| <code class="docutils literal notranslate"><span class="pre">'CDATA'</span></code>, <code class="docutils literal notranslate"><span class="pre">'ID'</span></code>, <code class="docutils literal notranslate"><span class="pre">'IDREF'</span></code>, … <em>default</em> gives the default value for
 | ||
| the attribute used when the attribute is not specified by the document instance,
 | ||
| or <code class="docutils literal notranslate"><span class="pre">None</span></code> if there is no default value (<code class="docutils literal notranslate"><span class="pre">#IMPLIED</span></code> values).  If the
 | ||
| attribute is required to be given in the document instance, <em>required</em> will be
 | ||
| true. This requires Expat version 1.95.0 or newer.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.StartElementHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">StartElementHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attributes</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.StartElementHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for the start of every element.  <em>name</em> is a string containing the
 | ||
| element name, and <em>attributes</em> is the element attributes. If
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.ordered_attributes" title="xml.parsers.expat.xmlparser.ordered_attributes"><code class="xref py py-attr docutils literal notranslate"><span class="pre">ordered_attributes</span></code></a> is true, this is a list (see
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.ordered_attributes" title="xml.parsers.expat.xmlparser.ordered_attributes"><code class="xref py py-attr docutils literal notranslate"><span class="pre">ordered_attributes</span></code></a> for a full description). Otherwise it’s a
 | ||
| dictionary mapping names to values.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.EndElementHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">EndElementHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.EndElementHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for the end of every element.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.ProcessingInstructionHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">ProcessingInstructionHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">target</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.ProcessingInstructionHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for every processing instruction.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.CharacterDataHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">CharacterDataHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.CharacterDataHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for character data.  This will be called for normal character data, CDATA
 | ||
| marked content, and ignorable whitespace.  Applications which must distinguish
 | ||
| these cases can use the <a class="reference internal" href="#xml.parsers.expat.xmlparser.StartCdataSectionHandler" title="xml.parsers.expat.xmlparser.StartCdataSectionHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">StartCdataSectionHandler</span></code></a>,
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.EndCdataSectionHandler" title="xml.parsers.expat.xmlparser.EndCdataSectionHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">EndCdataSectionHandler</span></code></a>, and <a class="reference internal" href="#xml.parsers.expat.xmlparser.ElementDeclHandler" title="xml.parsers.expat.xmlparser.ElementDeclHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">ElementDeclHandler</span></code></a> callbacks to
 | ||
| collect the required information. Note that the character data may be
 | ||
| chunked even if it is short and so you may receive more than one call to
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.CharacterDataHandler" title="xml.parsers.expat.xmlparser.CharacterDataHandler"><code class="xref py py-meth docutils literal notranslate"><span class="pre">CharacterDataHandler()</span></code></a>. Set the <a class="reference internal" href="#xml.parsers.expat.xmlparser.buffer_text" title="xml.parsers.expat.xmlparser.buffer_text"><code class="xref py py-attr docutils literal notranslate"><span class="pre">buffer_text</span></code></a> instance attribute
 | ||
| to <code class="docutils literal notranslate"><span class="pre">True</span></code> to avoid that.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.UnparsedEntityDeclHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">UnparsedEntityDeclHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entityName</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">base</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">systemId</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">publicId</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">notationName</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.UnparsedEntityDeclHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for unparsed (NDATA) entity declarations.  This is only present for
 | ||
| version 1.2 of the Expat library; for more recent versions, use
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.EntityDeclHandler" title="xml.parsers.expat.xmlparser.EntityDeclHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">EntityDeclHandler</span></code></a> instead.  (The underlying function in the Expat
 | ||
| library has been declared obsolete.)</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.EntityDeclHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">EntityDeclHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entityName</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">is_parameter_entity</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">value</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">base</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">systemId</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">publicId</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">notationName</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.EntityDeclHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for all entity declarations.  For parameter and internal entities,
 | ||
| <em>value</em> will be a string giving the declared contents of the entity; this will
 | ||
| be <code class="docutils literal notranslate"><span class="pre">None</span></code> for external entities.  The <em>notationName</em> parameter will be
 | ||
| <code class="docutils literal notranslate"><span class="pre">None</span></code> for parsed entities, and the name of the notation for unparsed
 | ||
| entities. <em>is_parameter_entity</em> will be true if the entity is a parameter entity
 | ||
| or false for general entities (most applications only need to be concerned with
 | ||
| general entities). This is only available starting with version 1.95.0 of the
 | ||
| Expat library.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.NotationDeclHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">NotationDeclHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">notationName</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">base</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">systemId</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">publicId</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.NotationDeclHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for notation declarations.  <em>notationName</em>, <em>base</em>, and <em>systemId</em>, and
 | ||
| <em>publicId</em> are strings if given.  If the public identifier is omitted,
 | ||
| <em>publicId</em> will be <code class="docutils literal notranslate"><span class="pre">None</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.StartNamespaceDeclHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">StartNamespaceDeclHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">prefix</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">uri</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.StartNamespaceDeclHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called when an element contains a namespace declaration.  Namespace declarations
 | ||
| are processed before the <a class="reference internal" href="#xml.parsers.expat.xmlparser.StartElementHandler" title="xml.parsers.expat.xmlparser.StartElementHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">StartElementHandler</span></code></a> is called for the element
 | ||
| on which declarations are placed.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.EndNamespaceDeclHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">EndNamespaceDeclHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">prefix</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.EndNamespaceDeclHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called when the closing tag is reached for an element  that contained a
 | ||
| namespace declaration.  This is called once for each namespace declaration on
 | ||
| the element in the reverse of the order for which the
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.StartNamespaceDeclHandler" title="xml.parsers.expat.xmlparser.StartNamespaceDeclHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">StartNamespaceDeclHandler</span></code></a> was called to indicate the start of each
 | ||
| namespace declaration’s scope.  Calls to this handler are made after the
 | ||
| corresponding <a class="reference internal" href="#xml.parsers.expat.xmlparser.EndElementHandler" title="xml.parsers.expat.xmlparser.EndElementHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">EndElementHandler</span></code></a> for the end of the element.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.CommentHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">CommentHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.CommentHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for comments.  <em>data</em> is the text of the comment, excluding the leading
 | ||
| <code class="docutils literal notranslate"><span class="pre">'<!-</span></code><code class="docutils literal notranslate"><span class="pre">-'</span></code> and trailing <code class="docutils literal notranslate"><span class="pre">'-</span></code><code class="docutils literal notranslate"><span class="pre">->'</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.StartCdataSectionHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">StartCdataSectionHandler</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.StartCdataSectionHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called at the start of a CDATA section.  This and <a class="reference internal" href="#xml.parsers.expat.xmlparser.EndCdataSectionHandler" title="xml.parsers.expat.xmlparser.EndCdataSectionHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">EndCdataSectionHandler</span></code></a>
 | ||
| are needed to be able to identify the syntactical start and end for CDATA
 | ||
| sections.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.EndCdataSectionHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">EndCdataSectionHandler</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.EndCdataSectionHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called at the end of a CDATA section.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.DefaultHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">DefaultHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.DefaultHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for any characters in the XML document for which no applicable handler
 | ||
| has been specified.  This means characters that are part of a construct which
 | ||
| could be reported, but for which no handler has been supplied.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.DefaultHandlerExpand">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">DefaultHandlerExpand</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.DefaultHandlerExpand" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>This is the same as the <a class="reference internal" href="#xml.parsers.expat.xmlparser.DefaultHandler" title="xml.parsers.expat.xmlparser.DefaultHandler"><code class="xref py py-func docutils literal notranslate"><span class="pre">DefaultHandler()</span></code></a>,  but doesn’t inhibit expansion
 | ||
| of internal entities. The entity reference will not be passed to the default
 | ||
| handler.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.NotStandaloneHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">NotStandaloneHandler</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.NotStandaloneHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called if the XML document hasn’t been declared as being a standalone document.
 | ||
| This happens when there is an external subset or a reference to a parameter
 | ||
| entity, but the XML declaration does not set standalone to <code class="docutils literal notranslate"><span class="pre">yes</span></code> in an XML
 | ||
| declaration.  If this handler returns <code class="docutils literal notranslate"><span class="pre">0</span></code>, then the parser will raise an
 | ||
| <code class="xref py py-const docutils literal notranslate"><span class="pre">XML_ERROR_NOT_STANDALONE</span></code> error.  If this handler is not set, no
 | ||
| exception is raised by the parser for this condition.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py method">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.xmlparser.ExternalEntityRefHandler">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xmlparser.</span></span><span class="sig-name descname"><span class="pre">ExternalEntityRefHandler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">context</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">base</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">systemId</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">publicId</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#xml.parsers.expat.xmlparser.ExternalEntityRefHandler" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Called for references to external entities.  <em>base</em> is the current base, as set
 | ||
| by a previous call to <a class="reference internal" href="#xml.parsers.expat.xmlparser.SetBase" title="xml.parsers.expat.xmlparser.SetBase"><code class="xref py py-meth docutils literal notranslate"><span class="pre">SetBase()</span></code></a>.  The public and system identifiers,
 | ||
| <em>systemId</em> and <em>publicId</em>, are strings if given; if the public identifier is not
 | ||
| given, <em>publicId</em> will be <code class="docutils literal notranslate"><span class="pre">None</span></code>.  The <em>context</em> value is opaque and should
 | ||
| only be used as described below.</p>
 | ||
| <p>For external entities to be parsed, this handler must be implemented. It is
 | ||
| responsible for creating the sub-parser using
 | ||
| <code class="docutils literal notranslate"><span class="pre">ExternalEntityParserCreate(context)</span></code>, initializing it with the appropriate
 | ||
| callbacks, and parsing the entity.  This handler should return an integer; if it
 | ||
| returns <code class="docutils literal notranslate"><span class="pre">0</span></code>, the parser will raise an
 | ||
| <code class="xref py py-const docutils literal notranslate"><span class="pre">XML_ERROR_EXTERNAL_ENTITY_HANDLING</span></code> error, otherwise parsing will
 | ||
| continue.</p>
 | ||
| <p>If this handler is not provided, external entities are reported by the
 | ||
| <a class="reference internal" href="#xml.parsers.expat.xmlparser.DefaultHandler" title="xml.parsers.expat.xmlparser.DefaultHandler"><code class="xref py py-attr docutils literal notranslate"><span class="pre">DefaultHandler</span></code></a> callback, if provided.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| </section>
 | ||
| <section id="expaterror-exceptions">
 | ||
| <span id="expaterror-objects"></span><h2>ExpatError Exceptions<a class="headerlink" href="#expaterror-exceptions" title="Link to this heading">¶</a></h2>
 | ||
| <p><a class="reference internal" href="#xml.parsers.expat.ExpatError" title="xml.parsers.expat.ExpatError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">ExpatError</span></code></a> exceptions have a number of interesting attributes:</p>
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.ExpatError.code">
 | ||
| <span class="sig-prename descclassname"><span class="pre">ExpatError.</span></span><span class="sig-name descname"><span class="pre">code</span></span><a class="headerlink" href="#xml.parsers.expat.ExpatError.code" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Expat’s internal error number for the specific error.  The
 | ||
| <a class="reference internal" href="#xml.parsers.expat.errors.messages" title="xml.parsers.expat.errors.messages"><code class="xref py py-data docutils literal notranslate"><span class="pre">errors.messages</span></code></a> dictionary maps
 | ||
| these error numbers to Expat’s error messages.  For example:</p>
 | ||
| <div class="highlight-python3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span><span class="w"> </span><span class="nn">xml.parsers.expat</span><span class="w"> </span><span class="kn">import</span> <span class="n">ParserCreate</span><span class="p">,</span> <span class="n">ExpatError</span><span class="p">,</span> <span class="n">errors</span>
 | ||
| 
 | ||
| <span class="n">p</span> <span class="o">=</span> <span class="n">ParserCreate</span><span class="p">()</span>
 | ||
| <span class="k">try</span><span class="p">:</span>
 | ||
|     <span class="n">p</span><span class="o">.</span><span class="n">Parse</span><span class="p">(</span><span class="n">some_xml_document</span><span class="p">)</span>
 | ||
| <span class="k">except</span> <span class="n">ExpatError</span> <span class="k">as</span> <span class="n">err</span><span class="p">:</span>
 | ||
|     <span class="nb">print</span><span class="p">(</span><span class="s2">"Error:"</span><span class="p">,</span> <span class="n">errors</span><span class="o">.</span><span class="n">messages</span><span class="p">[</span><span class="n">err</span><span class="o">.</span><span class="n">code</span><span class="p">])</span>
 | ||
| </pre></div>
 | ||
| </div>
 | ||
| <p>The <a class="reference internal" href="#module-xml.parsers.expat.errors" title="xml.parsers.expat.errors"><code class="xref py py-mod docutils literal notranslate"><span class="pre">errors</span></code></a> module also provides error message
 | ||
| constants and a dictionary <a class="reference internal" href="#xml.parsers.expat.errors.codes" title="xml.parsers.expat.errors.codes"><code class="xref py py-data docutils literal notranslate"><span class="pre">codes</span></code></a> mapping
 | ||
| these messages back to the error codes, see below.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.ExpatError.lineno">
 | ||
| <span class="sig-prename descclassname"><span class="pre">ExpatError.</span></span><span class="sig-name descname"><span class="pre">lineno</span></span><a class="headerlink" href="#xml.parsers.expat.ExpatError.lineno" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Line number on which the error was detected.  The first line is numbered <code class="docutils literal notranslate"><span class="pre">1</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py attribute">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.ExpatError.offset">
 | ||
| <span class="sig-prename descclassname"><span class="pre">ExpatError.</span></span><span class="sig-name descname"><span class="pre">offset</span></span><a class="headerlink" href="#xml.parsers.expat.ExpatError.offset" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Character offset into the line where the error occurred.  The first column is
 | ||
| numbered <code class="docutils literal notranslate"><span class="pre">0</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| </section>
 | ||
| <section id="example">
 | ||
| <span id="expat-example"></span><h2>Example<a class="headerlink" href="#example" title="Link to this heading">¶</a></h2>
 | ||
| <p>The following program defines three handlers that just print out their
 | ||
| arguments.</p>
 | ||
| <div class="highlight-python3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">xml.parsers.expat</span>
 | ||
| 
 | ||
| <span class="c1"># 3 handler functions</span>
 | ||
| <span class="k">def</span><span class="w"> </span><span class="nf">start_element</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="n">attrs</span><span class="p">):</span>
 | ||
|     <span class="nb">print</span><span class="p">(</span><span class="s1">'Start element:'</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">attrs</span><span class="p">)</span>
 | ||
| <span class="k">def</span><span class="w"> </span><span class="nf">end_element</span><span class="p">(</span><span class="n">name</span><span class="p">):</span>
 | ||
|     <span class="nb">print</span><span class="p">(</span><span class="s1">'End element:'</span><span class="p">,</span> <span class="n">name</span><span class="p">)</span>
 | ||
| <span class="k">def</span><span class="w"> </span><span class="nf">char_data</span><span class="p">(</span><span class="n">data</span><span class="p">):</span>
 | ||
|     <span class="nb">print</span><span class="p">(</span><span class="s1">'Character data:'</span><span class="p">,</span> <span class="nb">repr</span><span class="p">(</span><span class="n">data</span><span class="p">))</span>
 | ||
| 
 | ||
| <span class="n">p</span> <span class="o">=</span> <span class="n">xml</span><span class="o">.</span><span class="n">parsers</span><span class="o">.</span><span class="n">expat</span><span class="o">.</span><span class="n">ParserCreate</span><span class="p">()</span>
 | ||
| 
 | ||
| <span class="n">p</span><span class="o">.</span><span class="n">StartElementHandler</span> <span class="o">=</span> <span class="n">start_element</span>
 | ||
| <span class="n">p</span><span class="o">.</span><span class="n">EndElementHandler</span> <span class="o">=</span> <span class="n">end_element</span>
 | ||
| <span class="n">p</span><span class="o">.</span><span class="n">CharacterDataHandler</span> <span class="o">=</span> <span class="n">char_data</span>
 | ||
| 
 | ||
| <span class="n">p</span><span class="o">.</span><span class="n">Parse</span><span class="p">(</span><span class="s2">"""<?xml version="1.0"?></span>
 | ||
| <span class="s2"><parent id="top"><child1 name="paul">Text goes here</child1></span>
 | ||
| <span class="s2"><child2 name="fred">More text</child2></span>
 | ||
| <span class="s2"></parent>"""</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
 | ||
| </pre></div>
 | ||
| </div>
 | ||
| <p>The output from this program is:</p>
 | ||
| <div class="highlight-python3 notranslate"><div class="highlight"><pre><span></span><span class="n">Start</span> <span class="n">element</span><span class="p">:</span> <span class="n">parent</span> <span class="p">{</span><span class="s1">'id'</span><span class="p">:</span> <span class="s1">'top'</span><span class="p">}</span>
 | ||
| <span class="n">Start</span> <span class="n">element</span><span class="p">:</span> <span class="n">child1</span> <span class="p">{</span><span class="s1">'name'</span><span class="p">:</span> <span class="s1">'paul'</span><span class="p">}</span>
 | ||
| <span class="n">Character</span> <span class="n">data</span><span class="p">:</span> <span class="s1">'Text goes here'</span>
 | ||
| <span class="n">End</span> <span class="n">element</span><span class="p">:</span> <span class="n">child1</span>
 | ||
| <span class="n">Character</span> <span class="n">data</span><span class="p">:</span> <span class="s1">'</span><span class="se">\n</span><span class="s1">'</span>
 | ||
| <span class="n">Start</span> <span class="n">element</span><span class="p">:</span> <span class="n">child2</span> <span class="p">{</span><span class="s1">'name'</span><span class="p">:</span> <span class="s1">'fred'</span><span class="p">}</span>
 | ||
| <span class="n">Character</span> <span class="n">data</span><span class="p">:</span> <span class="s1">'More text'</span>
 | ||
| <span class="n">End</span> <span class="n">element</span><span class="p">:</span> <span class="n">child2</span>
 | ||
| <span class="n">Character</span> <span class="n">data</span><span class="p">:</span> <span class="s1">'</span><span class="se">\n</span><span class="s1">'</span>
 | ||
| <span class="n">End</span> <span class="n">element</span><span class="p">:</span> <span class="n">parent</span>
 | ||
| </pre></div>
 | ||
| </div>
 | ||
| </section>
 | ||
| <section id="module-xml.parsers.expat.model">
 | ||
| <span id="content-model-descriptions"></span><span id="expat-content-models"></span><h2>Content Model Descriptions<a class="headerlink" href="#module-xml.parsers.expat.model" title="Link to this heading">¶</a></h2>
 | ||
| <p>Content models are described using nested tuples.  Each tuple contains four
 | ||
| values: the type, the quantifier, the name, and a tuple of children.  Children
 | ||
| are simply additional content model descriptions.</p>
 | ||
| <p>The values of the first two fields are constants defined in the
 | ||
| <a class="reference internal" href="#module-xml.parsers.expat.model" title="xml.parsers.expat.model"><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.parsers.expat.model</span></code></a> module.  These constants can be collected in two
 | ||
| groups: the model type group and the quantifier group.</p>
 | ||
| <p>The constants in the model type group are:</p>
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.model.</span></span><span class="sig-name descname"><span class="pre">XML_CTYPE_ANY</span></span></dt>
 | ||
| <dd><p>The element named by the model name was declared to have a content model of
 | ||
| <code class="docutils literal notranslate"><span class="pre">ANY</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.model.</span></span><span class="sig-name descname"><span class="pre">XML_CTYPE_CHOICE</span></span></dt>
 | ||
| <dd><p>The named element allows a choice from a number of options; this is used for
 | ||
| content models such as <code class="docutils literal notranslate"><span class="pre">(A</span> <span class="pre">|</span> <span class="pre">B</span> <span class="pre">|</span> <span class="pre">C)</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.model.</span></span><span class="sig-name descname"><span class="pre">XML_CTYPE_EMPTY</span></span></dt>
 | ||
| <dd><p>Elements which are declared to be <code class="docutils literal notranslate"><span class="pre">EMPTY</span></code> have this model type.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.model.</span></span><span class="sig-name descname"><span class="pre">XML_CTYPE_MIXED</span></span></dt>
 | ||
| <dd></dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.model.</span></span><span class="sig-name descname"><span class="pre">XML_CTYPE_NAME</span></span></dt>
 | ||
| <dd></dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.model.</span></span><span class="sig-name descname"><span class="pre">XML_CTYPE_SEQ</span></span></dt>
 | ||
| <dd><p>Models which represent a series of models which follow one after the other are
 | ||
| indicated with this model type.  This is used for models such as <code class="docutils literal notranslate"><span class="pre">(A,</span> <span class="pre">B,</span> <span class="pre">C)</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <p>The constants in the quantifier group are:</p>
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.model.</span></span><span class="sig-name descname"><span class="pre">XML_CQUANT_NONE</span></span></dt>
 | ||
| <dd><p>No modifier is given, so it can appear exactly once, as for <code class="docutils literal notranslate"><span class="pre">A</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.model.</span></span><span class="sig-name descname"><span class="pre">XML_CQUANT_OPT</span></span></dt>
 | ||
| <dd><p>The model is optional: it can appear once or not at all, as for <code class="docutils literal notranslate"><span class="pre">A?</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.model.</span></span><span class="sig-name descname"><span class="pre">XML_CQUANT_PLUS</span></span></dt>
 | ||
| <dd><p>The model must occur one or more times (like <code class="docutils literal notranslate"><span class="pre">A+</span></code>).</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.model.</span></span><span class="sig-name descname"><span class="pre">XML_CQUANT_REP</span></span></dt>
 | ||
| <dd><p>The model must occur zero or more times, as for <code class="docutils literal notranslate"><span class="pre">A*</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| </section>
 | ||
| <section id="module-xml.parsers.expat.errors">
 | ||
| <span id="expat-error-constants"></span><span id="expat-errors"></span><h2>Expat error constants<a class="headerlink" href="#module-xml.parsers.expat.errors" title="Link to this heading">¶</a></h2>
 | ||
| <p>The following constants are provided in the <a class="reference internal" href="#module-xml.parsers.expat.errors" title="xml.parsers.expat.errors"><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.parsers.expat.errors</span></code></a>
 | ||
| module.  These constants are useful in interpreting some of the attributes of
 | ||
| the <code class="xref py py-exc docutils literal notranslate"><span class="pre">ExpatError</span></code> exception objects raised when an error has occurred.
 | ||
| Since for backwards compatibility reasons, the constants’ value is the error
 | ||
| <em>message</em> and not the numeric error <em>code</em>, you do this by comparing its
 | ||
| <a class="reference internal" href="code.html#module-code" title="code: Facilities to implement read-eval-print loops."><code class="xref py py-attr docutils literal notranslate"><span class="pre">code</span></code></a> attribute with
 | ||
| <code class="samp docutils literal notranslate"><span class="pre">errors.codes[errors.XML_ERROR_</span><em><span class="pre">CONSTANT_NAME</span></em><span class="pre">]</span></code>.</p>
 | ||
| <p>The <code class="docutils literal notranslate"><span class="pre">errors</span></code> module has the following attributes:</p>
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.codes">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">codes</span></span><a class="headerlink" href="#xml.parsers.expat.errors.codes" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>A dictionary mapping string descriptions to their error codes.</p>
 | ||
| <div class="versionadded">
 | ||
| <p><span class="versionmodified added">Added in version 3.2.</span></p>
 | ||
| </div>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.messages">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">messages</span></span><a class="headerlink" href="#xml.parsers.expat.errors.messages" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>A dictionary mapping numeric error codes to their string descriptions.</p>
 | ||
| <div class="versionadded">
 | ||
| <p><span class="versionmodified added">Added in version 3.2.</span></p>
 | ||
| </div>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_ASYNC_ENTITY">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_ASYNC_ENTITY</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_ASYNC_ENTITY" title="Link to this definition">¶</a></dt>
 | ||
| <dd></dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An entity reference in an attribute value referred to an external entity instead
 | ||
| of an internal entity.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_BAD_CHAR_REF">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_BAD_CHAR_REF</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_BAD_CHAR_REF" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>A character reference referred to a character which is illegal in XML (for
 | ||
| example, character <code class="docutils literal notranslate"><span class="pre">0</span></code>, or ‘<code class="docutils literal notranslate"><span class="pre">&#0;</span></code>’).</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_BINARY_ENTITY_REF">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_BINARY_ENTITY_REF</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_BINARY_ENTITY_REF" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An entity reference referred to an entity which was declared with a notation, so
 | ||
| cannot be parsed.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_DUPLICATE_ATTRIBUTE">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_DUPLICATE_ATTRIBUTE</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_DUPLICATE_ATTRIBUTE" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An attribute was used more than once in a start tag.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_INCORRECT_ENCODING">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_INCORRECT_ENCODING</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_INCORRECT_ENCODING" title="Link to this definition">¶</a></dt>
 | ||
| <dd></dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_INVALID_TOKEN">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_INVALID_TOKEN</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_INVALID_TOKEN" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Raised when an input byte could not properly be assigned to a character; for
 | ||
| example, a NUL byte (value <code class="docutils literal notranslate"><span class="pre">0</span></code>) in a UTF-8 input stream.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_JUNK_AFTER_DOC_ELEMENT">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_JUNK_AFTER_DOC_ELEMENT</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_JUNK_AFTER_DOC_ELEMENT" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Something other than whitespace occurred after the document element.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_MISPLACED_XML_PI">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_MISPLACED_XML_PI</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_MISPLACED_XML_PI" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An XML declaration was found somewhere other than the start of the input data.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_NO_ELEMENTS">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_NO_ELEMENTS</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_NO_ELEMENTS" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The document contains no elements (XML requires all documents to contain exactly
 | ||
| one top-level element)..</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_NO_MEMORY">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_NO_MEMORY</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_NO_MEMORY" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Expat was not able to allocate memory internally.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_PARAM_ENTITY_REF">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_PARAM_ENTITY_REF</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_PARAM_ENTITY_REF" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>A parameter entity reference was found where it was not allowed.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_PARTIAL_CHAR">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_PARTIAL_CHAR</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_PARTIAL_CHAR" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An incomplete character was found in the input.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_RECURSIVE_ENTITY_REF">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_RECURSIVE_ENTITY_REF</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_RECURSIVE_ENTITY_REF" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An entity reference contained another reference to the same entity; possibly via
 | ||
| a different name, and possibly indirectly.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_SYNTAX">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_SYNTAX</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_SYNTAX" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Some unspecified syntax error was encountered.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_TAG_MISMATCH">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_TAG_MISMATCH</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_TAG_MISMATCH" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An end tag did not match the innermost open start tag.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_UNCLOSED_TOKEN">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_UNCLOSED_TOKEN</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_UNCLOSED_TOKEN" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Some token (such as a start tag) was not closed before the end of the stream or
 | ||
| the next token was encountered.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_UNDEFINED_ENTITY">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_UNDEFINED_ENTITY</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_UNDEFINED_ENTITY" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>A reference was made to an entity which was not defined.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_UNKNOWN_ENCODING">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_UNKNOWN_ENCODING</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_UNKNOWN_ENCODING" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The document encoding is not supported by Expat.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_UNCLOSED_CDATA_SECTION">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_UNCLOSED_CDATA_SECTION</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_UNCLOSED_CDATA_SECTION" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>A CDATA marked section was not closed.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_EXTERNAL_ENTITY_HANDLING">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_EXTERNAL_ENTITY_HANDLING</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_EXTERNAL_ENTITY_HANDLING" title="Link to this definition">¶</a></dt>
 | ||
| <dd></dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_NOT_STANDALONE">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_NOT_STANDALONE</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_NOT_STANDALONE" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The parser determined that the document was not “standalone” though it declared
 | ||
| itself to be in the XML declaration, and the <code class="xref py py-attr docutils literal notranslate"><span class="pre">NotStandaloneHandler</span></code> was
 | ||
| set and returned <code class="docutils literal notranslate"><span class="pre">0</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_UNEXPECTED_STATE">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_UNEXPECTED_STATE</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_UNEXPECTED_STATE" title="Link to this definition">¶</a></dt>
 | ||
| <dd></dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_ENTITY_DECLARED_IN_PE">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_ENTITY_DECLARED_IN_PE</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_ENTITY_DECLARED_IN_PE" title="Link to this definition">¶</a></dt>
 | ||
| <dd></dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_FEATURE_REQUIRES_XML_DTD">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_FEATURE_REQUIRES_XML_DTD</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_FEATURE_REQUIRES_XML_DTD" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An operation was requested that requires DTD support to be compiled in, but
 | ||
| Expat was configured without DTD support.  This should never be reported by a
 | ||
| standard build of the <a class="reference internal" href="#module-xml.parsers.expat" title="xml.parsers.expat: An interface to the Expat non-validating XML parser."><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.parsers.expat</span></code></a> module.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_CANT_CHANGE_FEATURE_ONCE_PARSING">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_CANT_CHANGE_FEATURE_ONCE_PARSING</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_CANT_CHANGE_FEATURE_ONCE_PARSING" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>A behavioral change was requested after parsing started that can only be changed
 | ||
| before parsing has started.  This is (currently) only raised by
 | ||
| <code class="xref py py-meth docutils literal notranslate"><span class="pre">UseForeignDTD()</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_UNBOUND_PREFIX">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_UNBOUND_PREFIX</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_UNBOUND_PREFIX" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An undeclared prefix was found when namespace processing was enabled.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_UNDECLARING_PREFIX">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_UNDECLARING_PREFIX</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_UNDECLARING_PREFIX" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The document attempted to remove the namespace declaration associated with a
 | ||
| prefix.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_INCOMPLETE_PE">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_INCOMPLETE_PE</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_INCOMPLETE_PE" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>A parameter entity contained incomplete markup.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_XML_DECL">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_XML_DECL</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_XML_DECL" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The document contained no document element at all.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_TEXT_DECL">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_TEXT_DECL</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_TEXT_DECL" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>There was an error parsing a text declaration in an external entity.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_PUBLICID">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_PUBLICID</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_PUBLICID" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>Characters were found in the public id that are not allowed.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_SUSPENDED">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_SUSPENDED</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_SUSPENDED" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The requested operation was made on a suspended parser, but isn’t allowed.  This
 | ||
| includes attempts to provide additional input or to stop the parser.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_NOT_SUSPENDED">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_NOT_SUSPENDED</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_NOT_SUSPENDED" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An attempt to resume the parser was made when the parser had not been suspended.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_ABORTED">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_ABORTED</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_ABORTED" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>This should not be reported to Python applications.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_FINISHED">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_FINISHED</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_FINISHED" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The requested operation was made on a parser which was finished parsing input,
 | ||
| but isn’t allowed.  This includes attempts to provide additional input or to
 | ||
| stop the parser.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_SUSPEND_PE">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_SUSPEND_PE</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_SUSPEND_PE" title="Link to this definition">¶</a></dt>
 | ||
| <dd></dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_RESERVED_PREFIX_XML">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_RESERVED_PREFIX_XML</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_RESERVED_PREFIX_XML" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An attempt was made to
 | ||
| undeclare reserved namespace prefix <code class="docutils literal notranslate"><span class="pre">xml</span></code>
 | ||
| or to bind it to another namespace URI.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_RESERVED_PREFIX_XMLNS">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_RESERVED_PREFIX_XMLNS</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_RESERVED_PREFIX_XMLNS" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An attempt was made to declare or undeclare reserved namespace prefix <code class="docutils literal notranslate"><span class="pre">xmlns</span></code>.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_RESERVED_NAMESPACE_URI">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_RESERVED_NAMESPACE_URI</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_RESERVED_NAMESPACE_URI" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>An attempt was made to bind the URI of one the reserved namespace
 | ||
| prefixes <code class="docutils literal notranslate"><span class="pre">xml</span></code> and <code class="docutils literal notranslate"><span class="pre">xmlns</span></code> to another namespace prefix.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_INVALID_ARGUMENT">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_INVALID_ARGUMENT</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_INVALID_ARGUMENT" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>This should not be reported to Python applications.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_NO_BUFFER">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_NO_BUFFER</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_NO_BUFFER" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>This should not be reported to Python applications.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <dl class="py data">
 | ||
| <dt class="sig sig-object py" id="xml.parsers.expat.errors.XML_ERROR_AMPLIFICATION_LIMIT_BREACH">
 | ||
| <span class="sig-prename descclassname"><span class="pre">xml.parsers.expat.errors.</span></span><span class="sig-name descname"><span class="pre">XML_ERROR_AMPLIFICATION_LIMIT_BREACH</span></span><a class="headerlink" href="#xml.parsers.expat.errors.XML_ERROR_AMPLIFICATION_LIMIT_BREACH" title="Link to this definition">¶</a></dt>
 | ||
| <dd><p>The limit on input amplification factor (from DTD and entities)
 | ||
| has been breached.</p>
 | ||
| </dd></dl>
 | ||
| 
 | ||
| <p class="rubric">Footnotes</p>
 | ||
| <aside class="footnote-list brackets">
 | ||
| <aside class="footnote brackets" id="id3" role="doc-footnote">
 | ||
| <span class="label"><span class="fn-bracket">[</span><a role="doc-backlink" href="#id1">1</a><span class="fn-bracket">]</span></span>
 | ||
| <p>The encoding string included in XML output should conform to the
 | ||
| appropriate standards. For example, “UTF-8” is valid, but “UTF8” is
 | ||
| not. See <a class="reference external" href="https://www.w3.org/TR/2006/REC-xml11-20060816/#NT-EncodingDecl">https://www.w3.org/TR/2006/REC-xml11-20060816/#NT-EncodingDecl</a>
 | ||
| and <a class="reference external" href="https://www.iana.org/assignments/character-sets/character-sets.xhtml">https://www.iana.org/assignments/character-sets/character-sets.xhtml</a>.</p>
 | ||
| </aside>
 | ||
| </aside>
 | ||
| </section>
 | ||
| </section>
 | ||
| 
 | ||
| 
 | ||
|             <div class="clearer"></div>
 | ||
|           </div>
 | ||
|         </div>
 | ||
|       </div>
 | ||
|       <div class="sphinxsidebar" role="navigation" aria-label="Main">
 | ||
|         <div class="sphinxsidebarwrapper">
 | ||
|   <div>
 | ||
|     <h3><a href="../contents.html">Table of Contents</a></h3>
 | ||
|     <ul>
 | ||
| <li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.parsers.expat</span></code> — Fast XML parsing using Expat</a><ul>
 | ||
| <li><a class="reference internal" href="#xmlparser-objects">XMLParser Objects</a></li>
 | ||
| <li><a class="reference internal" href="#expaterror-exceptions">ExpatError Exceptions</a></li>
 | ||
| <li><a class="reference internal" href="#example">Example</a></li>
 | ||
| <li><a class="reference internal" href="#module-xml.parsers.expat.model">Content Model Descriptions</a></li>
 | ||
| <li><a class="reference internal" href="#module-xml.parsers.expat.errors">Expat error constants</a></li>
 | ||
| </ul>
 | ||
| </li>
 | ||
| </ul>
 | ||
| 
 | ||
|   </div>
 | ||
|   <div>
 | ||
|     <h4>Previous topic</h4>
 | ||
|     <p class="topless"><a href="xml.sax.reader.html"
 | ||
|                           title="previous chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.sax.xmlreader</span></code> — Interface for XML parsers</a></p>
 | ||
|   </div>
 | ||
|   <div>
 | ||
|     <h4>Next topic</h4>
 | ||
|     <p class="topless"><a href="internet.html"
 | ||
|                           title="next chapter">Internet Protocols and Support</a></p>
 | ||
|   </div>
 | ||
|   <div role="note" aria-label="source link">
 | ||
|     <h3>This Page</h3>
 | ||
|     <ul class="this-page-menu">
 | ||
|       <li><a href="../bugs.html">Report a Bug</a></li>
 | ||
|       <li>
 | ||
|         <a href="https://github.com/python/cpython/blob/main/Doc/library/pyexpat.rst"
 | ||
|             rel="nofollow">Show Source
 | ||
|         </a>
 | ||
|       </li>
 | ||
|     </ul>
 | ||
|   </div>
 | ||
|         </div>
 | ||
| <div id="sidebarbutton" title="Collapse sidebar">
 | ||
| <span>«</span>
 | ||
| </div>
 | ||
| 
 | ||
|       </div>
 | ||
|       <div class="clearer"></div>
 | ||
|     </div>  
 | ||
|     <div class="related" role="navigation" aria-label="Related">
 | ||
|       <h3>Navigation</h3>
 | ||
|       <ul>
 | ||
|         <li class="right" style="margin-right: 10px">
 | ||
|           <a href="../genindex.html" title="General Index"
 | ||
|              >index</a></li>
 | ||
|         <li class="right" >
 | ||
|           <a href="../py-modindex.html" title="Python Module Index"
 | ||
|              >modules</a> |</li>
 | ||
|         <li class="right" >
 | ||
|           <a href="internet.html" title="Internet Protocols and Support"
 | ||
|              >next</a> |</li>
 | ||
|         <li class="right" >
 | ||
|           <a href="xml.sax.reader.html" title="xml.sax.xmlreader — Interface for XML parsers"
 | ||
|              >previous</a> |</li>
 | ||
| 
 | ||
|           <li><img src="../_static/py.svg" alt="Python logo" style="vertical-align: middle; margin-top: -1px"/></li>
 | ||
|           <li><a href="https://www.python.org/">Python</a> »</li>
 | ||
|           <li class="switchers">
 | ||
|             <div class="language_switcher_placeholder"></div>
 | ||
|             <div class="version_switcher_placeholder"></div>
 | ||
|           </li>
 | ||
|           <li>
 | ||
|               
 | ||
|           </li>
 | ||
|     <li id="cpython-language-and-version">
 | ||
|       <a href="../index.html">3.13.3 Documentation</a> »
 | ||
|     </li>
 | ||
| 
 | ||
|           <li class="nav-item nav-item-1"><a href="index.html" >The Python Standard Library</a> »</li>
 | ||
|           <li class="nav-item nav-item-2"><a href="markup.html" >Structured Markup Processing Tools</a> »</li>
 | ||
|         <li class="nav-item nav-item-this"><a href=""><code class="xref py py-mod docutils literal notranslate"><span class="pre">xml.parsers.expat</span></code> — Fast XML parsing using Expat</a></li>
 | ||
|                 <li class="right">
 | ||
|                     
 | ||
| 
 | ||
|     <div class="inline-search" role="search">
 | ||
|         <form class="inline-search" action="../search.html" method="get">
 | ||
|           <input placeholder="Quick search" aria-label="Quick search" type="search" name="q" id="search-box" />
 | ||
|           <input type="submit" value="Go" />
 | ||
|         </form>
 | ||
|     </div>
 | ||
|                      |
 | ||
|                 </li>
 | ||
|             <li class="right">
 | ||
| <label class="theme-selector-label">
 | ||
|     Theme
 | ||
|     <select class="theme-selector" oninput="activateTheme(this.value)">
 | ||
|         <option value="auto" selected>Auto</option>
 | ||
|         <option value="light">Light</option>
 | ||
|         <option value="dark">Dark</option>
 | ||
|     </select>
 | ||
| </label> |</li>
 | ||
|             
 | ||
|       </ul>
 | ||
|     </div>  
 | ||
|     <div class="footer">
 | ||
|     © 
 | ||
|       <a href="../copyright.html">
 | ||
|     
 | ||
|     Copyright
 | ||
|     
 | ||
|       </a>
 | ||
|      2001-2025, Python Software Foundation.
 | ||
|     <br />
 | ||
|     This page is licensed under the Python Software Foundation License Version 2.
 | ||
|     <br />
 | ||
|     Examples, recipes, and other code in the documentation are additionally licensed under the Zero Clause BSD License.
 | ||
|     <br />
 | ||
|     
 | ||
|       See <a href="/license.html">History and License</a> for more information.<br />
 | ||
|     
 | ||
|     
 | ||
|     <br />
 | ||
| 
 | ||
|     The Python Software Foundation is a non-profit corporation.
 | ||
| <a href="https://www.python.org/psf/donations/">Please donate.</a>
 | ||
| <br />
 | ||
|     <br />
 | ||
|       Last updated on Apr 08, 2025 (14:33 UTC).
 | ||
|     
 | ||
|       <a href="/bugs.html">Found a bug</a>?
 | ||
|     
 | ||
|     <br />
 | ||
| 
 | ||
|     Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
 | ||
|     </div>
 | ||
| 
 | ||
|   </body>
 | ||
| </html> |