1 <?xml version="1.0" encoding="ascii"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "DTD/xhtml1-transitional.dtd">
4 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6 <title>lxml.etree._ElementTree</title>
7 <link rel="stylesheet" href="epydoc.css" type="text/css" />
8 <script type="text/javascript" src="epydoc.js"></script>
11 <body bgcolor="white" text="black" link="blue" vlink="#204080"
13 <!-- ==================== NAVIGATION BAR ==================== -->
14 <table class="navbar" border="0" width="100%" cellpadding="0"
15 bgcolor="#a0c0ff" cellspacing="0">
18 <th> <a
19 href="lxml-module.html">Home</a> </th>
22 <th> <a
23 href="module-tree.html">Trees</a> </th>
26 <th> <a
27 href="identifier-index.html">Indices</a> </th>
30 <th> <a
31 href="help.html">Help</a> </th>
33 <!-- Project homepage -->
34 <th class="navbar" align="right" width="100%">
35 <table border="0" cellpadding="0" cellspacing="0">
36 <tr><th class="navbar" align="center"
37 ><a class="navbar" target="_top" href="/">lxml API</a></th>
41 <table width="100%" cellpadding="0" cellspacing="0">
44 <span class="breadcrumbs">
45 <a href="lxml-module.html">Package lxml</a> ::
46 <a href="lxml.etree-module.html">Module etree</a> ::
47 Class _ElementTree
51 <table cellpadding="0" cellspacing="0">
52 <!-- hide/show private -->
53 <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
54 onclick="toggle_private();">hide private</a>]</span></td></tr>
55 <tr><td align="right"><span class="options"
56 >[<a href="frames.html" target="_top">frames</a
57 >] | <a href="lxml.etree._ElementTree-class.html"
58 target="_top">no frames</a>]</span></td></tr>
63 <!-- ==================== CLASS DESCRIPTION ==================== -->
64 <h1 class="epydoc">Class _ElementTree</h1><p class="nomargin-top"></p>
65 <pre class="base-tree">
68 <strong class="uidshort">_ElementTree</strong>
71 <dl><dt>Known Subclasses:</dt>
73 <ul class="subclass-list">
74 <li class="private"><a href="lxml.etree._XSLTResultTree-class.html" onclick="show_private();">_XSLTResultTree</a></li> </ul>
78 <!-- ==================== INSTANCE METHODS ==================== -->
79 <a name="section-InstanceMethods"></a>
80 <table class="summary" border="1" cellpadding="3"
81 cellspacing="0" width="100%" bgcolor="white">
82 <tr bgcolor="#70b0f0" class="table-header">
83 <td colspan="2" class="table-header">
84 <table border="0" cellpadding="0" cellspacing="0" width="100%">
86 <td align="left"><span class="table-header">Instance Methods</span></td>
87 <td align="right" valign="top"
88 ><span class="options">[<a href="#section-InstanceMethods"
89 class="privatelink" onclick="toggle_private();"
90 >hide private</a>]</span></td>
96 <td width="15%" align="right" valign="top" class="summary">
97 <span class="summary-type"> </span>
98 </td><td class="summary">
99 <table width="100%" cellpadding="0" cellspacing="0" border="0">
101 <td><span class="summary-sig"><a name="__copy__"></a><span class="summary-sig-name">__copy__</span>(<span class="summary-sig-arg">...</span>)</span></td>
102 <td align="right" valign="top">
112 <td width="15%" align="right" valign="top" class="summary">
113 <span class="summary-type"> </span>
114 </td><td class="summary">
115 <table width="100%" cellpadding="0" cellspacing="0" border="0">
117 <td><span class="summary-sig"><a name="__deepcopy__"></a><span class="summary-sig-name">__deepcopy__</span>(<span class="summary-sig-arg">...</span>)</span></td>
118 <td align="right" valign="top">
128 <td width="15%" align="right" valign="top" class="summary">
129 <span class="summary-type">a new object with type S, a subtype of T</span>
130 </td><td class="summary">
131 <table width="100%" cellpadding="0" cellspacing="0" border="0">
133 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#__new__" class="summary-sig-name">__new__</a>(<span class="summary-sig-arg">T</span>,
134 <span class="summary-sig-arg">S</span>,
135 <span class="summary-sig-arg">...</span>)</span></td>
136 <td align="right" valign="top">
146 <td width="15%" align="right" valign="top" class="summary">
147 <span class="summary-type"> </span>
148 </td><td class="summary">
149 <table width="100%" cellpadding="0" cellspacing="0" border="0">
151 <td><span class="summary-sig"><a name="_setroot"></a><span class="summary-sig-name">_setroot</span>(<span class="summary-sig-arg">self</span>,
152 <span class="summary-sig-arg">root</span>)</span><br />
153 Relocate the ElementTree to a new root node.</td>
154 <td align="right" valign="top">
164 <td width="15%" align="right" valign="top" class="summary">
165 <span class="summary-type"> </span>
166 </td><td class="summary">
167 <table width="100%" cellpadding="0" cellspacing="0" border="0">
169 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#find" class="summary-sig-name">find</a>(<span class="summary-sig-arg">self</span>,
170 <span class="summary-sig-arg">path</span>,
171 <span class="summary-sig-arg">namespaces</span>=<span class="summary-sig-default">None</span>)</span><br />
172 Finds the first toplevel element with given tag. Same as
173 <tt class="rst-docutils literal"><span class="pre">tree.getroot().find(path)</span></tt>.</td>
174 <td align="right" valign="top">
184 <td width="15%" align="right" valign="top" class="summary">
185 <span class="summary-type"> </span>
186 </td><td class="summary">
187 <table width="100%" cellpadding="0" cellspacing="0" border="0">
189 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#findall" class="summary-sig-name">findall</a>(<span class="summary-sig-arg">self</span>,
190 <span class="summary-sig-arg">path</span>,
191 <span class="summary-sig-arg">namespaces</span>=<span class="summary-sig-default">None</span>)</span><br />
192 Finds all elements matching the ElementPath expression. Same as
193 getroot().findall(path).</td>
194 <td align="right" valign="top">
204 <td width="15%" align="right" valign="top" class="summary">
205 <span class="summary-type"> </span>
206 </td><td class="summary">
207 <table width="100%" cellpadding="0" cellspacing="0" border="0">
209 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#findtext" class="summary-sig-name">findtext</a>(<span class="summary-sig-arg">self</span>,
210 <span class="summary-sig-arg">path</span>,
211 <span class="summary-sig-arg">default</span>=<span class="summary-sig-default">None</span>,
212 <span class="summary-sig-arg">namespaces</span>=<span class="summary-sig-default">None</span>)</span><br />
213 Finds the text for the first element matching the ElementPath
214 expression. Same as getroot().findtext(path)</td>
215 <td align="right" valign="top">
225 <td width="15%" align="right" valign="top" class="summary">
226 <span class="summary-type"> </span>
227 </td><td class="summary">
228 <table width="100%" cellpadding="0" cellspacing="0" border="0">
230 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#getelementpath" class="summary-sig-name">getelementpath</a>(<span class="summary-sig-arg">self</span>,
231 <span class="summary-sig-arg">element</span>)</span><br />
232 Returns a structural, absolute ElementPath expression to find the
233 element. This path can be used in the .find() method to look up
234 the element, provided that the elements along the path and their
235 list of immediate children were not modified in between.</td>
236 <td align="right" valign="top">
246 <td width="15%" align="right" valign="top" class="summary">
247 <span class="summary-type"> </span>
248 </td><td class="summary">
249 <table width="100%" cellpadding="0" cellspacing="0" border="0">
251 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#getiterator" class="summary-sig-name">getiterator</a>(<span class="summary-sig-arg">self</span>,
252 <span class="summary-sig-arg">tag</span>=<span class="summary-sig-default">None</span>,
253 <span class="summary-sig-arg">*tags</span>)</span><br />
254 Returns a sequence or iterator of all elements in document order
255 (depth first pre-order), starting with the root element.</td>
256 <td align="right" valign="top">
266 <td width="15%" align="right" valign="top" class="summary">
267 <span class="summary-type"> </span>
268 </td><td class="summary">
269 <table width="100%" cellpadding="0" cellspacing="0" border="0">
271 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#getpath" class="summary-sig-name">getpath</a>(<span class="summary-sig-arg">self</span>,
272 <span class="summary-sig-arg">element</span>)</span><br />
273 Returns a structural, absolute XPath expression to find the element.</td>
274 <td align="right" valign="top">
284 <td width="15%" align="right" valign="top" class="summary">
285 <span class="summary-type"> </span>
286 </td><td class="summary">
287 <table width="100%" cellpadding="0" cellspacing="0" border="0">
289 <td><span class="summary-sig"><a name="getroot"></a><span class="summary-sig-name">getroot</span>(<span class="summary-sig-arg">self</span>)</span><br />
290 Gets the root element for this tree.</td>
291 <td align="right" valign="top">
301 <td width="15%" align="right" valign="top" class="summary">
302 <span class="summary-type"> </span>
303 </td><td class="summary">
304 <table width="100%" cellpadding="0" cellspacing="0" border="0">
306 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#iter" class="summary-sig-name">iter</a>(<span class="summary-sig-arg">self</span>,
307 <span class="summary-sig-arg">tag</span>=<span class="summary-sig-default">None</span>,
308 <span class="summary-sig-arg">*tags</span>)</span><br />
309 Creates an iterator for the root element. The iterator loops over
310 all elements in this tree, in document order. Note that siblings
311 of the root element (comments or processing instructions) are not
312 returned by the iterator.</td>
313 <td align="right" valign="top">
323 <td width="15%" align="right" valign="top" class="summary">
324 <span class="summary-type"> </span>
325 </td><td class="summary">
326 <table width="100%" cellpadding="0" cellspacing="0" border="0">
328 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#iterfind" class="summary-sig-name">iterfind</a>(<span class="summary-sig-arg">self</span>,
329 <span class="summary-sig-arg">path</span>,
330 <span class="summary-sig-arg">namespaces</span>=<span class="summary-sig-default">None</span>)</span><br />
331 Iterates over all elements matching the ElementPath expression.
332 Same as getroot().iterfind(path).</td>
333 <td align="right" valign="top">
343 <td width="15%" align="right" valign="top" class="summary">
344 <span class="summary-type"> </span>
345 </td><td class="summary">
346 <table width="100%" cellpadding="0" cellspacing="0" border="0">
348 <td><span class="summary-sig"><a name="parse"></a><span class="summary-sig-name">parse</span>(<span class="summary-sig-arg">self</span>,
349 <span class="summary-sig-arg">source</span>,
350 <span class="summary-sig-arg">parser</span>=<span class="summary-sig-default">None</span>,
351 <span class="summary-sig-arg">base_url</span>=<span class="summary-sig-default">None</span>)</span><br />
352 Updates self with the content of source and returns its root.</td>
353 <td align="right" valign="top">
363 <td width="15%" align="right" valign="top" class="summary">
364 <span class="summary-type"> </span>
365 </td><td class="summary">
366 <table width="100%" cellpadding="0" cellspacing="0" border="0">
368 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#relaxng" class="summary-sig-name">relaxng</a>(<span class="summary-sig-arg">self</span>,
369 <span class="summary-sig-arg">relaxng</span>)</span><br />
370 Validate this document using other document.</td>
371 <td align="right" valign="top">
381 <td width="15%" align="right" valign="top" class="summary">
382 <span class="summary-type"> </span>
383 </td><td class="summary">
384 <table width="100%" cellpadding="0" cellspacing="0" border="0">
386 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#write" class="summary-sig-name">write</a>(<span class="summary-sig-arg">self</span>,
387 <span class="summary-sig-arg">file</span>,
388 <span class="summary-sig-arg">encoding</span>=<span class="summary-sig-default">None</span>,
389 <span class="summary-sig-arg">method</span>=<span class="summary-sig-default">"xml"</span>,
390 <span class="summary-sig-arg">pretty_print</span>=<span class="summary-sig-default">False</span>,
391 <span class="summary-sig-arg">xml_declaration</span>=<span class="summary-sig-default">None</span>,
392 <span class="summary-sig-arg">with_tail</span>=<span class="summary-sig-default">True</span>,
393 <span class="summary-sig-arg">standalone</span>=<span class="summary-sig-default">None</span>,
394 <span class="summary-sig-arg">doctype</span>=<span class="summary-sig-default">None</span>,
395 <span class="summary-sig-arg">compression</span>=<span class="summary-sig-default">0</span>,
396 <span class="summary-sig-arg">exclusive</span>=<span class="summary-sig-default">False</span>,
397 <span class="summary-sig-arg">inclusive_ns_prefixes</span>=<span class="summary-sig-default">None</span>,
398 <span class="summary-sig-arg">with_comments</span>=<span class="summary-sig-default">True</span>,
399 <span class="summary-sig-arg">strip_text</span>=<span class="summary-sig-default">False</span>)</span><br />
400 Write the tree to a filename, file or file-like object.</td>
401 <td align="right" valign="top">
411 <td width="15%" align="right" valign="top" class="summary">
412 <span class="summary-type"> </span>
413 </td><td class="summary">
414 <table width="100%" cellpadding="0" cellspacing="0" border="0">
416 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#write_c14n" class="summary-sig-name">write_c14n</a>(<span class="summary-sig-arg">self</span>,
417 <span class="summary-sig-arg">file</span>,
418 <span class="summary-sig-arg">exclusive</span>=<span class="summary-sig-default">False</span>,
419 <span class="summary-sig-arg">with_comments</span>=<span class="summary-sig-default">True</span>,
420 <span class="summary-sig-arg">compression</span>=<span class="summary-sig-default">0</span>,
421 <span class="summary-sig-arg">inclusive_ns_prefixes</span>=<span class="summary-sig-default">None</span>)</span><br />
422 C14N write of document. Always writes UTF-8.</td>
423 <td align="right" valign="top">
433 <td width="15%" align="right" valign="top" class="summary">
434 <span class="summary-type"> </span>
435 </td><td class="summary">
436 <table width="100%" cellpadding="0" cellspacing="0" border="0">
438 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#xinclude" class="summary-sig-name">xinclude</a>(<span class="summary-sig-arg">self</span>)</span><br />
439 Process the XInclude nodes in this document and include the
440 referenced XML fragments.</td>
441 <td align="right" valign="top">
451 <td width="15%" align="right" valign="top" class="summary">
452 <span class="summary-type"> </span>
453 </td><td class="summary">
454 <table width="100%" cellpadding="0" cellspacing="0" border="0">
456 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#xmlschema" class="summary-sig-name">xmlschema</a>(<span class="summary-sig-arg">self</span>,
457 <span class="summary-sig-arg">xmlschema</span>)</span><br />
458 Validate this document using other document.</td>
459 <td align="right" valign="top">
469 <td width="15%" align="right" valign="top" class="summary">
470 <span class="summary-type"> </span>
471 </td><td class="summary">
472 <table width="100%" cellpadding="0" cellspacing="0" border="0">
474 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#xpath" class="summary-sig-name">xpath</a>(<span class="summary-sig-arg">self</span>,
475 <span class="summary-sig-arg">_path</span>,
476 <span class="summary-sig-arg">namespaces</span>=<span class="summary-sig-default">None</span>,
477 <span class="summary-sig-arg">extensions</span>=<span class="summary-sig-default">None</span>,
478 <span class="summary-sig-arg">smart_strings</span>=<span class="summary-sig-default">True</span>,
479 <span class="summary-sig-arg">**_variables</span>)</span><br />
480 XPath evaluate in context of document.</td>
481 <td align="right" valign="top">
491 <td width="15%" align="right" valign="top" class="summary">
492 <span class="summary-type"> </span>
493 </td><td class="summary">
494 <table width="100%" cellpadding="0" cellspacing="0" border="0">
496 <td><span class="summary-sig"><a href="lxml.etree._ElementTree-class.html#xslt" class="summary-sig-name">xslt</a>(<span class="summary-sig-arg">self</span>,
497 <span class="summary-sig-arg">_xslt</span>,
498 <span class="summary-sig-arg">extensions</span>=<span class="summary-sig-default">None</span>,
499 <span class="summary-sig-arg">access_control</span>=<span class="summary-sig-default">None</span>,
500 <span class="summary-sig-arg">**_kw</span>)</span><br />
501 Transform this document using other document.</td>
502 <td align="right" valign="top">
512 <td colspan="2" class="summary">
513 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
514 <code>__delattr__</code>,
515 <code>__format__</code>,
516 <code>__getattribute__</code>,
517 <code>__hash__</code>,
518 <code>__init__</code>,
519 <code>__reduce__</code>,
520 <code>__reduce_ex__</code>,
521 <code>__repr__</code>,
522 <code>__setattr__</code>,
523 <code>__sizeof__</code>,
524 <code>__str__</code>,
525 <code>__subclasshook__</code>
530 <!-- ==================== PROPERTIES ==================== -->
531 <a name="section-Properties"></a>
532 <table class="summary" border="1" cellpadding="3"
533 cellspacing="0" width="100%" bgcolor="white">
534 <tr bgcolor="#70b0f0" class="table-header">
535 <td colspan="2" class="table-header">
536 <table border="0" cellpadding="0" cellspacing="0" width="100%">
538 <td align="left"><span class="table-header">Properties</span></td>
539 <td align="right" valign="top"
540 ><span class="options">[<a href="#section-Properties"
541 class="privatelink" onclick="toggle_private();"
542 >hide private</a>]</span></td>
548 <td width="15%" align="right" valign="top" class="summary">
549 <span class="summary-type"> </span>
550 </td><td class="summary">
551 <a name="docinfo"></a><span class="summary-name">docinfo</span><br />
552 Information about the document provided by parser and DTD.
556 <td width="15%" align="right" valign="top" class="summary">
557 <span class="summary-type"> </span>
558 </td><td class="summary">
559 <a name="parser"></a><span class="summary-name">parser</span><br />
560 The parser that was used to parse the document in this ElementTree.
564 <td colspan="2" class="summary">
565 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
566 <code>__class__</code>
571 <!-- ==================== METHOD DETAILS ==================== -->
572 <a name="section-MethodDetails"></a>
573 <table class="details" border="1" cellpadding="3"
574 cellspacing="0" width="100%" bgcolor="white">
575 <tr bgcolor="#70b0f0" class="table-header">
576 <td colspan="2" class="table-header">
577 <table border="0" cellpadding="0" cellspacing="0" width="100%">
579 <td align="left"><span class="table-header">Method Details</span></td>
580 <td align="right" valign="top"
581 ><span class="options">[<a href="#section-MethodDetails"
582 class="privatelink" onclick="toggle_private();"
583 >hide private</a>]</span></td>
589 <a name="__new__"></a>
591 <table class="details" border="1" cellpadding="3"
592 cellspacing="0" width="100%" bgcolor="white">
594 <table width="100%" cellpadding="0" cellspacing="0" border="0">
595 <tr valign="top"><td>
596 <h3 class="epydoc"><span class="sig"><span class="sig-name">__new__</span>(<span class="sig-arg">T</span>,
597 <span class="sig-arg">S</span>,
598 <span class="sig-arg">...</span>)</span>
600 </td><td align="right" valign="top"
607 <dt>Returns: a new object with type S, a subtype of T</dt>
616 <table class="details" border="1" cellpadding="3"
617 cellspacing="0" width="100%" bgcolor="white">
619 <table width="100%" cellpadding="0" cellspacing="0" border="0">
620 <tr valign="top"><td>
621 <h3 class="epydoc"><span class="sig"><span class="sig-name">find</span>(<span class="sig-arg">self</span>,
622 <span class="sig-arg">path</span>,
623 <span class="sig-arg">namespaces</span>=<span class="sig-default">None</span>)</span>
625 </td><td align="right" valign="top"
630 <p>Finds the first toplevel element with given tag. Same as
631 <tt class="rst-docutils literal"><span class="pre">tree.getroot().find(path)</span></tt>.</p>
632 <p>The optional <tt class="rst-docutils literal">namespaces</tt> argument accepts a
633 prefix-to-namespace mapping that allows the usage of XPath
634 prefixes in the path expression.</p>
639 <a name="findall"></a>
641 <table class="details" border="1" cellpadding="3"
642 cellspacing="0" width="100%" bgcolor="white">
644 <table width="100%" cellpadding="0" cellspacing="0" border="0">
645 <tr valign="top"><td>
646 <h3 class="epydoc"><span class="sig"><span class="sig-name">findall</span>(<span class="sig-arg">self</span>,
647 <span class="sig-arg">path</span>,
648 <span class="sig-arg">namespaces</span>=<span class="sig-default">None</span>)</span>
650 </td><td align="right" valign="top"
655 <p>Finds all elements matching the ElementPath expression. Same as
656 getroot().findall(path).</p>
657 <p>The optional <tt class="rst-docutils literal">namespaces</tt> argument accepts a
658 prefix-to-namespace mapping that allows the usage of XPath
659 prefixes in the path expression.</p>
664 <a name="findtext"></a>
666 <table class="details" border="1" cellpadding="3"
667 cellspacing="0" width="100%" bgcolor="white">
669 <table width="100%" cellpadding="0" cellspacing="0" border="0">
670 <tr valign="top"><td>
671 <h3 class="epydoc"><span class="sig"><span class="sig-name">findtext</span>(<span class="sig-arg">self</span>,
672 <span class="sig-arg">path</span>,
673 <span class="sig-arg">default</span>=<span class="sig-default">None</span>,
674 <span class="sig-arg">namespaces</span>=<span class="sig-default">None</span>)</span>
676 </td><td align="right" valign="top"
681 <p>Finds the text for the first element matching the ElementPath
682 expression. Same as getroot().findtext(path)</p>
683 <p>The optional <tt class="rst-docutils literal">namespaces</tt> argument accepts a
684 prefix-to-namespace mapping that allows the usage of XPath
685 prefixes in the path expression.</p>
690 <a name="getelementpath"></a>
692 <table class="details" border="1" cellpadding="3"
693 cellspacing="0" width="100%" bgcolor="white">
695 <table width="100%" cellpadding="0" cellspacing="0" border="0">
696 <tr valign="top"><td>
697 <h3 class="epydoc"><span class="sig"><span class="sig-name">getelementpath</span>(<span class="sig-arg">self</span>,
698 <span class="sig-arg">element</span>)</span>
700 </td><td align="right" valign="top"
705 <p>Returns a structural, absolute ElementPath expression to find the
706 element. This path can be used in the .find() method to look up
707 the element, provided that the elements along the path and their
708 list of immediate children were not modified in between.</p>
709 <p>ElementPath has the advantage over an XPath expression (as returned
710 by the .getpath() method) that it does not require additional prefix
711 declarations. It is always self-contained.</p>
716 <a name="getiterator"></a>
718 <table class="details" border="1" cellpadding="3"
719 cellspacing="0" width="100%" bgcolor="white">
721 <table width="100%" cellpadding="0" cellspacing="0" border="0">
722 <tr valign="top"><td>
723 <h3 class="epydoc"><span class="sig"><span class="sig-name">getiterator</span>(<span class="sig-arg">self</span>,
724 <span class="sig-arg">tag</span>=<span class="sig-default">None</span>,
725 <span class="sig-arg">*tags</span>)</span>
727 </td><td align="right" valign="top"
732 <p>Returns a sequence or iterator of all elements in document order
733 (depth first pre-order), starting with the root element.</p>
734 <p>Can be restricted to find only elements with specific tags,
735 see <a href="lxml.etree._Element-class.html#iter" class="link">_Element.iter</a>.</p>
738 <div class="fields"> <p><strong>Deprecated:</strong>
739 Note that this method is deprecated as of
740 ElementTree 1.3 and lxml 2.0. It returns an iterator in
741 lxml, which diverges from the original ElementTree
742 behaviour. If you want an efficient iterator, use the
743 <tt class="rst-docutils literal">tree.iter()</tt> method instead. You should only use this
744 method in new code if you require backwards compatibility
745 with older versions of lxml or ElementTree.
747 </div></td></tr></table>
749 <a name="getpath"></a>
751 <table class="details" border="1" cellpadding="3"
752 cellspacing="0" width="100%" bgcolor="white">
754 <table width="100%" cellpadding="0" cellspacing="0" border="0">
755 <tr valign="top"><td>
756 <h3 class="epydoc"><span class="sig"><span class="sig-name">getpath</span>(<span class="sig-arg">self</span>,
757 <span class="sig-arg">element</span>)</span>
759 </td><td align="right" valign="top"
764 <p>Returns a structural, absolute XPath expression to find the element.</p>
765 <p>For namespaced elements, the expression uses prefixes from the
766 document, which therefore need to be provided in order to make any
767 use of the expression in XPath.</p>
768 <p>Also see the method getelementpath(self, element), which returns a
769 self-contained ElementPath expression.</p>
776 <table class="details" border="1" cellpadding="3"
777 cellspacing="0" width="100%" bgcolor="white">
779 <table width="100%" cellpadding="0" cellspacing="0" border="0">
780 <tr valign="top"><td>
781 <h3 class="epydoc"><span class="sig"><span class="sig-name">iter</span>(<span class="sig-arg">self</span>,
782 <span class="sig-arg">tag</span>=<span class="sig-default">None</span>,
783 <span class="sig-arg">*tags</span>)</span>
785 </td><td align="right" valign="top"
790 <p>Creates an iterator for the root element. The iterator loops over
791 all elements in this tree, in document order. Note that siblings
792 of the root element (comments or processing instructions) are not
793 returned by the iterator.</p>
794 <p>Can be restricted to find only elements with specific tags,
795 see <a href="lxml.etree._Element-class.html#iter" class="link">_Element.iter</a>.</p>
800 <a name="iterfind"></a>
802 <table class="details" border="1" cellpadding="3"
803 cellspacing="0" width="100%" bgcolor="white">
805 <table width="100%" cellpadding="0" cellspacing="0" border="0">
806 <tr valign="top"><td>
807 <h3 class="epydoc"><span class="sig"><span class="sig-name">iterfind</span>(<span class="sig-arg">self</span>,
808 <span class="sig-arg">path</span>,
809 <span class="sig-arg">namespaces</span>=<span class="sig-default">None</span>)</span>
811 </td><td align="right" valign="top"
816 <p>Iterates over all elements matching the ElementPath expression.
817 Same as getroot().iterfind(path).</p>
818 <p>The optional <tt class="rst-docutils literal">namespaces</tt> argument accepts a
819 prefix-to-namespace mapping that allows the usage of XPath
820 prefixes in the path expression.</p>
825 <a name="relaxng"></a>
827 <table class="details" border="1" cellpadding="3"
828 cellspacing="0" width="100%" bgcolor="white">
830 <table width="100%" cellpadding="0" cellspacing="0" border="0">
831 <tr valign="top"><td>
832 <h3 class="epydoc"><span class="sig"><span class="sig-name">relaxng</span>(<span class="sig-arg">self</span>,
833 <span class="sig-arg">relaxng</span>)</span>
835 </td><td align="right" valign="top"
840 <p>Validate this document using other document.</p>
841 <p>The relaxng argument is a tree that should contain a Relax NG schema.</p>
842 <p>Returns True or False, depending on whether validation
844 <p>Note: if you are going to apply the same Relax NG schema against
845 multiple documents, it is more efficient to use the RelaxNG
853 <table class="details" border="1" cellpadding="3"
854 cellspacing="0" width="100%" bgcolor="white">
856 <table width="100%" cellpadding="0" cellspacing="0" border="0">
857 <tr valign="top"><td>
858 <h3 class="epydoc"><span class="sig"><span class="sig-name">write</span>(<span class="sig-arg">self</span>,
859 <span class="sig-arg">file</span>,
860 <span class="sig-arg">encoding</span>=<span class="sig-default">None</span>,
861 <span class="sig-arg">method</span>=<span class="sig-default">"xml"</span>,
862 <span class="sig-arg">pretty_print</span>=<span class="sig-default">False</span>,
863 <span class="sig-arg">xml_declaration</span>=<span class="sig-default">None</span>,
864 <span class="sig-arg">with_tail</span>=<span class="sig-default">True</span>,
865 <span class="sig-arg">standalone</span>=<span class="sig-default">None</span>,
866 <span class="sig-arg">doctype</span>=<span class="sig-default">None</span>,
867 <span class="sig-arg">compression</span>=<span class="sig-default">0</span>,
868 <span class="sig-arg">exclusive</span>=<span class="sig-default">False</span>,
869 <span class="sig-arg">inclusive_ns_prefixes</span>=<span class="sig-default">None</span>,
870 <span class="sig-arg">with_comments</span>=<span class="sig-default">True</span>,
871 <span class="sig-arg">strip_text</span>=<span class="sig-default">False</span>)</span>
873 </td><td align="right" valign="top"
878 <p>Write the tree to a filename, file or file-like object.</p>
879 <p>Defaults to ASCII encoding and writing a declaration as needed.</p>
880 <p>The keyword argument 'method' selects the output method:
881 'xml', 'html', 'text' or 'c14n'. Default is 'xml'.</p>
882 <p>With <tt class="rst-docutils literal"><span class="pre">method="c14n"</span></tt> (C14N version 1), the options <tt class="rst-docutils literal">exclusive</tt>,
883 <tt class="rst-docutils literal">with_comments</tt> and <tt class="rst-docutils literal">inclusive_ns_prefixes</tt> request exclusive
884 C14N, include comments, and list the inclusive prefixes respectively.</p>
885 <p>With <tt class="rst-docutils literal"><span class="pre">method="c14n2"</span></tt> (C14N version 2), the <tt class="rst-docutils literal">with_comments</tt> and
886 <tt class="rst-docutils literal">strip_text</tt> options control the output of comments and text space
887 according to C14N 2.0.</p>
888 <p>Passing a boolean value to the <tt class="rst-docutils literal">standalone</tt> option will
889 output an XML declaration with the corresponding
890 <tt class="rst-docutils literal">standalone</tt> flag.</p>
891 <p>The <tt class="rst-docutils literal">doctype</tt> option allows passing in a plain string that will
892 be serialised before the XML tree. Note that passing in non
893 well-formed content here will make the XML output non well-formed.
894 Also, an existing doctype in the document tree will not be removed
895 when serialising an ElementTree instance.</p>
896 <p>The <tt class="rst-docutils literal">compression</tt> option enables GZip compression level 1-9.</p>
897 <p>The <tt class="rst-docutils literal">inclusive_ns_prefixes</tt> should be a list of namespace strings
898 (i.e. ['xs', 'xsi']) that will be promoted to the top-level element
899 during exclusive C14N serialisation. This parameter is ignored if
900 exclusive mode=False.</p>
901 <p>If exclusive=True and no list is provided, a namespace will only be
902 rendered if it is used by the immediate parent or one of its attributes
903 and its prefix and values have not already been rendered by an ancestor
904 of the namespace node's parent element.</p>
909 <a name="write_c14n"></a>
911 <table class="details" border="1" cellpadding="3"
912 cellspacing="0" width="100%" bgcolor="white">
914 <table width="100%" cellpadding="0" cellspacing="0" border="0">
915 <tr valign="top"><td>
916 <h3 class="epydoc"><span class="sig"><span class="sig-name">write_c14n</span>(<span class="sig-arg">self</span>,
917 <span class="sig-arg">file</span>,
918 <span class="sig-arg">exclusive</span>=<span class="sig-default">False</span>,
919 <span class="sig-arg">with_comments</span>=<span class="sig-default">True</span>,
920 <span class="sig-arg">compression</span>=<span class="sig-default">0</span>,
921 <span class="sig-arg">inclusive_ns_prefixes</span>=<span class="sig-default">None</span>)</span>
923 </td><td align="right" valign="top"
928 <p>C14N write of document. Always writes UTF-8.</p>
929 <p>The <tt class="rst-docutils literal">compression</tt> option enables GZip compression level 1-9.</p>
930 <p>The <tt class="rst-docutils literal">inclusive_ns_prefixes</tt> should be a list of namespace strings
931 (i.e. ['xs', 'xsi']) that will be promoted to the top-level element
932 during exclusive C14N serialisation. This parameter is ignored if
933 exclusive mode=False.</p>
934 <p>If exclusive=True and no list is provided, a namespace will only be
935 rendered if it is used by the immediate parent or one of its attributes
936 and its prefix and values have not already been rendered by an ancestor
937 of the namespace node's parent element.</p>
938 <p>NOTE: This method is deprecated as of lxml 4.4 and will be removed in a
939 future release. Use <tt class="rst-docutils literal">.write(f, <span class="pre">method="c14n")</span></tt> instead.</p>
944 <a name="xinclude"></a>
946 <table class="details" border="1" cellpadding="3"
947 cellspacing="0" width="100%" bgcolor="white">
949 <table width="100%" cellpadding="0" cellspacing="0" border="0">
950 <tr valign="top"><td>
951 <h3 class="epydoc"><span class="sig"><span class="sig-name">xinclude</span>(<span class="sig-arg">self</span>)</span>
953 </td><td align="right" valign="top"
958 <p>Process the XInclude nodes in this document and include the
959 referenced XML fragments.</p>
960 <p>There is support for loading files through the file system, HTTP and
962 <p>Note that XInclude does not support custom resolvers in Python space
963 due to restrictions of libxml2 <= 2.6.29.</p>
968 <a name="xmlschema"></a>
970 <table class="details" border="1" cellpadding="3"
971 cellspacing="0" width="100%" bgcolor="white">
973 <table width="100%" cellpadding="0" cellspacing="0" border="0">
974 <tr valign="top"><td>
975 <h3 class="epydoc"><span class="sig"><span class="sig-name">xmlschema</span>(<span class="sig-arg">self</span>,
976 <span class="sig-arg">xmlschema</span>)</span>
978 </td><td align="right" valign="top"
983 <p>Validate this document using other document.</p>
984 <p>The xmlschema argument is a tree that should contain an XML Schema.</p>
985 <p>Returns True or False, depending on whether validation
987 <p>Note: If you are going to apply the same XML Schema against
988 multiple documents, it is more efficient to use the XMLSchema
996 <table class="details" border="1" cellpadding="3"
997 cellspacing="0" width="100%" bgcolor="white">
999 <table width="100%" cellpadding="0" cellspacing="0" border="0">
1000 <tr valign="top"><td>
1001 <h3 class="epydoc"><span class="sig"><span class="sig-name">xpath</span>(<span class="sig-arg">self</span>,
1002 <span class="sig-arg">_path</span>,
1003 <span class="sig-arg">namespaces</span>=<span class="sig-default">None</span>,
1004 <span class="sig-arg">extensions</span>=<span class="sig-default">None</span>,
1005 <span class="sig-arg">smart_strings</span>=<span class="sig-default">True</span>,
1006 <span class="sig-arg">**_variables</span>)</span>
1008 </td><td align="right" valign="top"
1013 <p>XPath evaluate in context of document.</p>
1014 <p><tt class="rst-docutils literal">namespaces</tt> is an optional dictionary with prefix to namespace URI
1015 mappings, used by XPath. <tt class="rst-docutils literal">extensions</tt> defines additional extension
1017 <p>Returns a list (nodeset), or bool, float or string.</p>
1018 <p>In case of a list result, return Element for element nodes,
1019 string for text and attribute values.</p>
1020 <p>Note: if you are going to apply multiple XPath expressions
1021 against the same document, it is more efficient to use
1022 XPathEvaluator directly.</p>
1029 <table class="details" border="1" cellpadding="3"
1030 cellspacing="0" width="100%" bgcolor="white">
1032 <table width="100%" cellpadding="0" cellspacing="0" border="0">
1033 <tr valign="top"><td>
1034 <h3 class="epydoc"><span class="sig"><span class="sig-name">xslt</span>(<span class="sig-arg">self</span>,
1035 <span class="sig-arg">_xslt</span>,
1036 <span class="sig-arg">extensions</span>=<span class="sig-default">None</span>,
1037 <span class="sig-arg">access_control</span>=<span class="sig-default">None</span>,
1038 <span class="sig-arg">**_kw</span>)</span>
1040 </td><td align="right" valign="top"
1045 <p>Transform this document using other document.</p>
1046 <p>xslt is a tree that should be XSLT
1047 keyword parameters are XSLT transformation parameters.</p>
1048 <p>Returns the transformed tree.</p>
1049 <p>Note: if you are going to apply the same XSLT stylesheet against
1050 multiple documents, it is more efficient to use the XSLT
1057 <!-- ==================== NAVIGATION BAR ==================== -->
1058 <table class="navbar" border="0" width="100%" cellpadding="0"
1059 bgcolor="#a0c0ff" cellspacing="0">
1060 <tr valign="middle">
1062 <th> <a
1063 href="lxml-module.html">Home</a> </th>
1066 <th> <a
1067 href="module-tree.html">Trees</a> </th>
1070 <th> <a
1071 href="identifier-index.html">Indices</a> </th>
1074 <th> <a
1075 href="help.html">Help</a> </th>
1077 <!-- Project homepage -->
1078 <th class="navbar" align="right" width="100%">
1079 <table border="0" cellpadding="0" cellspacing="0">
1080 <tr><th class="navbar" align="center"
1081 ><a class="navbar" target="_top" href="/">lxml API</a></th>
1085 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
1087 <td align="left" class="footer">
1088 Generated by Epydoc 3.0.1
1089 on Wed Jan 29 12:26:21 2020
1091 <td align="right" class="footer">
1092 <a target="mainFrame" href="http://epydoc.sourceforge.net"
1093 >http://epydoc.sourceforge.net</a>
1098 <script type="text/javascript">
1100 // Private objects are initially displayed (because if
1101 // javascript is turned off then we want them to be
1102 // visible); but by default, we want to hide them. So hide
1103 // them unless we have a cookie that says to show them.