509c2fb61728e277ee848b00a5871e39d540878c
[platform/upstream/python-lxml.git] / doc / html / api / lxml.etree.XSLTExtension-class.html
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">
5 <head>
6   <title>lxml.etree.XSLTExtension</title>
7   <link rel="stylesheet" href="epydoc.css" type="text/css" />
8   <script type="text/javascript" src="epydoc.js"></script>
9 </head>
10
11 <body bgcolor="white" text="black" link="blue" vlink="#204080"
12       alink="#204080">
13 <!-- ==================== NAVIGATION BAR ==================== -->
14 <table class="navbar" border="0" width="100%" cellpadding="0"
15        bgcolor="#a0c0ff" cellspacing="0">
16   <tr valign="middle">
17   <!-- Home link -->
18       <th>&nbsp;&nbsp;&nbsp;<a
19         href="lxml-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
20
21   <!-- Tree link -->
22       <th>&nbsp;&nbsp;&nbsp;<a
23         href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
24
25   <!-- Index link -->
26       <th>&nbsp;&nbsp;&nbsp;<a
27         href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
28
29   <!-- Help link -->
30       <th>&nbsp;&nbsp;&nbsp;<a
31         href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
32
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>
38           </tr></table></th>
39   </tr>
40 </table>
41 <table width="100%" cellpadding="0" cellspacing="0">
42   <tr valign="top">
43     <td width="100%">
44       <span class="breadcrumbs">
45         <a href="lxml-module.html">Package&nbsp;lxml</a> ::
46         <a href="lxml.etree-module.html">Module&nbsp;etree</a> ::
47         Class&nbsp;XSLTExtension
48       </span>
49     </td>
50     <td>
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&nbsp;private</a>]</span></td></tr>
55         <tr><td align="right"><span class="options"
56             >[<a href="frames.html" target="_top">frames</a
57             >]&nbsp;|&nbsp;<a href="lxml.etree.XSLTExtension-class.html"
58             target="_top">no&nbsp;frames</a>]</span></td></tr>
59       </table>
60     </td>
61   </tr>
62 </table>
63 <!-- ==================== CLASS DESCRIPTION ==================== -->
64 <h1 class="epydoc">Class XSLTExtension</h1><p class="nomargin-top"></p>
65 <pre class="base-tree">
66 object --+
67          |
68         <strong class="uidshort">XSLTExtension</strong>
69 </pre>
70
71 <hr />
72 Base class of an XSLT extension element.
73
74 <!-- ==================== INSTANCE METHODS ==================== -->
75 <a name="section-InstanceMethods"></a>
76 <table class="summary" border="1" cellpadding="3"
77        cellspacing="0" width="100%" bgcolor="white">
78 <tr bgcolor="#70b0f0" class="table-header">
79   <td colspan="2" class="table-header">
80     <table border="0" cellpadding="0" cellspacing="0" width="100%">
81       <tr valign="top">
82         <td align="left"><span class="table-header">Instance Methods</span></td>
83         <td align="right" valign="top"
84          ><span class="options">[<a href="#section-InstanceMethods"
85          class="privatelink" onclick="toggle_private();"
86          >hide private</a>]</span></td>
87       </tr>
88     </table>
89   </td>
90 </tr>
91 <tr>
92     <td width="15%" align="right" valign="top" class="summary">
93       <span class="summary-type">a new object with type S, a subtype of T</span>
94     </td><td class="summary">
95       <table width="100%" cellpadding="0" cellspacing="0" border="0">
96         <tr>
97           <td><span class="summary-sig"><a href="lxml.etree.XSLTExtension-class.html#__new__" class="summary-sig-name">__new__</a>(<span class="summary-sig-arg">T</span>,
98         <span class="summary-sig-arg">S</span>,
99         <span class="summary-sig-arg">...</span>)</span></td>
100           <td align="right" valign="top">
101             
102             
103           </td>
104         </tr>
105       </table>
106       
107     </td>
108   </tr>
109 <tr>
110     <td width="15%" align="right" valign="top" class="summary">
111       <span class="summary-type">&nbsp;</span>
112     </td><td class="summary">
113       <table width="100%" cellpadding="0" cellspacing="0" border="0">
114         <tr>
115           <td><span class="summary-sig"><a href="lxml.etree.XSLTExtension-class.html#apply_templates" class="summary-sig-name">apply_templates</a>(<span class="summary-sig-arg">self</span>,
116         <span class="summary-sig-arg">context</span>,
117         <span class="summary-sig-arg">node</span>,
118         <span class="summary-sig-arg">output_parent</span>=<span class="summary-sig-default">None</span>,
119         <span class="summary-sig-arg">elements_only</span>=<span class="summary-sig-default">False</span>,
120         <span class="summary-sig-arg">remove_blank_text</span>=<span class="summary-sig-default">False</span>)</span><br />
121       Call this method to retrieve the result of applying templates
122 to an element.</td>
123           <td align="right" valign="top">
124             
125             
126           </td>
127         </tr>
128       </table>
129       
130     </td>
131   </tr>
132 <tr>
133     <td width="15%" align="right" valign="top" class="summary">
134       <span class="summary-type">&nbsp;</span>
135     </td><td class="summary">
136       <table width="100%" cellpadding="0" cellspacing="0" border="0">
137         <tr>
138           <td><span class="summary-sig"><a href="lxml.etree.XSLTExtension-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">self</span>,
139         <span class="summary-sig-arg">context</span>,
140         <span class="summary-sig-arg">self_node</span>,
141         <span class="summary-sig-arg">input_node</span>,
142         <span class="summary-sig-arg">output_parent</span>)</span><br />
143       Execute this extension element.</td>
144           <td align="right" valign="top">
145             
146             
147           </td>
148         </tr>
149       </table>
150       
151     </td>
152   </tr>
153 <tr>
154     <td width="15%" align="right" valign="top" class="summary">
155       <span class="summary-type">&nbsp;</span>
156     </td><td class="summary">
157       <table width="100%" cellpadding="0" cellspacing="0" border="0">
158         <tr>
159           <td><span class="summary-sig"><a href="lxml.etree.XSLTExtension-class.html#process_children" class="summary-sig-name">process_children</a>(<span class="summary-sig-arg">self</span>,
160         <span class="summary-sig-arg">context</span>,
161         <span class="summary-sig-arg">output_parent</span>=<span class="summary-sig-default">None</span>,
162         <span class="summary-sig-arg">elements_only</span>=<span class="summary-sig-default">False</span>,
163         <span class="summary-sig-arg">remove_blank_text</span>=<span class="summary-sig-default">False</span>)</span><br />
164       Call this method to process the XSLT content of the extension
165 element itself.</td>
166           <td align="right" valign="top">
167             
168             
169           </td>
170         </tr>
171       </table>
172       
173     </td>
174   </tr>
175   <tr>
176     <td colspan="2" class="summary">
177     <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
178       <code>__delattr__</code>,
179       <code>__format__</code>,
180       <code>__getattribute__</code>,
181       <code>__hash__</code>,
182       <code>__init__</code>,
183       <code>__reduce__</code>,
184       <code>__reduce_ex__</code>,
185       <code>__repr__</code>,
186       <code>__setattr__</code>,
187       <code>__sizeof__</code>,
188       <code>__str__</code>,
189       <code>__subclasshook__</code>
190       </p>
191     </td>
192   </tr>
193 </table>
194 <!-- ==================== PROPERTIES ==================== -->
195 <a name="section-Properties"></a>
196 <table class="summary" border="1" cellpadding="3"
197        cellspacing="0" width="100%" bgcolor="white">
198 <tr bgcolor="#70b0f0" class="table-header">
199   <td colspan="2" class="table-header">
200     <table border="0" cellpadding="0" cellspacing="0" width="100%">
201       <tr valign="top">
202         <td align="left"><span class="table-header">Properties</span></td>
203         <td align="right" valign="top"
204          ><span class="options">[<a href="#section-Properties"
205          class="privatelink" onclick="toggle_private();"
206          >hide private</a>]</span></td>
207       </tr>
208     </table>
209   </td>
210 </tr>
211   <tr>
212     <td colspan="2" class="summary">
213     <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
214       <code>__class__</code>
215       </p>
216     </td>
217   </tr>
218 </table>
219 <!-- ==================== METHOD DETAILS ==================== -->
220 <a name="section-MethodDetails"></a>
221 <table class="details" border="1" cellpadding="3"
222        cellspacing="0" width="100%" bgcolor="white">
223 <tr bgcolor="#70b0f0" class="table-header">
224   <td colspan="2" class="table-header">
225     <table border="0" cellpadding="0" cellspacing="0" width="100%">
226       <tr valign="top">
227         <td align="left"><span class="table-header">Method Details</span></td>
228         <td align="right" valign="top"
229          ><span class="options">[<a href="#section-MethodDetails"
230          class="privatelink" onclick="toggle_private();"
231          >hide private</a>]</span></td>
232       </tr>
233     </table>
234   </td>
235 </tr>
236 </table>
237 <a name="__new__"></a>
238 <div>
239 <table class="details" border="1" cellpadding="3"
240        cellspacing="0" width="100%" bgcolor="white">
241 <tr><td>
242   <table width="100%" cellpadding="0" cellspacing="0" border="0">
243   <tr valign="top"><td>
244   <h3 class="epydoc"><span class="sig"><span class="sig-name">__new__</span>(<span class="sig-arg">T</span>,
245         <span class="sig-arg">S</span>,
246         <span class="sig-arg">...</span>)</span>
247   </h3>
248   </td><td align="right" valign="top"
249     >&nbsp;
250     </td>
251   </tr></table>
252   
253   
254   <dl class="fields">
255     <dt>Returns: a new object with type S, a subtype of T</dt>
256     <dt>Overrides:
257         object.__new__
258     </dt>
259   </dl>
260 </td></tr></table>
261 </div>
262 <a name="apply_templates"></a>
263 <div>
264 <table class="details" border="1" cellpadding="3"
265        cellspacing="0" width="100%" bgcolor="white">
266 <tr><td>
267   <table width="100%" cellpadding="0" cellspacing="0" border="0">
268   <tr valign="top"><td>
269   <h3 class="epydoc"><span class="sig"><span class="sig-name">apply_templates</span>(<span class="sig-arg">self</span>,
270         <span class="sig-arg">context</span>,
271         <span class="sig-arg">node</span>,
272         <span class="sig-arg">output_parent</span>=<span class="sig-default">None</span>,
273         <span class="sig-arg">elements_only</span>=<span class="sig-default">False</span>,
274         <span class="sig-arg">remove_blank_text</span>=<span class="sig-default">False</span>)</span>
275   </h3>
276   </td><td align="right" valign="top"
277     >&nbsp;
278     </td>
279   </tr></table>
280   
281   <p>Call this method to retrieve the result of applying templates
282 to an element.</p>
283 <p>The return value is a list of elements or text strings that
284 were generated by the XSLT processor.  If you pass
285 <tt class="rst-docutils literal">elements_only=True</tt>, strings will be discarded from the result
286 list.  The option <tt class="rst-docutils literal">remove_blank_text=True</tt> will only discard
287 strings that consist entirely of whitespace (e.g. formatting).
288 These options do not apply to Elements, only to bare string results.</p>
289 <p>If you pass an Element as <code class="link">output_parent</code> parameter, the result
290 will instead be appended to the element (including attributes
291 etc.) and the return value will be <code class="link">None</code>.  This is a safe way
292 to generate content into the output document directly, without
293 having to take care of special values like text or attributes.
294 Note that the string discarding options will be ignored in this
295 case.</p>
296   <dl class="fields">
297   </dl>
298 </td></tr></table>
299 </div>
300 <a name="execute"></a>
301 <div>
302 <table class="details" border="1" cellpadding="3"
303        cellspacing="0" width="100%" bgcolor="white">
304 <tr><td>
305   <table width="100%" cellpadding="0" cellspacing="0" border="0">
306   <tr valign="top"><td>
307   <h3 class="epydoc"><span class="sig"><span class="sig-name">execute</span>(<span class="sig-arg">self</span>,
308         <span class="sig-arg">context</span>,
309         <span class="sig-arg">self_node</span>,
310         <span class="sig-arg">input_node</span>,
311         <span class="sig-arg">output_parent</span>)</span>
312   </h3>
313   </td><td align="right" valign="top"
314     >&nbsp;
315     </td>
316   </tr></table>
317   
318   <p>Execute this extension element.</p>
319 <p>Subclasses must override this method.  They may append
320 elements to the <code class="link">output_parent</code> element here, or set its text
321 content.  To this end, the <code class="link">input_node</code> provides read-only
322 access to the current node in the input document, and the
323 <code class="link">self_node</code> points to the extension element in the stylesheet.</p>
324 <p>Note that the <code class="link">output_parent</code> parameter may be <code class="link">None</code> if there
325 is no parent element in the current context (e.g. no content
326 was added to the output tree yet).</p>
327   <dl class="fields">
328   </dl>
329 </td></tr></table>
330 </div>
331 <a name="process_children"></a>
332 <div>
333 <table class="details" border="1" cellpadding="3"
334        cellspacing="0" width="100%" bgcolor="white">
335 <tr><td>
336   <table width="100%" cellpadding="0" cellspacing="0" border="0">
337   <tr valign="top"><td>
338   <h3 class="epydoc"><span class="sig"><span class="sig-name">process_children</span>(<span class="sig-arg">self</span>,
339         <span class="sig-arg">context</span>,
340         <span class="sig-arg">output_parent</span>=<span class="sig-default">None</span>,
341         <span class="sig-arg">elements_only</span>=<span class="sig-default">False</span>,
342         <span class="sig-arg">remove_blank_text</span>=<span class="sig-default">False</span>)</span>
343   </h3>
344   </td><td align="right" valign="top"
345     >&nbsp;
346     </td>
347   </tr></table>
348   
349   <p>Call this method to process the XSLT content of the extension
350 element itself.</p>
351 <p>The return value is a list of elements or text strings that
352 were generated by the XSLT processor.  If you pass
353 <tt class="rst-docutils literal">elements_only=True</tt>, strings will be discarded from the result
354 list.  The option <tt class="rst-docutils literal">remove_blank_text=True</tt> will only discard
355 strings that consist entirely of whitespace (e.g. formatting).
356 These options do not apply to Elements, only to bare string results.</p>
357 <p>If you pass an Element as <code class="link">output_parent</code> parameter, the result
358 will instead be appended to the element (including attributes
359 etc.) and the return value will be <code class="link">None</code>.  This is a safe way
360 to generate content into the output document directly, without
361 having to take care of special values like text or attributes.
362 Note that the string discarding options will be ignored in this
363 case.</p>
364   <dl class="fields">
365   </dl>
366 </td></tr></table>
367 </div>
368 <br />
369 <!-- ==================== NAVIGATION BAR ==================== -->
370 <table class="navbar" border="0" width="100%" cellpadding="0"
371        bgcolor="#a0c0ff" cellspacing="0">
372   <tr valign="middle">
373   <!-- Home link -->
374       <th>&nbsp;&nbsp;&nbsp;<a
375         href="lxml-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
376
377   <!-- Tree link -->
378       <th>&nbsp;&nbsp;&nbsp;<a
379         href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
380
381   <!-- Index link -->
382       <th>&nbsp;&nbsp;&nbsp;<a
383         href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
384
385   <!-- Help link -->
386       <th>&nbsp;&nbsp;&nbsp;<a
387         href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
388
389   <!-- Project homepage -->
390       <th class="navbar" align="right" width="100%">
391         <table border="0" cellpadding="0" cellspacing="0">
392           <tr><th class="navbar" align="center"
393             ><a class="navbar" target="_top" href="/">lxml API</a></th>
394           </tr></table></th>
395   </tr>
396 </table>
397 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
398   <tr>
399     <td align="left" class="footer">
400     Generated by Epydoc 3.0.1
401     on Wed Jan 29 12:26:21 2020
402     </td>
403     <td align="right" class="footer">
404       <a target="mainFrame" href="http://epydoc.sourceforge.net"
405         >http://epydoc.sourceforge.net</a>
406     </td>
407   </tr>
408 </table>
409
410 <script type="text/javascript">
411   <!--
412   // Private objects are initially displayed (because if
413   // javascript is turned off then we want them to be
414   // visible); but by default, we want to hide them.  So hide
415   // them unless we have a cookie that says to show them.
416   checkCookie();
417   // -->
418 </script>
419 </body>
420 </html>