summaryrefslogtreecommitdiff
path: root/doc/html/libxslt-xsltInternals.html
blob: b38ae3406b98fffa39daf069d72dae9e1b846b81 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
TD {font-family: Verdana,Arial,Helvetica}
BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
H1 {font-family: Verdana,Arial,Helvetica}
H2 {font-family: Verdana,Arial,Helvetica}
H3 {font-family: Verdana,Arial,Helvetica}
A:link, A:visited, A:active { text-decoration: underline }
    </style><title>Module xsltInternals from libxslt</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C logo" /></a><a href="http://www.redhat.com"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/XSLT/"><img src="../Libxslt-Logo-180x168.gif" alt="Made with Libxslt Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1>The XSLT C library for Gnome</h1><h2>Module xsltInternals from libxslt</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="../ChangeLog.html">ChangeLog</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xslt/">Mail archive</a></li><li><a href="http://xmlsoft.org/">XML libxml</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">Bug Tracker</a></li><li><a href="http://xsldbg.sourceforge.net/">Xsldbg Debugger</a></li><li><a href="http://www.mod-xslt.com/mod-xslt/">Apache module</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxslt-xslt.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-xslt.html">xslt</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">Home</a></th><th align="right"><a href="libxslt-xsltexports.html">xsltexports</a></th><td><a accesskey="n" href="libxslt-xsltexports.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>Internal data structures, constants and functions used by the XSLT engine. They are not part of the API or ABI, i.e. they can change without prior notice, use carefully. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#CHECK_STOPPED">CHECK_STOPPED</a></pre><pre class="programlisting">#define <a href="#CHECK_STOPPED0">CHECK_STOPPED0</a></pre><pre class="programlisting">#define <a href="#CHECK_STOPPEDE">CHECK_STOPPEDE</a></pre><pre class="programlisting">#define <a href="#XSLT_MAX_SORT">XSLT_MAX_SORT</a></pre><pre class="programlisting">#define <a href="#XSLT_PAT_NO_PRIORITY">XSLT_PAT_NO_PRIORITY</a></pre><pre class="programlisting">#define <a href="#XSLT_RUNTIME_EXTRA">XSLT_RUNTIME_EXTRA</a></pre><pre class="programlisting">#define <a href="#XSLT_RUNTIME_EXTRA_FREE">XSLT_RUNTIME_EXTRA_FREE</a></pre><pre class="programlisting">#define <a href="#XSLT_RUNTIME_EXTRA_LST">XSLT_RUNTIME_EXTRA_LST</a></pre><pre class="programlisting">Structure <a href="#xsltDecimalFormat">xsltDecimalFormat</a><br />struct _xsltDecimalFormat
</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltDecimalFormat">xsltDecimalFormat</a> * <a name="xsltDecimalFormatPtr" id="xsltDecimalFormatPtr">xsltDecimalFormatPtr</a>
</pre><pre class="programlisting">Structure <a href="#xsltDocument">xsltDocument</a><br />struct _xsltDocument
</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltDocument">xsltDocument</a> * <a name="xsltDocumentPtr" id="xsltDocumentPtr">xsltDocumentPtr</a>
</pre><pre class="programlisting">Structure <a href="#xsltElemPreComp">xsltElemPreComp</a><br />struct _xsltElemPreComp
</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltElemPreComp">xsltElemPreComp</a> * <a name="xsltElemPreCompPtr" id="xsltElemPreCompPtr">xsltElemPreCompPtr</a>
</pre><pre class="programlisting">Enum <a href="#xsltOutputType">xsltOutputType</a>
</pre><pre class="programlisting">Structure <a href="#xsltRuntimeExtra">xsltRuntimeExtra</a><br />struct _xsltRuntimeExtra
</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltRuntimeExtra">xsltRuntimeExtra</a> * <a name="xsltRuntimeExtraPtr" id="xsltRuntimeExtraPtr">xsltRuntimeExtraPtr</a>
</pre><pre class="programlisting">Structure <a href="#xsltStackElem">xsltStackElem</a><br />struct _xsltStackElem
</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStackElem">xsltStackElem</a> * <a name="xsltStackElemPtr" id="xsltStackElemPtr">xsltStackElemPtr</a>
</pre><pre class="programlisting">Structure <a href="#xsltStylePreComp">xsltStylePreComp</a><br />struct _xsltStylePreComp
</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStylePreComp">xsltStylePreComp</a> * <a name="xsltStylePreCompPtr" id="xsltStylePreCompPtr">xsltStylePreCompPtr</a>
</pre><pre class="programlisting">Enum <a href="#xsltStyleType">xsltStyleType</a>
</pre><pre class="programlisting">Structure <a href="#xsltStylesheet">xsltStylesheet</a><br />struct _xsltStylesheet
</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStylesheet">xsltStylesheet</a> * <a name="xsltStylesheetPtr" id="xsltStylesheetPtr">xsltStylesheetPtr</a>
</pre><pre class="programlisting">Structure <a href="#xsltTemplate">xsltTemplate</a><br />struct _xsltTemplate
</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltTemplate">xsltTemplate</a> * <a name="xsltTemplatePtr" id="xsltTemplatePtr">xsltTemplatePtr</a>
</pre><pre class="programlisting">Structure <a href="#xsltTransformContext">xsltTransformContext</a><br />struct _xsltTransformContext
</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltTransformContext">xsltTransformContext</a> * <a name="xsltTransformContextPtr" id="xsltTransformContextPtr">xsltTransformContextPtr</a>
</pre><pre class="programlisting">Enum <a href="#xsltTransformState">xsltTransformState</a>
</pre><pre class="programlisting">int	<a href="#xsltAllocateExtra">xsltAllocateExtra</a>		(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
<pre class="programlisting">int	<a href="#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a>		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
<pre class="programlisting">void	<a href="#xsltCompileAttr">xsltCompileAttr</a>			(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br />					 xmlAttrPtr attr)</pre>
<pre class="programlisting">xmlDocPtr	<a href="#xsltCreateRVT">xsltCreateRVT</a>		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a>	<a href="#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a>	(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> sheet, <br />							 xmlChar * name)</pre>
<pre class="programlisting">Function type: <a href="#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a>
void	<a href="#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a>	(<a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp)
</pre>
<pre class="programlisting">xmlChar *	<a href="#xsltEvalAVT">xsltEvalAVT</a>		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 void * avt, <br />					 xmlNodePtr node)</pre>
<pre class="programlisting">xmlXPathError	<a href="#xsltFormatNumberConversion">xsltFormatNumberConversion</a>	(<a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a> self, <br />						 xmlChar * format, <br />						 double number, <br />						 xmlChar ** result)</pre>
<pre class="programlisting">void	<a href="#xsltFreeAVTList">xsltFreeAVTList</a>			(void * avt)</pre>
<pre class="programlisting">void	<a href="#xsltFreeRVTs">xsltFreeRVTs</a>			(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
<pre class="programlisting">void	<a href="#xsltFreeStackElemList">xsltFreeStackElemList</a>		(<a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> elem)</pre>
<pre class="programlisting">void	<a href="#xsltFreeStylesheet">xsltFreeStylesheet</a>		(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> sheet)</pre>
<pre class="programlisting">int	<a href="#xsltIsBlank">xsltIsBlank</a>			(xmlChar * str)</pre>
<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	<a href="#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a>	(xmlDocPtr doc)</pre>
<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	<a href="#xsltNewStylesheet">xsltNewStylesheet</a>	(void)</pre>
<pre class="programlisting">void	<a href="#xsltNumberFormat">xsltNumberFormat</a>		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 <a href="libxslt-numbersInternals.html#xsltNumberDataPtr">xsltNumberDataPtr</a> data, <br />					 xmlNodePtr node)</pre>
<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	<a href="#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a>	(xmlDocPtr doc)</pre>
<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	<a href="#xsltParseStylesheetFile">xsltParseStylesheetFile</a>	(const xmlChar * filename)</pre>
<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	<a href="#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a>	(xmlDocPtr doc, <br />							 <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
<pre class="programlisting">void	<a href="#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a>	(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br />					 xmlNodePtr cur)</pre>
<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	<a href="#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a>	(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> ret, <br />							 xmlDocPtr doc)</pre>
<pre class="programlisting">void	<a href="#xsltParseTemplateContent">xsltParseTemplateContent</a>	(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br />					 xmlNodePtr templ)</pre>
<pre class="programlisting">int	<a href="#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a>		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 xmlDocPtr RVT)</pre>
<pre class="programlisting">int	<a href="#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a>		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 xmlDocPtr RVT)</pre>
<pre class="programlisting">Function type: <a href="#xsltSortFunc">xsltSortFunc</a>
void	<a href="#xsltSortFunc">xsltSortFunc</a>			(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 xmlNodePtr * sorts, <br />					 int nbsorts)
</pre>
<pre class="programlisting">Function type: <a href="#xsltTransformFunction">xsltTransformFunction</a>
void	<a href="#xsltTransformFunction">xsltTransformFunction</a>		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 xmlNodePtr node, <br />					 xmlNodePtr inst, <br />					 <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp)
</pre>
<h2>Description</h2>
<h3><a name="CHECK_STOPPED" id="CHECK_STOPPED"></a>Macro: CHECK_STOPPED</h3><pre>#define CHECK_STOPPED</pre><p>Macro to check if the XSLT processing should be stopped. Will return from the function.</p>
<h3><a name="CHECK_STOPPED0" id="CHECK_STOPPED0"></a>Macro: CHECK_STOPPED0</h3><pre>#define CHECK_STOPPED0</pre><p>Macro to check if the XSLT processing should be stopped. Will return from the function with a 0 value.</p>
<h3><a name="CHECK_STOPPEDE" id="CHECK_STOPPEDE"></a>Macro: CHECK_STOPPEDE</h3><pre>#define CHECK_STOPPEDE</pre><p>Macro to check if the XSLT processing should be stopped. Will goto the error: label.</p>
<h3><a name="XSLT_MAX_SORT" id="XSLT_MAX_SORT"></a>Macro: XSLT_MAX_SORT</h3><pre>#define XSLT_MAX_SORT</pre><p>Max number of specified xsl:sort on an element.</p>
<h3><a name="XSLT_PAT_NO_PRIORITY" id="XSLT_PAT_NO_PRIORITY"></a>Macro: XSLT_PAT_NO_PRIORITY</h3><pre>#define XSLT_PAT_NO_PRIORITY</pre><p>Specific value for pattern without priority expressed.</p>
<h3><a name="XSLT_RUNTIME_EXTRA" id="XSLT_RUNTIME_EXTRA"></a>Macro: XSLT_RUNTIME_EXTRA</h3><pre>#define XSLT_RUNTIME_EXTRA</pre><p>Macro used to define extra information stored in the context</p>
<h3><a name="XSLT_RUNTIME_EXTRA_FREE" id="XSLT_RUNTIME_EXTRA_FREE"></a>Macro: XSLT_RUNTIME_EXTRA_FREE</h3><pre>#define XSLT_RUNTIME_EXTRA_FREE</pre><p>Macro used to free extra information stored in the context</p>
<h3><a name="XSLT_RUNTIME_EXTRA_LST" id="XSLT_RUNTIME_EXTRA_LST"></a>Macro: XSLT_RUNTIME_EXTRA_LST</h3><pre>#define XSLT_RUNTIME_EXTRA_LST</pre><p>Macro used to access extra information stored in the context</p>
<h3><a name="xsltDecimalFormat" id="xsltDecimalFormat">Structure xsltDecimalFormat</a></h3><pre class="programlisting">Structure xsltDecimalFormat<br />struct _xsltDecimalFormat {
    struct _xsltDecimalFormat *	next	: chained list
    xmlChar *	name	: Used for interpretation of pattern
    xmlChar *	digit
    xmlChar *	patternSeparator	: May appear in result
    xmlChar *	minusSign
    xmlChar *	infinity
    xmlChar *	noNumber	: Not-a-number Used for interpretation of
    xmlChar *	decimalPoint
    xmlChar *	grouping
    xmlChar *	percent
    xmlChar *	permille
    xmlChar *	zeroDigit
}</pre><h3><a name="xsltDocument" id="xsltDocument">Structure xsltDocument</a></h3><pre class="programlisting">Structure xsltDocument<br />struct _xsltDocument {
    struct _xsltDocument *	next	: documents are kept in a chained list
    int	main	: is this the main document
    xmlDocPtr	doc	: the parsed document
    void *	keys	: key tables storage
    struct _xsltDocument *	includes	: subsidiary includes
}</pre><h3><a name="xsltElemPreComp" id="xsltElemPreComp">Structure xsltElemPreComp</a></h3><pre class="programlisting">Structure xsltElemPreComp<br />struct _xsltElemPreComp {
    <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a>	next	: chained list
    <a href="libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a>	type	: type of the element
    <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a>	func	: handling function
    xmlNodePtr	inst	: the instruction end of common part
    <a href="libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a>	free	: the deallocator
}</pre><h3>Enum <a name="xsltOutputType" id="xsltOutputType">xsltOutputType</a></h3><pre class="programlisting">Enum xsltOutputType {
    <a name="XSLT_OUTPUT_XML" id="XSLT_OUTPUT_XML">XSLT_OUTPUT_XML</a> = 0
    <a name="XSLT_OUTPUT_HTML" id="XSLT_OUTPUT_HTML">XSLT_OUTPUT_HTML</a> = 1
    <a name="XSLT_OUTPUT_TEXT" id="XSLT_OUTPUT_TEXT">XSLT_OUTPUT_TEXT</a> = 2
}
</pre><h3><a name="xsltRuntimeExtra" id="xsltRuntimeExtra">Structure xsltRuntimeExtra</a></h3><pre class="programlisting">Structure xsltRuntimeExtra<br />struct _xsltRuntimeExtra {
    void *	info	: pointer to the extra data
    xmlFreeFunc	deallocate	: pointer to the deallocation routine
    void *	val	: data not needing deallocation
}</pre><h3><a name="xsltStackElem" id="xsltStackElem">Structure xsltStackElem</a></h3><pre class="programlisting">Structure xsltStackElem<br />struct _xsltStackElem {
    struct _xsltStackElem *	next	: chained list
    <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a>	comp	: the compiled form
    int	computed	: was the evaluation done
    const xmlChar *	name	: the local part of the name QName
    const xmlChar *	nameURI	: the URI part of the name QName
    const xmlChar *	select	: the eval string
    xmlNodePtr	tree	: the tree if no eval string or the locat
    xmlXPathObjectPtr	value	: The value if computed
}</pre><h3><a name="xsltStylePreComp" id="xsltStylePreComp">Structure xsltStylePreComp</a></h3><pre class="programlisting">Structure xsltStylePreComp<br />struct _xsltStylePreComp {
    <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a>	next	: chained list
    <a href="libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a>	type	: type of the element
    <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a>	func	: handling function
    xmlNodePtr	inst	: * Pre computed values. *
    const xmlChar *	stype	: sort
    int	has_stype	: sort
    int	number	: sort
    const xmlChar *	order	: sort
    int	has_order	: sort
    int	descending	: sort
    const xmlChar *	lang	: sort
    int	has_lang	: sort
    const xmlChar *	case_order	: sort
    int	lower_first	: sort
    const xmlChar *	use	: copy, element
    int	has_use	: copy, element
    int	noescape	: text
    const xmlChar *	name	: element, attribute, pi
    int	has_name	: element, attribute, pi
    const xmlChar *	ns	: element
    int	has_ns	: element
    const xmlChar *	mode	: apply-templates
    const xmlChar *	modeURI	: apply-templates
    const xmlChar *	test	: if
    <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a>	templ	: call-template
    const xmlChar *	select	: sort, copy-of, value-of, apply-template
    int	ver11	: document
    const xmlChar *	filename	: document URL
    int	has_filename	: document
    <a href="libxslt-numbersInternals.html#xsltNumberData">xsltNumberData</a>	numdata	: number
    xmlXPathCompExprPtr	comp	: a precompiled XPath expression
    xmlNsPtr *	nsList	: the namespaces in scope
    int	nsNr	: the number of namespaces in scope
}</pre><h3>Enum <a name="xsltStyleType" id="xsltStyleType">xsltStyleType</a></h3><pre class="programlisting">Enum xsltStyleType {
    <a name="XSLT_FUNC_COPY" id="XSLT_FUNC_COPY">XSLT_FUNC_COPY</a> = 1
    <a name="XSLT_FUNC_SORT" id="XSLT_FUNC_SORT">XSLT_FUNC_SORT</a> = 2
    <a name="XSLT_FUNC_TEXT" id="XSLT_FUNC_TEXT">XSLT_FUNC_TEXT</a> = 3
    <a name="XSLT_FUNC_ELEMENT" id="XSLT_FUNC_ELEMENT">XSLT_FUNC_ELEMENT</a> = 4
    <a name="XSLT_FUNC_ATTRIBUTE" id="XSLT_FUNC_ATTRIBUTE">XSLT_FUNC_ATTRIBUTE</a> = 5
    <a name="XSLT_FUNC_COMMENT" id="XSLT_FUNC_COMMENT">XSLT_FUNC_COMMENT</a> = 6
    <a name="XSLT_FUNC_PI" id="XSLT_FUNC_PI">XSLT_FUNC_PI</a> = 7
    <a name="XSLT_FUNC_COPYOF" id="XSLT_FUNC_COPYOF">XSLT_FUNC_COPYOF</a> = 8
    <a name="XSLT_FUNC_VALUEOF" id="XSLT_FUNC_VALUEOF">XSLT_FUNC_VALUEOF</a> = 9
    <a name="XSLT_FUNC_NUMBER" id="XSLT_FUNC_NUMBER">XSLT_FUNC_NUMBER</a> = 10
    <a name="XSLT_FUNC_APPLYIMPORTS" id="XSLT_FUNC_APPLYIMPORTS">XSLT_FUNC_APPLYIMPORTS</a> = 11
    <a name="XSLT_FUNC_CALLTEMPLATE" id="XSLT_FUNC_CALLTEMPLATE">XSLT_FUNC_CALLTEMPLATE</a> = 12
    <a name="XSLT_FUNC_APPLYTEMPLATES" id="XSLT_FUNC_APPLYTEMPLATES">XSLT_FUNC_APPLYTEMPLATES</a> = 13
    <a name="XSLT_FUNC_CHOOSE" id="XSLT_FUNC_CHOOSE">XSLT_FUNC_CHOOSE</a> = 14
    <a name="XSLT_FUNC_IF" id="XSLT_FUNC_IF">XSLT_FUNC_IF</a> = 15
    <a name="XSLT_FUNC_FOREACH" id="XSLT_FUNC_FOREACH">XSLT_FUNC_FOREACH</a> = 16
    <a name="XSLT_FUNC_DOCUMENT" id="XSLT_FUNC_DOCUMENT">XSLT_FUNC_DOCUMENT</a> = 17
    <a name="XSLT_FUNC_WITHPARAM" id="XSLT_FUNC_WITHPARAM">XSLT_FUNC_WITHPARAM</a> = 18
    <a name="XSLT_FUNC_PARAM" id="XSLT_FUNC_PARAM">XSLT_FUNC_PARAM</a> = 19
    <a name="XSLT_FUNC_VARIABLE" id="XSLT_FUNC_VARIABLE">XSLT_FUNC_VARIABLE</a> = 20
    <a name="XSLT_FUNC_WHEN" id="XSLT_FUNC_WHEN">XSLT_FUNC_WHEN</a> = 21
    <a name="XSLT_FUNC_EXTENSION" id="XSLT_FUNC_EXTENSION">XSLT_FUNC_EXTENSION</a> = 22
}
</pre><h3><a name="xsltStylesheet" id="xsltStylesheet">Structure xsltStylesheet</a></h3><pre class="programlisting">Structure xsltStylesheet<br />struct _xsltStylesheet {
    struct _xsltStylesheet *	parent
    struct _xsltStylesheet *	next
    struct _xsltStylesheet *	imports
    <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a>	docList	: * General data on the style sheet docume
    xmlDocPtr	doc	: the parsed XML stylesheet
    xmlHashTablePtr	stripSpaces	: the hash table of the strip-space and p
    int	stripAll	: strip-space * (1) preserve-space * (-1)
    xmlHashTablePtr	cdataSection	: * Global variable or parameters. *
    <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a>	variables	: * Template descriptions. *
    <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a>	templates	: the ordered list of templates
    void *	templatesHash	: hash table or wherever compiled templat
    void *	rootMatch	: template based on /
    void *	keyMatch	: template based on key()
    void *	elemMatch	: template based on *
    void *	attrMatch	: template based on @*
    void *	parentMatch	: template based on ..
    void *	textMatch	: template based on text()
    void *	piMatch	: template based on processing-instructio
    void *	commentMatch	: * Namespace aliases. *
    xmlHashTablePtr	nsAliases	: * Attribute sets. *
    xmlHashTablePtr	attributeSets	: * Namespaces. *
    xmlHashTablePtr	nsHash	: the set of namespaces in use
    void *	nsDefs	: * Key definitions. *
    void *	keys	: * Output related stuff. *
    xmlChar *	method	: the output method
    xmlChar *	methodURI	: associated namespace if any
    xmlChar *	version	: version string
    xmlChar *	encoding	: encoding string
    int	omitXmlDeclaration	: * Number formatting. *
    <a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a>	decimalFormat
    int	standalone	: standalone = "yes" | "no"
    xmlChar *	doctypePublic	: doctype-public string
    xmlChar *	doctypeSystem	: doctype-system string
    int	indent	: should output being indented
    xmlChar *	mediaType	: * Precomputed blocks. *
    <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a>	preComps	: list of precomputed blocks
    int	warnings	: number of warnings found at compilation
    int	errors	: number of errors found at compilation
    xmlChar *	exclPrefix	: last excluded prefixes
    xmlChar **	exclPrefixTab	: array of excluded prefixes
    int	exclPrefixNr	: number of excluded prefixes in scope
    int	exclPrefixMax	: size of the array
    void *	_private	: * Extensions. *
    xmlHashTablePtr	extInfos	: the extension data
    int	extrasNr	: * For keeping track of nested includes *
    <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a>	includes	: * dictionnary: shared between stylesheet
    xmlDictPtr	dict	: * precompiled attribute value templates.
    void *	attVTs
}</pre><h3><a name="xsltTemplate" id="xsltTemplate">Structure xsltTemplate</a></h3><pre class="programlisting">Structure xsltTemplate<br />struct _xsltTemplate {
    struct _xsltTemplate *	next	: chained list sorted by priority
    struct _xsltStylesheet *	style	: the containing stylesheet
    xmlChar *	match	: the matching string
    float	priority	: as given from the stylesheet, not compu
    xmlChar *	name	: the local part of the name QName
    xmlChar *	nameURI	: the URI part of the name QName
    xmlChar *	mode	: the local part of the mode QName
    xmlChar *	modeURI	: the URI part of the mode QName
    xmlNodePtr	content	: the template replacement value
    xmlNodePtr	elem	: the source element
    int	inheritedNsNr	: number of inherited namespaces
    xmlNsPtr *	inheritedNs	: inherited non-excluded namespaces Profi
    int	nbCalls	: the number of time the template was cal
    unsigned long	time	: the time spent in this template
}</pre><h3><a name="xsltTransformContext" id="xsltTransformContext">Structure xsltTransformContext</a></h3><pre class="programlisting">Structure xsltTransformContext<br />struct _xsltTransformContext {
    <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	style	: the stylesheet used
    <a href="libxslt-xsltInternals.html#xsltOutputType">xsltOutputType</a>	type	: the type of output
    <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a>	templ	: the current template
    int	templNr	: Nb of templates in the stack
    int	templMax	: Size of the templtes stack
    <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> *	templTab	: the template stack
    <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a>	vars	: the current variable list
    int	varsNr	: Nb of variable list in the stack
    int	varsMax	: Size of the variable list stack
    <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> *	varsTab	: the variable list stack
    int	varsBase	: * Extensions *
    xmlHashTablePtr	extFunctions	: the extension functions
    xmlHashTablePtr	extElements	: the extension elements
    xmlHashTablePtr	extInfos	: the extension data
    const xmlChar *	mode	: the current mode
    const xmlChar *	modeURI	: the current mode URI
    <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a>	docList	: the document list
    <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a>	document	: the current document
    xmlNodePtr	node	: the current node being processed
    xmlNodeSetPtr	nodeList	: the current node list xmlNodePtr curren
    xmlDocPtr	output	: the resulting document
    xmlNodePtr	insert	: the insertion node
    xmlXPathContextPtr	xpathCtxt	: the XPath context
    <a href="libxslt-xsltInternals.html#xsltTransformState">xsltTransformState</a>	state	: * Global variables *
    xmlHashTablePtr	globalVars	: the global variables and params
    xmlNodePtr	inst	: the instruction in the stylesheet
    int	xinclude	: should XInclude be processed
    const char *	outputFile	: the output URI if known
    int	profile	: is this run profiled
    long	prof	: the current profiled value
    int	profNr	: Nb of templates in the stack
    int	profMax	: Size of the templtaes stack
    long *	profTab	: the profile template stack
    void *	_private	: user defined data
    int	extrasNr	: the number of extras used
    int	extrasMax	: the number of extras allocated
    <a href="libxslt-xsltInternals.html#xsltRuntimeExtraPtr">xsltRuntimeExtraPtr</a>	extras	: extra per runtime informations
    <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a>	styleList	: the stylesheet docs list
    void *	sec	: the security preferences if any
    xmlGenericErrorFunc	error	: a specific error handler
    void *	errctx	: context for the error handler
    <a href="libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a>	sortfunc	: * handling of temporary Result Value Tre
    xmlDocPtr	tmpRVT	: list of RVT without persistance
    xmlDocPtr	persistRVT	: list of persistant RVTs
    int	ctxtflags	: * Speed optimization when coalescing tex
    const xmlChar *	lasttext	: last text node content
    unsigned int	lasttsize	: last text node size
    unsigned int	lasttuse	: * Per Context Debugging *
    int	debugStatus	: the context level debug status
    unsigned long *	traceCode	: pointer to the variable holding the mas
    int	parserOptions	: * dictionnary: shared between stylesheet
    xmlDictPtr	dict
}</pre><h3>Enum <a name="xsltTransformState" id="xsltTransformState">xsltTransformState</a></h3><pre class="programlisting">Enum xsltTransformState {
    <a name="XSLT_STATE_OK" id="XSLT_STATE_OK">XSLT_STATE_OK</a> = 0
    <a name="XSLT_STATE_ERROR" id="XSLT_STATE_ERROR">XSLT_STATE_ERROR</a> = 1
    <a name="XSLT_STATE_STOPPED" id="XSLT_STATE_STOPPED">XSLT_STATE_STOPPED</a> = 2
}
</pre><h3><a name="xsltAllocateExtra" id="xsltAllocateExtra"></a>Function: xsltAllocateExtra</h3><pre class="programlisting">int	xsltAllocateExtra		(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
</pre><p>Allocate an extra runtime information slot statically while compiling the stylesheet and return its number</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of the slot</td></tr></tbody></table></div><h3><a name="xsltAllocateExtraCtxt" id="xsltAllocateExtraCtxt"></a>Function: xsltAllocateExtraCtxt</h3><pre class="programlisting">int	xsltAllocateExtraCtxt		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
</pre><p>Allocate an extra runtime information slot at run-time and return its number This make sure there is a slot ready in the transformation context</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of the slot</td></tr></tbody></table></div><h3><a name="xsltCompileAttr" id="xsltCompileAttr"></a>Function: xsltCompileAttr</h3><pre class="programlisting">void	xsltCompileAttr			(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br />					 xmlAttrPtr attr)<br />
</pre><p>Precompile an attribute in a stylesheet, basically it checks if it is an attrubute value template, and if yes establish some structures needed to process it at transformation time.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>a XSLT process context</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the attribute coming from the stylesheet.</td></tr></tbody></table></div><h3><a name="xsltCreateRVT" id="xsltCreateRVT"></a>Function: xsltCreateRVT</h3><pre class="programlisting">xmlDocPtr	xsltCreateRVT		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
</pre><p>Create a result value tree</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the result value tree or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltDecimalFormatGetByName" id="xsltDecimalFormatGetByName"></a>Function: xsltDecimalFormatGetByName</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a>	xsltDecimalFormatGetByName	(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> sheet, <br />							 xmlChar * name)<br />
</pre><p>Find decimal-format by name</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sheet</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the decimal-format name to find</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a></td></tr></tbody></table></div><h3><a name="xsltElemPreCompDeallocator" id="xsltElemPreCompDeallocator"></a>Function type: xsltElemPreCompDeallocator</h3><pre class="programlisting">Function type: xsltElemPreCompDeallocator
void	xsltElemPreCompDeallocator	(<a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp)
</pre><p>Deallocates an #xsltElemPreComp structure.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the #xsltElemPreComp to free up</td></tr></tbody></table></div><br />
<h3><a name="xsltEvalAVT" id="xsltEvalAVT"></a>Function: xsltEvalAVT</h3><pre class="programlisting">xmlChar *	xsltEvalAVT		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 void * avt, <br />					 xmlNodePtr node)<br />
</pre><p>Process the given AVT, and return the new string value.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>avt</tt></i>:</span></td><td>the prevompiled attribute value template info</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node hosting the attribute</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the computed string value or NULL, must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xsltFormatNumberConversion" id="xsltFormatNumberConversion"></a>Function: xsltFormatNumberConversion</h3><pre class="programlisting">xmlXPathError	xsltFormatNumberConversion	(<a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a> self, <br />						 xmlChar * format, <br />						 double number, <br />						 xmlChar ** result)<br />
</pre><p>format-number() uses the JDK 1.1 DecimalFormat class: http://java.sun.com/products/jdk/1.1/docs/api/java.text.DecimalFormat.html Structure: pattern := subpattern{;subpattern} subpattern := {prefix}integer{.fraction}{suffix} prefix := '\\u0000'..'\\uFFFD' - specialCharacters suffix := '\\u0000'..'\\uFFFD' - specialCharacters integer := '#'* '0'* '0' fraction := '0'* '#'* Notation: X* 0 or more instances of X (X | Y) either X or Y. X..Y any character from X up to Y, inclusive. S - T characters in S, except those in T Special Characters: Symbol Meaning 0 a digit # a digit, zero shows as absent . placeholder for decimal separator , placeholder for grouping separator. ; separates formats. - default negative prefix. % multiply by 100 and show as percentage ? multiply by 1000 and show as per mille X any other characters can be used in the prefix or suffix ' used to quote special characters in a prefix or suffix.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>self</tt></i>:</span></td><td>the decimal format</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>the format requested</td></tr><tr><td><span class="term"><i><tt>number</tt></i>:</span></td><td>the value to format</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>the place to ouput the result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a possible XPath error</td></tr></tbody></table></div><h3><a name="xsltFreeAVTList" id="xsltFreeAVTList"></a>Function: xsltFreeAVTList</h3><pre class="programlisting">void	xsltFreeAVTList			(void * avt)<br />
</pre><p>Free up the memory associated to the attribute value templates</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>avt</tt></i>:</span></td><td>pointer to an list of AVT structures</td></tr></tbody></table></div><h3><a name="xsltFreeRVTs" id="xsltFreeRVTs"></a>Function: xsltFreeRVTs</h3><pre class="programlisting">void	xsltFreeRVTs			(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
</pre><p>Free all the registered result value tree of the transformation</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr></tbody></table></div><h3><a name="xsltFreeStackElemList" id="xsltFreeStackElemList"></a>Function: xsltFreeStackElemList</h3><pre class="programlisting">void	xsltFreeStackElemList		(<a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> elem)<br />
</pre><p>Free up the memory allocated by @elem</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an XSLT stack element</td></tr></tbody></table></div><h3><a name="xsltFreeStylesheet" id="xsltFreeStylesheet"></a>Function: xsltFreeStylesheet</h3><pre class="programlisting">void	xsltFreeStylesheet		(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> sheet)<br />
</pre><p>Free up the memory allocated by @sheet</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sheet</tt></i>:</span></td><td>an XSLT stylesheet</td></tr></tbody></table></div><h3><a name="xsltIsBlank" id="xsltIsBlank"></a>Function: xsltIsBlank</h3><pre class="programlisting">int	xsltIsBlank			(xmlChar * str)<br />
</pre><p>Check if a string is ignorable</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>a string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the string is NULL or made of blanks chars, 0 otherwise</td></tr></tbody></table></div><h3><a name="xsltLoadStylesheetPI" id="xsltLoadStylesheetPI"></a>Function: xsltLoadStylesheetPI</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	xsltLoadStylesheetPI	(xmlDocPtr doc)<br />
</pre><p>This function tries to locate the stylesheet PI in the given document If found, and if contained within the document, it will extract that subtree to build the stylesheet to process @doc (doc itself will be modified). If found but referencing an external document it will attempt to load it and generate a stylesheet from it. In both cases, the resulting stylesheet and the document need to be freed once the transformation is done.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document to process</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new XSLT stylesheet structure or NULL if not found.</td></tr></tbody></table></div><h3><a name="xsltNewStylesheet" id="xsltNewStylesheet"></a>Function: xsltNewStylesheet</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	xsltNewStylesheet	(void)<br />
</pre><p>Create a new XSLT Stylesheet</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly allocated <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltNumberFormat" id="xsltNumberFormat"></a>Function: xsltNumberFormat</h3><pre class="programlisting">void	xsltNumberFormat		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 <a href="libxslt-numbersInternals.html#xsltNumberDataPtr">xsltNumberDataPtr</a> data, <br />					 xmlNodePtr node)<br />
</pre><p>Convert one number.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the formatting informations</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the data to format</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetDoc" id="xsltParseStylesheetDoc"></a>Function: xsltParseStylesheetDoc</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	xsltParseStylesheetDoc	(xmlDocPtr doc)<br />
</pre><p>parse an XSLT stylesheet building the associated structures</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>and xmlDoc parsed XML</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new XSLT stylesheet structure.</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetFile" id="xsltParseStylesheetFile"></a>Function: xsltParseStylesheetFile</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	xsltParseStylesheetFile	(const xmlChar * filename)<br />
</pre><p>Load and parse an XSLT stylesheet</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename/URL to the stylesheet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new XSLT stylesheet structure.</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetImportedDoc" id="xsltParseStylesheetImportedDoc"></a>Function: xsltParseStylesheetImportedDoc</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	xsltParseStylesheetImportedDoc	(xmlDocPtr doc, <br />							 <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
</pre><p>parse an XSLT stylesheet building the associated structures except the processing not needed for imported documents.</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>an xmlDoc parsed XML</td></tr><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>pointer to parent stylesheet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new XSLT stylesheet structure.</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetOutput" id="xsltParseStylesheetOutput"></a>Function: xsltParseStylesheetOutput</h3><pre class="programlisting">void	xsltParseStylesheetOutput	(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br />					 xmlNodePtr cur)<br />
</pre><p>parse an XSLT stylesheet output element and record information related to the stylesheet output</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the "output" element</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetProcess" id="xsltParseStylesheetProcess"></a>Function: xsltParseStylesheetProcess</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a>	xsltParseStylesheetProcess	(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> ret, <br />							 xmlDocPtr doc)<br />
</pre><p>parse an XSLT stylesheet adding the associated structures</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ret</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>and xmlDoc parsed XML</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value of the 'ret' parameter if everything went right, NULL if something went amiss.</td></tr></tbody></table></div><h3><a name="xsltParseTemplateContent" id="xsltParseTemplateContent"></a>Function: xsltParseTemplateContent</h3><pre class="programlisting">void	xsltParseTemplateContent	(<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br />					 xmlNodePtr templ)<br />
</pre><p>parse a template content-model Clean-up the template content from unwanted ignorable blank nodes and process xslt:text</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>templ</tt></i>:</span></td><td>the container node (can be a document for literal results)</td></tr></tbody></table></div><h3><a name="xsltRegisterPersistRVT" id="xsltRegisterPersistRVT"></a>Function: xsltRegisterPersistRVT</h3><pre class="programlisting">int	xsltRegisterPersistRVT		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 xmlDocPtr RVT)<br />
</pre><p>Register the result value tree for destruction at the end of the processing</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>RVT</tt></i>:</span></td><td>a result value tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltRegisterTmpRVT" id="xsltRegisterTmpRVT"></a>Function: xsltRegisterTmpRVT</h3><pre class="programlisting">int	xsltRegisterTmpRVT		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 xmlDocPtr RVT)<br />
</pre><p>Register the result value tree for destruction at the end of the context</p>
<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>RVT</tt></i>:</span></td><td>a result value tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltSortFunc" id="xsltSortFunc"></a>Function type: xsltSortFunc</h3><pre class="programlisting">Function type: xsltSortFunc
void	xsltSortFunc			(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 xmlNodePtr * sorts, <br />					 int nbsorts)
</pre><p>Signature of the function to use during sorting</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a transformation context</td></tr><tr><td><span class="term"><i><tt>sorts</tt></i>:</span></td><td>the node-set to sort</td></tr><tr><td><span class="term"><i><tt>nbsorts</tt></i>:</span></td><td>the number of sorts</td></tr></tbody></table></div><br />
<h3><a name="xsltTransformFunction" id="xsltTransformFunction"></a>Function type: xsltTransformFunction</h3><pre class="programlisting">Function type: xsltTransformFunction
void	xsltTransformFunction		(<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br />					 xmlNodePtr node, <br />					 xmlNodePtr inst, <br />					 <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp)
</pre><p>Signature of the function associated to elements part of the stylesheet language like xsl:if or xsl:apply-templates.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the input node</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the stylesheet node</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled information from the stylesheet</td></tr></tbody></table></div><br />
<p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>