1<?xml version="1.0" encoding="ISO-8859-1"?> 2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 3<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"> 4TD {font-family: Verdana,Arial,Helvetica} 5BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em} 6H1 {font-family: Verdana,Arial,Helvetica} 7H2 {font-family: Verdana,Arial,Helvetica} 8H3 {font-family: Verdana,Arial,Helvetica} 9A:link, A:visited, A:active { text-decoration: underline } 10 </style><title>Module xsltInternals from libxslt</title></head><body bgcolor="#8b7765" text="#000000" link="#a06060" 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 libxml2</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.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">Bug Tracker</a></li><li><a href="http://codespeak.net/lxml/">lxml Python bindings</a></li><li><a href="http://cpan.uwinnipeg.ca/dist/XML-LibXSLT">Perl XSLT bindings</a></li><li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading17">XSLT with PHP</a></li><li><a href="http://www.mod-xslt2.com/">Apache module</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://xsldbg.sourceforge.net/">Xsldbg Debugger</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="#IS_XSLT_ATTR_FAST">IS_XSLT_ATTR_FAST</a></pre><pre class="programlisting">#define <a href="#IS_XSLT_ELEM_FAST">IS_XSLT_ELEM_FAST</a></pre><pre class="programlisting">#define <a href="#XML_CAST_FPTR">XML_CAST_FPTR</a></pre><pre class="programlisting">#define <a href="#XSLT_CCTXT">XSLT_CCTXT</a></pre><pre class="programlisting">#define <a href="#XSLT_FAST_IF">XSLT_FAST_IF</a></pre><pre class="programlisting">#define <a href="#XSLT_GET_INTERNAL_NSMAP">XSLT_GET_INTERNAL_NSMAP</a></pre><pre class="programlisting">#define <a href="#XSLT_HAS_INTERNAL_NSMAP">XSLT_HAS_INTERNAL_NSMAP</a></pre><pre class="programlisting">#define <a href="#XSLT_IS_RES_TREE_FRAG">XSLT_IS_RES_TREE_FRAG</a></pre><pre class="programlisting">#define <a href="#XSLT_IS_TEXT_NODE">XSLT_IS_TEXT_NODE</a></pre><pre class="programlisting">#define <a href="#XSLT_ITEM_COMMON_FIELDS">XSLT_ITEM_COMMON_FIELDS</a></pre><pre class="programlisting">#define <a href="#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a></pre><pre class="programlisting">#define <a href="#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a></pre><pre class="programlisting">#define <a href="#XSLT_ITEM_NSINSCOPE_FIELDS">XSLT_ITEM_NSINSCOPE_FIELDS</a></pre><pre class="programlisting">#define <a href="#XSLT_MARK_RES_TREE_FRAG">XSLT_MARK_RES_TREE_FRAG</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_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a></pre><pre class="programlisting">#define <a href="#XSLT_REFACTORED_VARS">XSLT_REFACTORED_VARS</a></pre><pre class="programlisting">#define <a href="#XSLT_REFACTORED_XPATHCOMP">XSLT_REFACTORED_XPATHCOMP</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="#xsltCompilerCtxt">xsltCompilerCtxt</a><br />struct _xsltCompilerCtxt 11</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltCompilerCtxt">xsltCompilerCtxt</a> * <a name="xsltCompilerCtxtPtr" id="xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a> 12</pre><pre class="programlisting">Structure <a href="#xsltCompilerNodeInfo">xsltCompilerNodeInfo</a><br />struct _xsltCompilerNodeInfo 13</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfo">xsltCompilerNodeInfo</a> * <a name="xsltCompilerNodeInfoPtr" id="xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> 14</pre><pre class="programlisting">Structure <a href="#xsltDecimalFormat">xsltDecimalFormat</a><br />struct _xsltDecimalFormat 15</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltDecimalFormat">xsltDecimalFormat</a> * <a name="xsltDecimalFormatPtr" id="xsltDecimalFormatPtr">xsltDecimalFormatPtr</a> 16</pre><pre class="programlisting">Structure <a href="#xsltDocument">xsltDocument</a><br />struct _xsltDocument 17</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltDocument">xsltDocument</a> * <a name="xsltDocumentPtr" id="xsltDocumentPtr">xsltDocumentPtr</a> 18</pre><pre class="programlisting">Structure <a href="#xsltEffectiveNs">xsltEffectiveNs</a><br />struct _xsltEffectiveNs 19</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltEffectiveNs">xsltEffectiveNs</a> * <a name="xsltEffectiveNsPtr" id="xsltEffectiveNsPtr">xsltEffectiveNsPtr</a> 20</pre><pre class="programlisting">Structure <a href="#xsltElemPreComp">xsltElemPreComp</a><br />struct _xsltElemPreComp 21</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltElemPreComp">xsltElemPreComp</a> * <a name="xsltElemPreCompPtr" id="xsltElemPreCompPtr">xsltElemPreCompPtr</a> 22</pre><pre class="programlisting">Enum <a href="#xsltErrorSeverityType">xsltErrorSeverityType</a> 23</pre><pre class="programlisting">Structure <a href="#xsltKeyDef">xsltKeyDef</a><br />struct _xsltKeyDef 24</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltKeyDef">xsltKeyDef</a> * <a name="xsltKeyDefPtr" id="xsltKeyDefPtr">xsltKeyDefPtr</a> 25</pre><pre class="programlisting">Structure <a href="#xsltKeyTable">xsltKeyTable</a><br />struct _xsltKeyTable 26</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltKeyTable">xsltKeyTable</a> * <a name="xsltKeyTablePtr" id="xsltKeyTablePtr">xsltKeyTablePtr</a> 27</pre><pre class="programlisting">Structure <a href="#xsltNsAlias">xsltNsAlias</a><br />struct _xsltNsAlias 28</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltNsAlias">xsltNsAlias</a> * <a name="xsltNsAliasPtr" id="xsltNsAliasPtr">xsltNsAliasPtr</a> 29</pre><pre class="programlisting">Structure <a href="#xsltNsList">xsltNsList</a><br />struct _xsltNsList 30</pre><pre class="programlisting">Structure <a href="#xsltNsListContainer">xsltNsListContainer</a><br />struct _xsltNsListContainer 31</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltNsListContainer">xsltNsListContainer</a> * <a name="xsltNsListContainerPtr" id="xsltNsListContainerPtr">xsltNsListContainerPtr</a> 32</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltNsList">xsltNsList</a> * <a name="xsltNsListPtr" id="xsltNsListPtr">xsltNsListPtr</a> 33</pre><pre class="programlisting">Structure <a href="#xsltNsMap">xsltNsMap</a><br />struct _xsltNsMap 34</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltNsMap">xsltNsMap</a> * <a name="xsltNsMapPtr" id="xsltNsMapPtr">xsltNsMapPtr</a> 35</pre><pre class="programlisting">Enum <a href="#xsltOutputType">xsltOutputType</a> 36</pre><pre class="programlisting">Structure <a href="#xsltPointerList">xsltPointerList</a><br />struct _xsltPointerList 37</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltPointerList">xsltPointerList</a> * <a name="xsltPointerListPtr" id="xsltPointerListPtr">xsltPointerListPtr</a> 38</pre><pre class="programlisting">Structure <a href="#xsltPrincipalStylesheetData">xsltPrincipalStylesheetData</a><br />struct _xsltPrincipalStylesheetData 39</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltPrincipalStylesheetData">xsltPrincipalStylesheetData</a> * <a name="xsltPrincipalStylesheetDataPtr" id="xsltPrincipalStylesheetDataPtr">xsltPrincipalStylesheetDataPtr</a> 40</pre><pre class="programlisting">Structure <a href="#xsltRuntimeExtra">xsltRuntimeExtra</a><br />struct _xsltRuntimeExtra 41</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltRuntimeExtra">xsltRuntimeExtra</a> * <a name="xsltRuntimeExtraPtr" id="xsltRuntimeExtraPtr">xsltRuntimeExtraPtr</a> 42</pre><pre class="programlisting">Structure <a href="#xsltStackElem">xsltStackElem</a><br />struct _xsltStackElem 43</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStackElem">xsltStackElem</a> * <a name="xsltStackElemPtr" id="xsltStackElemPtr">xsltStackElemPtr</a> 44</pre><pre class="programlisting">Structure <a href="#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a><br />struct _xsltStyleBasicEmptyItem 45The content of this structure is not made public by the API. 46</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a> * <a name="xsltStyleBasicEmptyItemPtr" id="xsltStyleBasicEmptyItemPtr">xsltStyleBasicEmptyItemPtr</a> 47</pre><pre class="programlisting">Structure <a href="#xsltStyleBasicExpressionItem">xsltStyleBasicExpressionItem</a><br />struct _xsltStyleBasicExpressionItem 48</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicExpressionItem">xsltStyleBasicExpressionItem</a> * <a name="xsltStyleBasicExpressionItemPtr" id="xsltStyleBasicExpressionItemPtr">xsltStyleBasicExpressionItemPtr</a> 49</pre><pre class="programlisting">Structure <a href="#xsltStyleBasicItemVariable">xsltStyleBasicItemVariable</a><br />struct _xsltStyleBasicItemVariable 50</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicItemVariable">xsltStyleBasicItemVariable</a> * <a name="xsltStyleBasicItemVariablePtr" id="xsltStyleBasicItemVariablePtr">xsltStyleBasicItemVariablePtr</a> 51</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a> <a name="xsltStyleItemApplyImports" id="xsltStyleItemApplyImports">xsltStyleItemApplyImports</a> 52</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemApplyImports">xsltStyleItemApplyImports</a> * <a name="xsltStyleItemApplyImportsPtr" id="xsltStyleItemApplyImportsPtr">xsltStyleItemApplyImportsPtr</a> 53</pre><pre class="programlisting">Structure <a href="#xsltStyleItemApplyTemplates">xsltStyleItemApplyTemplates</a><br />struct _xsltStyleItemApplyTemplates 54</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemApplyTemplates">xsltStyleItemApplyTemplates</a> * <a name="xsltStyleItemApplyTemplatesPtr" id="xsltStyleItemApplyTemplatesPtr">xsltStyleItemApplyTemplatesPtr</a> 55</pre><pre class="programlisting">Structure <a href="#xsltStyleItemAttribute">xsltStyleItemAttribute</a><br />struct _xsltStyleItemAttribute 56</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemAttribute">xsltStyleItemAttribute</a> * <a name="xsltStyleItemAttributePtr" id="xsltStyleItemAttributePtr">xsltStyleItemAttributePtr</a> 57</pre><pre class="programlisting">Structure <a href="#xsltStyleItemCallTemplate">xsltStyleItemCallTemplate</a><br />struct _xsltStyleItemCallTemplate 58</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemCallTemplate">xsltStyleItemCallTemplate</a> * <a name="xsltStyleItemCallTemplatePtr" id="xsltStyleItemCallTemplatePtr">xsltStyleItemCallTemplatePtr</a> 59</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a> <a name="xsltStyleItemChoose" id="xsltStyleItemChoose">xsltStyleItemChoose</a> 60</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemChoose">xsltStyleItemChoose</a> * <a name="xsltStyleItemChoosePtr" id="xsltStyleItemChoosePtr">xsltStyleItemChoosePtr</a> 61</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a> <a name="xsltStyleItemComment" id="xsltStyleItemComment">xsltStyleItemComment</a> 62</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemComment">xsltStyleItemComment</a> * <a name="xsltStyleItemCommentPtr" id="xsltStyleItemCommentPtr">xsltStyleItemCommentPtr</a> 63</pre><pre class="programlisting">Structure <a href="#xsltStyleItemCopy">xsltStyleItemCopy</a><br />struct _xsltStyleItemCopy 64</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicExpressionItem">xsltStyleBasicExpressionItem</a> <a name="xsltStyleItemCopyOf" id="xsltStyleItemCopyOf">xsltStyleItemCopyOf</a> 65</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemCopyOf">xsltStyleItemCopyOf</a> * <a name="xsltStyleItemCopyOfPtr" id="xsltStyleItemCopyOfPtr">xsltStyleItemCopyOfPtr</a> 66</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemCopy">xsltStyleItemCopy</a> * <a name="xsltStyleItemCopyPtr" id="xsltStyleItemCopyPtr">xsltStyleItemCopyPtr</a> 67</pre><pre class="programlisting">Structure <a href="#xsltStyleItemDocument">xsltStyleItemDocument</a><br />struct _xsltStyleItemDocument 68</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemDocument">xsltStyleItemDocument</a> * <a name="xsltStyleItemDocumentPtr" id="xsltStyleItemDocumentPtr">xsltStyleItemDocumentPtr</a> 69</pre><pre class="programlisting">Structure <a href="#xsltStyleItemElement">xsltStyleItemElement</a><br />struct _xsltStyleItemElement 70</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemElement">xsltStyleItemElement</a> * <a name="xsltStyleItemElementPtr" id="xsltStyleItemElementPtr">xsltStyleItemElementPtr</a> 71</pre><pre class="programlisting">Structure <a href="#xsltStyleItemExtElement">xsltStyleItemExtElement</a><br />struct _xsltStyleItemExtElement 72</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemExtElement">xsltStyleItemExtElement</a> * <a name="xsltStyleItemExtElementPtr" id="xsltStyleItemExtElementPtr">xsltStyleItemExtElementPtr</a> 73</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a> <a name="xsltStyleItemFallback" id="xsltStyleItemFallback">xsltStyleItemFallback</a> 74</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemFallback">xsltStyleItemFallback</a> * <a name="xsltStyleItemFallbackPtr" id="xsltStyleItemFallbackPtr">xsltStyleItemFallbackPtr</a> 75</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicExpressionItem">xsltStyleBasicExpressionItem</a> <a name="xsltStyleItemForEach" id="xsltStyleItemForEach">xsltStyleItemForEach</a> 76</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemForEach">xsltStyleItemForEach</a> * <a name="xsltStyleItemForEachPtr" id="xsltStyleItemForEachPtr">xsltStyleItemForEachPtr</a> 77</pre><pre class="programlisting">Structure <a href="#xsltStyleItemIf">xsltStyleItemIf</a><br />struct _xsltStyleItemIf 78</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemIf">xsltStyleItemIf</a> * <a name="xsltStyleItemIfPtr" id="xsltStyleItemIfPtr">xsltStyleItemIfPtr</a> 79</pre><pre class="programlisting">Structure <a href="#xsltStyleItemInclude">xsltStyleItemInclude</a><br />struct _xsltStyleItemInclude 80</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemInclude">xsltStyleItemInclude</a> * <a name="xsltStyleItemIncludePtr" id="xsltStyleItemIncludePtr">xsltStyleItemIncludePtr</a> 81</pre><pre class="programlisting">Structure <a href="#xsltStyleItemLRElementInfo">xsltStyleItemLRElementInfo</a><br />struct _xsltStyleItemLRElementInfo 82</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemLRElementInfo">xsltStyleItemLRElementInfo</a> * <a name="xsltStyleItemLRElementInfoPtr" id="xsltStyleItemLRElementInfoPtr">xsltStyleItemLRElementInfoPtr</a> 83</pre><pre class="programlisting">Structure <a href="#xsltStyleItemMessage">xsltStyleItemMessage</a><br />struct _xsltStyleItemMessage 84</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemMessage">xsltStyleItemMessage</a> * <a name="xsltStyleItemMessagePtr" id="xsltStyleItemMessagePtr">xsltStyleItemMessagePtr</a> 85</pre><pre class="programlisting">Structure <a href="#xsltStyleItemNumber">xsltStyleItemNumber</a><br />struct _xsltStyleItemNumber 86</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemNumber">xsltStyleItemNumber</a> * <a name="xsltStyleItemNumberPtr" id="xsltStyleItemNumberPtr">xsltStyleItemNumberPtr</a> 87</pre><pre class="programlisting">Structure <a href="#xsltStyleItemOtherwise">xsltStyleItemOtherwise</a><br />struct _xsltStyleItemOtherwise 88The content of this structure is not made public by the API. 89</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemOtherwise">xsltStyleItemOtherwise</a> * <a name="xsltStyleItemOtherwisePtr" id="xsltStyleItemOtherwisePtr">xsltStyleItemOtherwisePtr</a> 90</pre><pre class="programlisting">Structure <a href="#xsltStyleItemPI">xsltStyleItemPI</a><br />struct _xsltStyleItemPI 91</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemPI">xsltStyleItemPI</a> * <a name="xsltStyleItemPIPtr" id="xsltStyleItemPIPtr">xsltStyleItemPIPtr</a> 92</pre><pre class="programlisting">Structure <a href="#xsltStyleItemParam">xsltStyleItemParam</a><br />struct _xsltStyleItemParam 93</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemParam">xsltStyleItemParam</a> * <a name="xsltStyleItemParamPtr" id="xsltStyleItemParamPtr">xsltStyleItemParamPtr</a> 94</pre><pre class="programlisting">Structure <a href="#xsltStyleItemSort">xsltStyleItemSort</a><br />struct _xsltStyleItemSort 95</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemSort">xsltStyleItemSort</a> * <a name="xsltStyleItemSortPtr" id="xsltStyleItemSortPtr">xsltStyleItemSortPtr</a> 96</pre><pre class="programlisting">Structure <a href="#xsltStyleItemText">xsltStyleItemText</a><br />struct _xsltStyleItemText 97</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemText">xsltStyleItemText</a> * <a name="xsltStyleItemTextPtr" id="xsltStyleItemTextPtr">xsltStyleItemTextPtr</a> 98</pre><pre class="programlisting">Structure <a href="#xsltStyleItemUknown">xsltStyleItemUknown</a><br />struct _xsltStyleItemUknown 99The content of this structure is not made public by the API. 100</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemUknown">xsltStyleItemUknown</a> * <a name="xsltStyleItemUknownPtr" id="xsltStyleItemUknownPtr">xsltStyleItemUknownPtr</a> 101</pre><pre class="programlisting">Structure <a href="#xsltStyleItemValueOf">xsltStyleItemValueOf</a><br />struct _xsltStyleItemValueOf 102</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemValueOf">xsltStyleItemValueOf</a> * <a name="xsltStyleItemValueOfPtr" id="xsltStyleItemValueOfPtr">xsltStyleItemValueOfPtr</a> 103</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicItemVariable">xsltStyleBasicItemVariable</a> <a name="xsltStyleItemVariable" id="xsltStyleItemVariable">xsltStyleItemVariable</a> 104</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemVariable">xsltStyleItemVariable</a> * <a name="xsltStyleItemVariablePtr" id="xsltStyleItemVariablePtr">xsltStyleItemVariablePtr</a> 105</pre><pre class="programlisting">Structure <a href="#xsltStyleItemWhen">xsltStyleItemWhen</a><br />struct _xsltStyleItemWhen 106</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemWhen">xsltStyleItemWhen</a> * <a name="xsltStyleItemWhenPtr" id="xsltStyleItemWhenPtr">xsltStyleItemWhenPtr</a> 107</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicItemVariable">xsltStyleBasicItemVariable</a> <a name="xsltStyleItemWithParam" id="xsltStyleItemWithParam">xsltStyleItemWithParam</a> 108</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemWithParam">xsltStyleItemWithParam</a> * <a name="xsltStyleItemWithParamPtr" id="xsltStyleItemWithParamPtr">xsltStyleItemWithParamPtr</a> 109</pre><pre class="programlisting">Structure <a href="#xsltStylePreComp">xsltStylePreComp</a><br />struct _xsltStylePreComp 110</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStylePreComp">xsltStylePreComp</a> * <a name="xsltStylePreCompPtr" id="xsltStylePreCompPtr">xsltStylePreCompPtr</a> 111</pre><pre class="programlisting">Enum <a href="#xsltStyleType">xsltStyleType</a> 112</pre><pre class="programlisting">Structure <a href="#xsltStylesheet">xsltStylesheet</a><br />struct _xsltStylesheet 113</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStylesheet">xsltStylesheet</a> * <a name="xsltStylesheetPtr" id="xsltStylesheetPtr">xsltStylesheetPtr</a> 114</pre><pre class="programlisting">Structure <a href="#xsltTemplate">xsltTemplate</a><br />struct _xsltTemplate 115</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltTemplate">xsltTemplate</a> * <a name="xsltTemplatePtr" id="xsltTemplatePtr">xsltTemplatePtr</a> 116</pre><pre class="programlisting">Structure <a href="#xsltTransformCache">xsltTransformCache</a><br />struct _xsltTransformCache 117</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltTransformCache">xsltTransformCache</a> * <a name="xsltTransformCachePtr" id="xsltTransformCachePtr">xsltTransformCachePtr</a> 118</pre><pre class="programlisting">Structure <a href="#xsltTransformContext">xsltTransformContext</a><br />struct _xsltTransformContext 119</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltTransformContext">xsltTransformContext</a> * <a name="xsltTransformContextPtr" id="xsltTransformContextPtr">xsltTransformContextPtr</a> 120</pre><pre class="programlisting">Enum <a href="#xsltTransformState">xsltTransformState</a> 121</pre><pre class="programlisting">Structure <a href="#xsltVarInfo">xsltVarInfo</a><br />struct _xsltVarInfo 122</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltVarInfo">xsltVarInfo</a> * <a name="xsltVarInfoPtr" id="xsltVarInfoPtr">xsltVarInfoPtr</a> 123</pre><pre class="programlisting">int <a href="#xsltAllocateExtra">xsltAllocateExtra</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre> 124<pre class="programlisting">int <a href="#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre> 125<pre class="programlisting">void <a href="#xsltCompileAttr">xsltCompileAttr</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlAttrPtr attr)</pre> 126<pre class="programlisting">xmlDocPtr <a href="#xsltCreateRVT">xsltCreateRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre> 127<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a> <a href="#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlChar * name)</pre> 128<pre class="programlisting">Function type: <a href="#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a> 129void <a href="#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a> (<a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp) 130</pre> 131<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> 132<pre class="programlisting">int <a href="#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre> 133<pre class="programlisting">int <a href="#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlXPathObjectPtr obj)</pre> 134<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> 135<pre class="programlisting">void <a href="#xsltFreeAVTList">xsltFreeAVTList</a> (void * avt)</pre> 136<pre class="programlisting">void <a href="#xsltFreeRVTs">xsltFreeRVTs</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre> 137<pre class="programlisting">void <a href="#xsltFreeStackElemList">xsltFreeStackElemList</a> (<a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> elem)</pre> 138<pre class="programlisting">void <a href="#xsltFreeStylesheet">xsltFreeStylesheet</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre> 139<pre class="programlisting">int <a href="#xsltInitAllDocKeys">xsltInitAllDocKeys</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre> 140<pre class="programlisting">int <a href="#xsltInitCtxtKey">xsltInitCtxtKey</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> idoc, <br /> <a href="libxslt-xsltInternals.html#xsltKeyDefPtr">xsltKeyDefPtr</a> keyDef)</pre> 141<pre class="programlisting">int <a href="#xsltIsBlank">xsltIsBlank</a> (xmlChar * str)</pre> 142<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a> (xmlDocPtr doc)</pre> 143<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltNewStylesheet">xsltNewStylesheet</a> (void)</pre> 144<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> 145<pre class="programlisting">int <a href="#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a> (<a href="libxslt-xsltInternals.html#xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a> cctxt, <br /> xmlNodePtr elem)</pre> 146<pre class="programlisting">void <a href="#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a> (<a href="libxslt-xsltInternals.html#xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a> cctxt, <br /> xmlNodePtr cur)</pre> 147<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a> (xmlDocPtr doc)</pre> 148<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltParseStylesheetFile">xsltParseStylesheetFile</a> (const xmlChar * filename)</pre> 149<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> parentStyle)</pre> 150<pre class="programlisting">void <a href="#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)</pre> 151<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> 152<pre class="programlisting">void <a href="#xsltParseTemplateContent">xsltParseTemplateContent</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr templ)</pre> 153<pre class="programlisting">int <a href="#xsltPointerListAddSize">xsltPointerListAddSize</a> (<a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> list, <br /> void * item, <br /> int initialSize)</pre> 154<pre class="programlisting">void <a href="#xsltPointerListClear">xsltPointerListClear</a> (<a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> list)</pre> 155<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> <a href="#xsltPointerListCreate">xsltPointerListCreate</a> (int initialSize)</pre> 156<pre class="programlisting">void <a href="#xsltPointerListFree">xsltPointerListFree</a> (<a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> list)</pre> 157<pre class="programlisting">int <a href="#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr RVT)</pre> 158<pre class="programlisting">int <a href="#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr RVT)</pre> 159<pre class="programlisting">int <a href="#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr RVT)</pre> 160<pre class="programlisting">void <a href="#xsltReleaseRVT">xsltReleaseRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr RVT)</pre> 161<pre class="programlisting">int <a href="#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a> (<a href="libxslt-xsltInternals.html#xsltNsMapPtr">xsltNsMapPtr</a> ns, <br /> xmlDocPtr doc)</pre> 162<pre class="programlisting">Function type: <a href="#xsltSortFunc">xsltSortFunc</a> 163void <a href="#xsltSortFunc">xsltSortFunc</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr * sorts, <br /> int nbsorts) 164</pre> 165<pre class="programlisting">Function type: <a href="#xsltTransformFunction">xsltTransformFunction</a> 166void <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) 167</pre> 168<pre class="programlisting">void <a href="#xsltUninit">xsltUninit</a> (void)</pre> 169<h2>Description</h2> 170<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> 171<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> 172<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> 173<h3><a name="IS_XSLT_ATTR_FAST" id="IS_XSLT_ATTR_FAST"></a>Macro: IS_XSLT_ATTR_FAST</h3><pre>#define IS_XSLT_ATTR_FAST</pre><p>quick check for xslt namespace attribute</p> 174<h3><a name="IS_XSLT_ELEM_FAST" id="IS_XSLT_ELEM_FAST"></a>Macro: IS_XSLT_ELEM_FAST</h3><pre>#define IS_XSLT_ELEM_FAST</pre><p>quick check whether this is an xslt element</p> 175<h3><a name="XML_CAST_FPTR" id="XML_CAST_FPTR"></a>Macro: XML_CAST_FPTR</h3><pre>#define XML_CAST_FPTR</pre><p>Macro to do a casting from an object pointer to a function pointer without encountering a warning from gcc #define XML_CAST_FPTR(fptr) (*(void **)(&fptr)) This macro violated ISO C aliasing rules (gcc4 on s390 broke) so it is disabled now</p> 176<h3><a name="XSLT_CCTXT" id="XSLT_CCTXT"></a>Macro: XSLT_CCTXT</h3><pre>#define XSLT_CCTXT</pre><p>get pointer to compiler context</p> 177<h3><a name="XSLT_FAST_IF" id="XSLT_FAST_IF"></a>Macro: XSLT_FAST_IF</h3><pre>#define XSLT_FAST_IF</pre><p>Internal define to enable usage of xmlXPathCompiledEvalToBoolean() for XSLT "tests"; e.g. in <xsl:if test="/foo/bar"></p> 178<h3><a name="XSLT_GET_INTERNAL_NSMAP" id="XSLT_GET_INTERNAL_NSMAP"></a>Macro: XSLT_GET_INTERNAL_NSMAP</h3><pre>#define XSLT_GET_INTERNAL_NSMAP</pre><p>get pointer to namespace map</p> 179<h3><a name="XSLT_HAS_INTERNAL_NSMAP" id="XSLT_HAS_INTERNAL_NSMAP"></a>Macro: XSLT_HAS_INTERNAL_NSMAP</h3><pre>#define XSLT_HAS_INTERNAL_NSMAP</pre><p>check for namespace mapping</p> 180<h3><a name="XSLT_IS_RES_TREE_FRAG" id="XSLT_IS_RES_TREE_FRAG"></a>Macro: XSLT_IS_RES_TREE_FRAG</h3><pre>#define XSLT_IS_RES_TREE_FRAG</pre><p>internal macro to test tree fragments</p> 181<h3><a name="XSLT_IS_TEXT_NODE" id="XSLT_IS_TEXT_NODE"></a>Macro: XSLT_IS_TEXT_NODE</h3><pre>#define XSLT_IS_TEXT_NODE</pre><p>check if the argument is a text node</p> 182<h3><a name="XSLT_ITEM_COMMON_FIELDS" id="XSLT_ITEM_COMMON_FIELDS"></a>Macro: XSLT_ITEM_COMMON_FIELDS</h3><pre>#define XSLT_ITEM_COMMON_FIELDS</pre><p>Common fields used for all items.</p> 183<h3><a name="XSLT_ITEM_COMPATIBILITY_FIELDS" id="XSLT_ITEM_COMPATIBILITY_FIELDS"></a>Macro: XSLT_ITEM_COMPATIBILITY_FIELDS</h3><pre>#define XSLT_ITEM_COMPATIBILITY_FIELDS</pre><p>Fields for API compatibility to the structure _xsltElemPreComp which is used for extension functions. Note that @next is used for storage; it does not reflect a next sibling in the tree. TODO: Evaluate if we really need such a compatibility.</p> 184<h3><a name="XSLT_ITEM_NAVIGATION_FIELDS" id="XSLT_ITEM_NAVIGATION_FIELDS"></a>Macro: XSLT_ITEM_NAVIGATION_FIELDS</h3><pre>#define XSLT_ITEM_NAVIGATION_FIELDS</pre><p>Currently empty. TODO: It is intended to hold navigational fields in the future.</p> 185<h3><a name="XSLT_ITEM_NSINSCOPE_FIELDS" id="XSLT_ITEM_NSINSCOPE_FIELDS"></a>Macro: XSLT_ITEM_NSINSCOPE_FIELDS</h3><pre>#define XSLT_ITEM_NSINSCOPE_FIELDS</pre><p>The in-scope namespaces.</p> 186<h3><a name="XSLT_MARK_RES_TREE_FRAG" id="XSLT_MARK_RES_TREE_FRAG"></a>Macro: XSLT_MARK_RES_TREE_FRAG</h3><pre>#define XSLT_MARK_RES_TREE_FRAG</pre><p>internal macro to set up tree fragments</p> 187<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> 188<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> 189<h3><a name="XSLT_REFACTORED_KEYCOMP" id="XSLT_REFACTORED_KEYCOMP"></a>Macro: XSLT_REFACTORED_KEYCOMP</h3><pre>#define XSLT_REFACTORED_KEYCOMP</pre><p>Internal define to enable on-demand xsl:key computation. That's the only mode now but the define is kept for compatibility</p> 190<h3><a name="XSLT_REFACTORED_VARS" id="XSLT_REFACTORED_VARS"></a>Macro: XSLT_REFACTORED_VARS</h3><pre>#define XSLT_REFACTORED_VARS</pre><p>Internal define to enable the refactored variable part of libxslt</p> 191<h3><a name="XSLT_REFACTORED_XPATHCOMP" id="XSLT_REFACTORED_XPATHCOMP"></a>Macro: XSLT_REFACTORED_XPATHCOMP</h3><pre>#define XSLT_REFACTORED_XPATHCOMP</pre><p>Internal define to enable the optimization of the compilation of XPath expressions.</p> 192<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> 193<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> 194<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> 195<h3><a name="xsltCompilerCtxt" id="xsltCompilerCtxt">Structure xsltCompilerCtxt</a></h3><pre class="programlisting">Structure xsltCompilerCtxt<br />struct _xsltCompilerCtxt { 196 void * errorCtxt : * used for error/warning reports; e.g. X 197 <a href="libxslt-xsltInternals.html#xsltErrorSeverityType">xsltErrorSeverityType</a> errSeverity 198 int warnings : TODO: number of warnings found at compi 199 int errors : TODO: number of errors found at compila 200 xmlDictPtr dict 201 <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style 202 int simplified : whether this is a simplified stylesheet 203 int depth : Current depth of processing 204 <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> inode 205 <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> inodeList 206 <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> inodeLast 207 <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> tmpList : * The XSLT version as specified by the s 208 int isInclude 209 int hasForwardsCompat : whether forwards-compatible mode was us 210 int maxNodeInfos : TEMP TODO: just for the interest 211 int maxLREs : * In order to keep the old behaviour, ap 212 int strict 213 <a href="libxslt-xsltInternals.html#xsltPrincipalStylesheetDataPtr">xsltPrincipalStylesheetDataPtr</a> psData 214 xmlXPathContextPtr xpathCtxt 215 <a href="libxslt-xsltInternals.html#xsltStyleItemUknownPtr">xsltStyleItemUknownPtr</a> unknownItem 216 int hasNsAliases : Indicator if there was an xsl:namespace 217 <a href="libxslt-xsltInternals.html#xsltNsAliasPtr">xsltNsAliasPtr</a> nsAliases 218 <a href="libxslt-xsltInternals.html#xsltVarInfoPtr">xsltVarInfoPtr</a> ivars : Storage of local in-scope variables/par 219 <a href="libxslt-xsltInternals.html#xsltVarInfoPtr">xsltVarInfoPtr</a> ivar : topmost local variable/param. 220}</pre><h3><a name="xsltCompilerNodeInfo" id="xsltCompilerNodeInfo">Structure xsltCompilerNodeInfo</a></h3><pre class="programlisting">Structure xsltCompilerNodeInfo<br />struct _xsltCompilerNodeInfo { 221 <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> next 222 <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> prev 223 xmlNodePtr node 224 int depth 225 <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ : The owning template 226 int category : XSLT element, LR-element or extension e 227 <a href="libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a> type 228 <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> item : The compiled information The current in 229 <a href="libxslt-xsltInternals.html#xsltNsListContainerPtr">xsltNsListContainerPtr</a> inScopeNs : The current excluded result namespaces 230 <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> exclResultNs : The current extension instruction names 231 <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> extElemNs : The current info for literal result ele 232 <a href="libxslt-xsltInternals.html#xsltStyleItemLRElementInfoPtr">xsltStyleItemLRElementInfoPtr</a> litResElemInfo : * Set to 1 if in-scope namespaces change 233 int nsChanged 234 int preserveWhitespace 235 int stripWhitespace 236 int isRoot : whether this is the stylesheet's root n 237 int forwardsCompat : whether forwards-compatible mode is ena 238 int extContentHandled : the type of the current child 239 <a href="libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a> curChildType 240}</pre><h3><a name="xsltDecimalFormat" id="xsltDecimalFormat">Structure xsltDecimalFormat</a></h3><pre class="programlisting">Structure xsltDecimalFormat<br />struct _xsltDecimalFormat { 241 struct _xsltDecimalFormat * next : chained list 242 xmlChar * name : Used for interpretation of pattern 243 xmlChar * digit 244 xmlChar * patternSeparator : May appear in result 245 xmlChar * minusSign 246 xmlChar * infinity 247 xmlChar * noNumber : Not-a-number Used for interpretation of 248 xmlChar * decimalPoint 249 xmlChar * grouping 250 xmlChar * percent 251 xmlChar * permille 252 xmlChar * zeroDigit 253}</pre><h3><a name="xsltDocument" id="xsltDocument">Structure xsltDocument</a></h3><pre class="programlisting">Structure xsltDocument<br />struct _xsltDocument { 254 struct _xsltDocument * next : documents are kept in a chained list 255 int main : is this the main document 256 xmlDocPtr doc : the parsed document 257 void * keys : key tables storage 258 struct _xsltDocument * includes : subsidiary includes 259 int preproc : pre-processing already done 260 int nbKeysComputed 261}</pre><h3><a name="xsltEffectiveNs" id="xsltEffectiveNs">Structure xsltEffectiveNs</a></h3><pre class="programlisting">Structure xsltEffectiveNs<br />struct _xsltEffectiveNs { 262 <a href="libxslt-xsltInternals.html#xsltEffectiveNsPtr">xsltEffectiveNsPtr</a> nextInStore : storage next 263 <a href="libxslt-xsltInternals.html#xsltEffectiveNsPtr">xsltEffectiveNsPtr</a> next : next item in the list 264 const xmlChar * prefix 265 const xmlChar * nsName : * Indicates if eclared on the literal re 266 int holdByElem 267}</pre><h3><a name="xsltElemPreComp" id="xsltElemPreComp">Structure xsltElemPreComp</a></h3><pre class="programlisting">Structure xsltElemPreComp<br />struct _xsltElemPreComp { 268 <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> next : next item in the global chained list ho 269 <a href="libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a> type : type of the element 270 <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> func : handling function 271 xmlNodePtr inst : the node in the stylesheet's tree corre 272 <a href="libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a> free : the deallocator 273}</pre><h3>Enum <a name="xsltErrorSeverityType" id="xsltErrorSeverityType">xsltErrorSeverityType</a></h3><pre class="programlisting">Enum xsltErrorSeverityType { 274 <a name="XSLT_ERROR_SEVERITY_ERROR" id="XSLT_ERROR_SEVERITY_ERROR">XSLT_ERROR_SEVERITY_ERROR</a> = 0 275 <a name="XSLT_ERROR_SEVERITY_WARNING" id="XSLT_ERROR_SEVERITY_WARNING">XSLT_ERROR_SEVERITY_WARNING</a> = 1 276} 277</pre><h3><a name="xsltKeyDef" id="xsltKeyDef">Structure xsltKeyDef</a></h3><pre class="programlisting">Structure xsltKeyDef<br />struct _xsltKeyDef { 278 struct _xsltKeyDef * next 279 xmlNodePtr inst 280 xmlChar * name 281 xmlChar * nameURI 282 xmlChar * match 283 xmlChar * use 284 xmlXPathCompExprPtr comp 285 xmlXPathCompExprPtr usecomp 286 xmlNsPtr * nsList : the namespaces in scope 287 int nsNr : the number of namespaces in scope 288}</pre><h3><a name="xsltKeyTable" id="xsltKeyTable">Structure xsltKeyTable</a></h3><pre class="programlisting">Structure xsltKeyTable<br />struct _xsltKeyTable { 289 struct _xsltKeyTable * next 290 xmlChar * name 291 xmlChar * nameURI 292 xmlHashTablePtr keys 293}</pre><h3><a name="xsltNsAlias" id="xsltNsAlias">Structure xsltNsAlias</a></h3><pre class="programlisting">Structure xsltNsAlias<br />struct _xsltNsAlias { 294 <a href="libxslt-xsltInternals.html#xsltNsAliasPtr">xsltNsAliasPtr</a> next : next in the list 295 xmlNsPtr literalNs 296 xmlNsPtr targetNs 297 xmlDocPtr docOfTargetNs 298}</pre><h3><a name="xsltNsList" id="xsltNsList">Structure xsltNsList</a></h3><pre class="programlisting">Structure xsltNsList<br />struct _xsltNsList { 299 <a href="libxslt-xsltInternals.html#xsltNsListPtr">xsltNsListPtr</a> next : next in the list 300 xmlNsPtr ns 301}</pre><h3><a name="xsltNsListContainer" id="xsltNsListContainer">Structure xsltNsListContainer</a></h3><pre class="programlisting">Structure xsltNsListContainer<br />struct _xsltNsListContainer { 302 xmlNsPtr * list 303 int totalNumber 304 int xpathNumber 305}</pre><h3><a name="xsltNsMap" id="xsltNsMap">Structure xsltNsMap</a></h3><pre class="programlisting">Structure xsltNsMap<br />struct _xsltNsMap { 306 <a href="libxslt-xsltInternals.html#xsltNsMapPtr">xsltNsMapPtr</a> next : next in the list 307 xmlDocPtr doc 308 xmlNodePtr elem : the element holding the ns-decl 309 xmlNsPtr ns : the xmlNs structure holding the XML nam 310 const xmlChar * origNsName : the original XML namespace name 311 const xmlChar * newNsName : the mapped XML namespace name 312}</pre><h3>Enum <a name="xsltOutputType" id="xsltOutputType">xsltOutputType</a></h3><pre class="programlisting">Enum xsltOutputType { 313 <a name="XSLT_OUTPUT_XML" id="XSLT_OUTPUT_XML">XSLT_OUTPUT_XML</a> = 0 314 <a name="XSLT_OUTPUT_HTML" id="XSLT_OUTPUT_HTML">XSLT_OUTPUT_HTML</a> = 1 315 <a name="XSLT_OUTPUT_TEXT" id="XSLT_OUTPUT_TEXT">XSLT_OUTPUT_TEXT</a> = 2 316} 317</pre><h3><a name="xsltPointerList" id="xsltPointerList">Structure xsltPointerList</a></h3><pre class="programlisting">Structure xsltPointerList<br />struct _xsltPointerList { 318 void ** items 319 int number 320 int size 321}</pre><h3><a name="xsltPrincipalStylesheetData" id="xsltPrincipalStylesheetData">Structure xsltPrincipalStylesheetData</a></h3><pre class="programlisting">Structure xsltPrincipalStylesheetData<br />struct _xsltPrincipalStylesheetData { 322 xmlDictPtr namespaceDict : * Global list of in-scope namespaces. * 323 <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> inScopeNamespaces : * Global list of information for [xsl:]e 324 <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> exclResultNamespaces : * Global list of information for [xsl:]e 325 <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> extElemNamespaces 326 <a href="libxslt-xsltInternals.html#xsltEffectiveNsPtr">xsltEffectiveNsPtr</a> effectiveNs : * Namespace name map to get rid of strin 327 <a href="libxslt-xsltInternals.html#xsltNsMapPtr">xsltNsMapPtr</a> nsMap 328}</pre><h3><a name="xsltRuntimeExtra" id="xsltRuntimeExtra">Structure xsltRuntimeExtra</a></h3><pre class="programlisting">Structure xsltRuntimeExtra<br />struct _xsltRuntimeExtra { 329 void * info : pointer to the extra data 330 xmlFreeFunc deallocate : pointer to the deallocation routine 331}</pre><h3><a name="xsltStackElem" id="xsltStackElem">Structure xsltStackElem</a></h3><pre class="programlisting">Structure xsltStackElem<br />struct _xsltStackElem { 332 struct _xsltStackElem * next : chained list 333 <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp : the compiled form 334 int computed : was the evaluation done 335 const xmlChar * name : the local part of the name QName 336 const xmlChar * nameURI : the URI part of the name QName 337 const xmlChar * select : the eval string 338 xmlNodePtr tree : the sequence constructor if no eval str 339 xmlXPathObjectPtr value : The value if computed 340 xmlDocPtr fragment : The Result Tree Fragments (needed for X 341 int level : the depth in the tree; -1 if persistent 342 <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> context : The transformation context; needed to c 343 int flags 344}</pre><h3><a name="xsltStyleBasicEmptyItem" id="xsltStyleBasicEmptyItem">Structure xsltStyleBasicEmptyItem</a></h3><pre class="programlisting">Structure xsltStyleBasicEmptyItem<br />struct _xsltStyleBasicEmptyItem { 345The content of this structure is not made public by the API. 346}</pre><h3><a name="xsltStyleBasicExpressionItem" id="xsltStyleBasicExpressionItem">Structure xsltStyleBasicExpressionItem</a></h3><pre class="programlisting">Structure xsltStyleBasicExpressionItem<br />struct _xsltStyleBasicExpressionItem { 347 const xmlChar * select : TODO: Change this to "expression". 348 xmlXPathCompExprPtr comp : TODO: Change this to compExpr. 349}</pre><h3><a name="xsltStyleBasicItemVariable" id="xsltStyleBasicItemVariable">Structure xsltStyleBasicItemVariable</a></h3><pre class="programlisting">Structure xsltStyleBasicItemVariable<br />struct _xsltStyleBasicItemVariable { 350 const xmlChar * select 351 xmlXPathCompExprPtr comp 352 const xmlChar * name 353 int has_name 354 const xmlChar * ns 355 int has_ns 356}</pre><h3><a name="xsltStyleItemApplyTemplates" id="xsltStyleItemApplyTemplates">Structure xsltStyleItemApplyTemplates</a></h3><pre class="programlisting">Structure xsltStyleItemApplyTemplates<br />struct _xsltStyleItemApplyTemplates { 357 const xmlChar * mode : apply-templates 358 const xmlChar * modeURI : apply-templates 359 const xmlChar * select : sort, copy-of, value-of, apply-template 360 xmlXPathCompExprPtr comp : a precompiled XPath expression TODO: wi 361}</pre><h3><a name="xsltStyleItemAttribute" id="xsltStyleItemAttribute">Structure xsltStyleItemAttribute</a></h3><pre class="programlisting">Structure xsltStyleItemAttribute<br />struct _xsltStyleItemAttribute { 362 const xmlChar * name 363 int has_name 364 const xmlChar * ns 365 const xmlChar * nsPrefix 366 int has_ns 367}</pre><h3><a name="xsltStyleItemCallTemplate" id="xsltStyleItemCallTemplate">Structure xsltStyleItemCallTemplate</a></h3><pre class="programlisting">Structure xsltStyleItemCallTemplate<br />struct _xsltStyleItemCallTemplate { 368 <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ : call-template 369 const xmlChar * name : element, attribute, pi 370 int has_name : element, attribute, pi 371 const xmlChar * ns : element 372 int has_ns : element TODO: with-params 373}</pre><h3><a name="xsltStyleItemCopy" id="xsltStyleItemCopy">Structure xsltStyleItemCopy</a></h3><pre class="programlisting">Structure xsltStyleItemCopy<br />struct _xsltStyleItemCopy { 374 const xmlChar * use : copy, element 375 int has_use : copy, element 376}</pre><h3><a name="xsltStyleItemDocument" id="xsltStyleItemDocument">Structure xsltStyleItemDocument</a></h3><pre class="programlisting">Structure xsltStyleItemDocument<br />struct _xsltStyleItemDocument { 377 int ver11 : assigned: in xsltDocumentComp; read: no 378 const xmlChar * filename : document URL 379 int has_filename 380}</pre><h3><a name="xsltStyleItemElement" id="xsltStyleItemElement">Structure xsltStyleItemElement</a></h3><pre class="programlisting">Structure xsltStyleItemElement<br />struct _xsltStyleItemElement { 381 const xmlChar * use 382 int has_use 383 const xmlChar * name 384 int has_name 385 const xmlChar * ns 386 const xmlChar * nsPrefix 387 int has_ns 388}</pre><h3><a name="xsltStyleItemExtElement" id="xsltStyleItemExtElement">Structure xsltStyleItemExtElement</a></h3><pre class="programlisting">Structure xsltStyleItemExtElement<br />struct _xsltStyleItemExtElement { 389 <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> item 390}</pre><h3><a name="xsltStyleItemIf" id="xsltStyleItemIf">Structure xsltStyleItemIf</a></h3><pre class="programlisting">Structure xsltStyleItemIf<br />struct _xsltStyleItemIf { 391 const xmlChar * test : if 392 xmlXPathCompExprPtr comp : a precompiled XPath expression 393}</pre><h3><a name="xsltStyleItemInclude" id="xsltStyleItemInclude">Structure xsltStyleItemInclude</a></h3><pre class="programlisting">Structure xsltStyleItemInclude<br />struct _xsltStyleItemInclude { 394 <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> include 395}</pre><h3><a name="xsltStyleItemLRElementInfo" id="xsltStyleItemLRElementInfo">Structure xsltStyleItemLRElementInfo</a></h3><pre class="programlisting">Structure xsltStyleItemLRElementInfo<br />struct _xsltStyleItemLRElementInfo { 396 <a href="libxslt-xsltInternals.html#xsltEffectiveNsPtr">xsltEffectiveNsPtr</a> effectiveNs 397}</pre><h3><a name="xsltStyleItemMessage" id="xsltStyleItemMessage">Structure xsltStyleItemMessage</a></h3><pre class="programlisting">Structure xsltStyleItemMessage<br />struct _xsltStyleItemMessage { 398 int terminate 399}</pre><h3><a name="xsltStyleItemNumber" id="xsltStyleItemNumber">Structure xsltStyleItemNumber</a></h3><pre class="programlisting">Structure xsltStyleItemNumber<br />struct _xsltStyleItemNumber { 400 <a href="libxslt-numbersInternals.html#xsltNumberData">xsltNumberData</a> numdata : number 401}</pre><h3><a name="xsltStyleItemOtherwise" id="xsltStyleItemOtherwise">Structure xsltStyleItemOtherwise</a></h3><pre class="programlisting">Structure xsltStyleItemOtherwise<br />struct _xsltStyleItemOtherwise { 402The content of this structure is not made public by the API. 403}</pre><h3><a name="xsltStyleItemPI" id="xsltStyleItemPI">Structure xsltStyleItemPI</a></h3><pre class="programlisting">Structure xsltStyleItemPI<br />struct _xsltStyleItemPI { 404 const xmlChar * name 405 int has_name 406}</pre><h3><a name="xsltStyleItemParam" id="xsltStyleItemParam">Structure xsltStyleItemParam</a></h3><pre class="programlisting">Structure xsltStyleItemParam<br />struct _xsltStyleItemParam { 407 const xmlChar * select 408 xmlXPathCompExprPtr comp 409 const xmlChar * name 410 int has_name 411 const xmlChar * ns 412 int has_ns 413}</pre><h3><a name="xsltStyleItemSort" id="xsltStyleItemSort">Structure xsltStyleItemSort</a></h3><pre class="programlisting">Structure xsltStyleItemSort<br />struct _xsltStyleItemSort { 414 const xmlChar * stype : sort 415 int has_stype : sort 416 int number : sort 417 const xmlChar * order : sort 418 int has_order : sort 419 int descending : sort 420 const xmlChar * lang : sort 421 int has_lang : sort 422 <a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> locale : sort 423 const xmlChar * case_order : sort 424 int lower_first : sort 425 const xmlChar * use 426 int has_use 427 const xmlChar * select : sort, copy-of, value-of, apply-template 428 xmlXPathCompExprPtr comp : a precompiled XPath expression 429}</pre><h3><a name="xsltStyleItemText" id="xsltStyleItemText">Structure xsltStyleItemText</a></h3><pre class="programlisting">Structure xsltStyleItemText<br />struct _xsltStyleItemText { 430 int noescape : text 431}</pre><h3><a name="xsltStyleItemUknown" id="xsltStyleItemUknown">Structure xsltStyleItemUknown</a></h3><pre class="programlisting">Structure xsltStyleItemUknown<br />struct _xsltStyleItemUknown { 432The content of this structure is not made public by the API. 433}</pre><h3><a name="xsltStyleItemValueOf" id="xsltStyleItemValueOf">Structure xsltStyleItemValueOf</a></h3><pre class="programlisting">Structure xsltStyleItemValueOf<br />struct _xsltStyleItemValueOf { 434 const xmlChar * select 435 xmlXPathCompExprPtr comp : a precompiled XPath expression 436 int noescape 437}</pre><h3><a name="xsltStyleItemWhen" id="xsltStyleItemWhen">Structure xsltStyleItemWhen</a></h3><pre class="programlisting">Structure xsltStyleItemWhen<br />struct _xsltStyleItemWhen { 438 const xmlChar * test 439 xmlXPathCompExprPtr comp 440}</pre><h3><a name="xsltStylePreComp" id="xsltStylePreComp">Structure xsltStylePreComp</a></h3><pre class="programlisting">Structure xsltStylePreComp<br />struct _xsltStylePreComp { 441 <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> next : chained list 442 <a href="libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a> type : type of the element 443 <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> func : handling function 444 xmlNodePtr inst : * Pre computed values. * 445 const xmlChar * stype : sort 446 int has_stype : sort 447 int number : sort 448 const xmlChar * order : sort 449 int has_order : sort 450 int descending : sort 451 const xmlChar * lang : sort 452 int has_lang : sort 453 <a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> locale : sort 454 const xmlChar * case_order : sort 455 int lower_first : sort 456 const xmlChar * use : copy, element 457 int has_use : copy, element 458 int noescape : text 459 const xmlChar * name : element, attribute, pi 460 int has_name : element, attribute, pi 461 const xmlChar * ns : element 462 int has_ns : element 463 const xmlChar * mode : apply-templates 464 const xmlChar * modeURI : apply-templates 465 const xmlChar * test : if 466 <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ : call-template 467 const xmlChar * select : sort, copy-of, value-of, apply-template 468 int ver11 : document 469 const xmlChar * filename : document URL 470 int has_filename : document 471 <a href="libxslt-numbersInternals.html#xsltNumberData">xsltNumberData</a> numdata : number 472 xmlXPathCompExprPtr comp : a precompiled XPath expression 473 xmlNsPtr * nsList : the namespaces in scope 474 int nsNr : the number of namespaces in scope 475}</pre><h3>Enum <a name="xsltStyleType" id="xsltStyleType">xsltStyleType</a></h3><pre class="programlisting">Enum xsltStyleType { 476 <a name="XSLT_FUNC_COPY" id="XSLT_FUNC_COPY">XSLT_FUNC_COPY</a> = 1 477 <a name="XSLT_FUNC_SORT" id="XSLT_FUNC_SORT">XSLT_FUNC_SORT</a> = 2 478 <a name="XSLT_FUNC_TEXT" id="XSLT_FUNC_TEXT">XSLT_FUNC_TEXT</a> = 3 479 <a name="XSLT_FUNC_ELEMENT" id="XSLT_FUNC_ELEMENT">XSLT_FUNC_ELEMENT</a> = 4 480 <a name="XSLT_FUNC_ATTRIBUTE" id="XSLT_FUNC_ATTRIBUTE">XSLT_FUNC_ATTRIBUTE</a> = 5 481 <a name="XSLT_FUNC_COMMENT" id="XSLT_FUNC_COMMENT">XSLT_FUNC_COMMENT</a> = 6 482 <a name="XSLT_FUNC_PI" id="XSLT_FUNC_PI">XSLT_FUNC_PI</a> = 7 483 <a name="XSLT_FUNC_COPYOF" id="XSLT_FUNC_COPYOF">XSLT_FUNC_COPYOF</a> = 8 484 <a name="XSLT_FUNC_VALUEOF" id="XSLT_FUNC_VALUEOF">XSLT_FUNC_VALUEOF</a> = 9 485 <a name="XSLT_FUNC_NUMBER" id="XSLT_FUNC_NUMBER">XSLT_FUNC_NUMBER</a> = 10 486 <a name="XSLT_FUNC_APPLYIMPORTS" id="XSLT_FUNC_APPLYIMPORTS">XSLT_FUNC_APPLYIMPORTS</a> = 11 487 <a name="XSLT_FUNC_CALLTEMPLATE" id="XSLT_FUNC_CALLTEMPLATE">XSLT_FUNC_CALLTEMPLATE</a> = 12 488 <a name="XSLT_FUNC_APPLYTEMPLATES" id="XSLT_FUNC_APPLYTEMPLATES">XSLT_FUNC_APPLYTEMPLATES</a> = 13 489 <a name="XSLT_FUNC_CHOOSE" id="XSLT_FUNC_CHOOSE">XSLT_FUNC_CHOOSE</a> = 14 490 <a name="XSLT_FUNC_IF" id="XSLT_FUNC_IF">XSLT_FUNC_IF</a> = 15 491 <a name="XSLT_FUNC_FOREACH" id="XSLT_FUNC_FOREACH">XSLT_FUNC_FOREACH</a> = 16 492 <a name="XSLT_FUNC_DOCUMENT" id="XSLT_FUNC_DOCUMENT">XSLT_FUNC_DOCUMENT</a> = 17 493 <a name="XSLT_FUNC_WITHPARAM" id="XSLT_FUNC_WITHPARAM">XSLT_FUNC_WITHPARAM</a> = 18 494 <a name="XSLT_FUNC_PARAM" id="XSLT_FUNC_PARAM">XSLT_FUNC_PARAM</a> = 19 495 <a name="XSLT_FUNC_VARIABLE" id="XSLT_FUNC_VARIABLE">XSLT_FUNC_VARIABLE</a> = 20 496 <a name="XSLT_FUNC_WHEN" id="XSLT_FUNC_WHEN">XSLT_FUNC_WHEN</a> = 21 497 <a name="XSLT_FUNC_EXTENSION" id="XSLT_FUNC_EXTENSION">XSLT_FUNC_EXTENSION</a> = 22 498 <a name="XSLT_FUNC_OTHERWISE" id="XSLT_FUNC_OTHERWISE">XSLT_FUNC_OTHERWISE</a> = 23 499 <a name="XSLT_FUNC_FALLBACK" id="XSLT_FUNC_FALLBACK">XSLT_FUNC_FALLBACK</a> = 24 500 <a name="XSLT_FUNC_MESSAGE" id="XSLT_FUNC_MESSAGE">XSLT_FUNC_MESSAGE</a> = 25 501 <a name="XSLT_FUNC_INCLUDE" id="XSLT_FUNC_INCLUDE">XSLT_FUNC_INCLUDE</a> = 26 502 <a name="XSLT_FUNC_ATTRSET" id="XSLT_FUNC_ATTRSET">XSLT_FUNC_ATTRSET</a> = 27 503 <a name="XSLT_FUNC_LITERAL_RESULT_ELEMENT" id="XSLT_FUNC_LITERAL_RESULT_ELEMENT">XSLT_FUNC_LITERAL_RESULT_ELEMENT</a> = 28 504 <a name="XSLT_FUNC_UNKOWN_FORWARDS_COMPAT" id="XSLT_FUNC_UNKOWN_FORWARDS_COMPAT">XSLT_FUNC_UNKOWN_FORWARDS_COMPAT</a> = 29 505} 506</pre><h3><a name="xsltStylesheet" id="xsltStylesheet">Structure xsltStylesheet</a></h3><pre class="programlisting">Structure xsltStylesheet<br />struct _xsltStylesheet { 507 struct _xsltStylesheet * parent 508 struct _xsltStylesheet * next 509 struct _xsltStylesheet * imports 510 <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> docList : * General data on the style sheet docume 511 xmlDocPtr doc : the parsed XML stylesheet 512 xmlHashTablePtr stripSpaces : the hash table of the strip-space and p 513 int stripAll : strip-space * (1) preserve-space * (-1) 514 xmlHashTablePtr cdataSection : * Global variable or parameters. * 515 <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> variables : * Template descriptions. * 516 <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templates : the ordered list of templates 517 void * templatesHash : hash table or wherever compiled templat 518 void * rootMatch : template based on / 519 void * keyMatch : template based on key() 520 void * elemMatch : template based on * 521 void * attrMatch : template based on @* 522 void * parentMatch : template based on .. 523 void * textMatch : template based on text() 524 void * piMatch : template based on processing-instructio 525 void * commentMatch : * Namespace aliases. * NOTE: Not used in 526 xmlHashTablePtr nsAliases : * Attribute sets. * 527 xmlHashTablePtr attributeSets : * Namespaces. * TODO: Eliminate this. * 528 xmlHashTablePtr nsHash : the set of namespaces in use: ATTENTION 529 void * nsDefs : * Key definitions. * 530 void * keys : * Output related stuff. * 531 xmlChar * method : the output method 532 xmlChar * methodURI : associated namespace if any 533 xmlChar * version : version string 534 xmlChar * encoding : encoding string 535 int omitXmlDeclaration : * Number formatting. * 536 <a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a> decimalFormat 537 int standalone : standalone = "yes" | "no" 538 xmlChar * doctypePublic : doctype-public string 539 xmlChar * doctypeSystem : doctype-system string 540 int indent : should output being indented 541 xmlChar * mediaType : * Precomputed blocks. * 542 <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> preComps : list of precomputed blocks 543 int warnings : number of warnings found at compilation 544 int errors : number of errors found at compilation 545 xmlChar * exclPrefix : last excluded prefixes 546 xmlChar ** exclPrefixTab : array of excluded prefixes 547 int exclPrefixNr : number of excluded prefixes in scope 548 int exclPrefixMax : size of the array 549 void * _private : * Extensions. * 550 xmlHashTablePtr extInfos : the extension data 551 int extrasNr : * For keeping track of nested includes * 552 <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> includes : * dictionary: shared between stylesheet, 553 xmlDictPtr dict : * precompiled attribute value templates. 554 void * attVTs : * if namespace-alias has an alias for th 555 const xmlChar * defaultAlias : * bypass pre-processing (already done) ( 556 int nopreproc : * all document text strings were interna 557 int internalized : * Literal Result Element as Stylesheet c 558 int literal_result : * The principal stylesheet * 559 <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> principal : * Compilation context used during compil 560 <a href="libxslt-xsltInternals.html#xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a> compCtxt : TODO: Change this to (void *). 561 <a href="libxslt-xsltInternals.html#xsltPrincipalStylesheetDataPtr">xsltPrincipalStylesheetDataPtr</a> principalData : * Forwards-compatible processing * 562 int forwards_compatible 563}</pre><h3><a name="xsltTemplate" id="xsltTemplate">Structure xsltTemplate</a></h3><pre class="programlisting">Structure xsltTemplate<br />struct _xsltTemplate { 564 struct _xsltTemplate * next : chained list sorted by priority 565 struct _xsltStylesheet * style : the containing stylesheet 566 xmlChar * match : the matching string 567 float priority : as given from the stylesheet, not compu 568 const xmlChar * name : the local part of the name QName 569 const xmlChar * nameURI : the URI part of the name QName 570 const xmlChar * mode : the local part of the mode QName 571 const xmlChar * modeURI : the URI part of the mode QName 572 xmlNodePtr content : the template replacement value 573 xmlNodePtr elem : * TODO: @inheritedNsNr and @inheritedNs 574 int inheritedNsNr : number of inherited namespaces 575 xmlNsPtr * inheritedNs : inherited non-excluded namespaces Profi 576 int nbCalls : the number of time the template was cal 577 unsigned long time : the time spent in this template 578 void * params : xsl:param instructions 579 int templNr : Nb of templates in the stack 580 int templMax : Size of the templtes stack 581 <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> * templCalledTab : templates called 582 int * templCountTab : .. and how often 583}</pre><h3><a name="xsltTransformCache" id="xsltTransformCache">Structure xsltTransformCache</a></h3><pre class="programlisting">Structure xsltTransformCache<br />struct _xsltTransformCache { 584 xmlDocPtr RVT 585 int nbRVT 586 <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> stackItems 587 int nbStackItems 588 int dbgCachedRVTs 589 int dbgReusedRVTs 590 int dbgCachedVars 591 int dbgReusedVars 592}</pre><h3><a name="xsltTransformContext" id="xsltTransformContext">Structure xsltTransformContext</a></h3><pre class="programlisting">Structure xsltTransformContext<br />struct _xsltTransformContext { 593 <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style : the stylesheet used 594 <a href="libxslt-xsltInternals.html#xsltOutputType">xsltOutputType</a> type : the type of output 595 <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ : the current template 596 int templNr : Nb of templates in the stack 597 int templMax : Size of the templtes stack 598 <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> * templTab : the template stack 599 <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> vars : the current variable list 600 int varsNr : Nb of variable list in the stack 601 int varsMax : Size of the variable list stack 602 <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> * varsTab : the variable list stack 603 int varsBase : * Extensions * 604 xmlHashTablePtr extFunctions : the extension functions 605 xmlHashTablePtr extElements : the extension elements 606 xmlHashTablePtr extInfos : the extension data 607 const xmlChar * mode : the current mode 608 const xmlChar * modeURI : the current mode URI 609 <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> docList : the document list 610 <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> document : the current source document; can be NUL 611 xmlNodePtr node : the current node being processed 612 xmlNodeSetPtr nodeList : the current node list xmlNodePtr curren 613 xmlDocPtr output : the resulting document 614 xmlNodePtr insert : the insertion node 615 xmlXPathContextPtr xpathCtxt : the XPath context 616 <a href="libxslt-xsltInternals.html#xsltTransformState">xsltTransformState</a> state : * Global variables * 617 xmlHashTablePtr globalVars : the global variables and params 618 xmlNodePtr inst : the instruction in the stylesheet 619 int xinclude : should XInclude be processed 620 const char * outputFile : the output URI if known 621 int profile : is this run profiled 622 long prof : the current profiled value 623 int profNr : Nb of templates in the stack 624 int profMax : Size of the templtaes stack 625 long * profTab : the profile template stack 626 void * _private : user defined data 627 int extrasNr : the number of extras used 628 int extrasMax : the number of extras allocated 629 <a href="libxslt-xsltInternals.html#xsltRuntimeExtraPtr">xsltRuntimeExtraPtr</a> extras : extra per runtime informations 630 <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> styleList : the stylesheet docs list 631 void * sec : the security preferences if any 632 xmlGenericErrorFunc error : a specific error handler 633 void * errctx : context for the error handler 634 <a href="libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a> sortfunc : * handling of temporary Result Value Tre 635 xmlDocPtr tmpRVT : list of RVT without persistance 636 xmlDocPtr persistRVT : list of persistant RVTs 637 int ctxtflags : * Speed optimization when coalescing tex 638 const xmlChar * lasttext : last text node content 639 unsigned int lasttsize : last text node size 640 unsigned int lasttuse : * Per Context Debugging * 641 int debugStatus : the context level debug status 642 unsigned long * traceCode : pointer to the variable holding the mas 643 int parserOptions : * dictionary: shared between stylesheet, 644 xmlDictPtr dict 645 xmlDocPtr tmpDoc : * all document text strings are internal 646 int internalized 647 int nbKeys 648 int hasTemplKeyPatterns 649 <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> currentTemplateRule : the Current Template Rule 650 xmlNodePtr initialContextNode 651 xmlDocPtr initialContextDoc 652 <a href="libxslt-xsltInternals.html#xsltTransformCachePtr">xsltTransformCachePtr</a> cache 653 void * contextVariable : the current variable item 654 xmlDocPtr localRVT : list of local tree fragments; will be f 655 xmlDocPtr localRVTBase 656 int keyInitLevel : Needed to catch recursive keys issues 657 int funcLevel : Needed to catch recursive functions iss 658 int maxTemplateDepth 659 int maxTemplateVars 660}</pre><h3>Enum <a name="xsltTransformState" id="xsltTransformState">xsltTransformState</a></h3><pre class="programlisting">Enum xsltTransformState { 661 <a name="XSLT_STATE_OK" id="XSLT_STATE_OK">XSLT_STATE_OK</a> = 0 662 <a name="XSLT_STATE_ERROR" id="XSLT_STATE_ERROR">XSLT_STATE_ERROR</a> = 1 663 <a name="XSLT_STATE_STOPPED" id="XSLT_STATE_STOPPED">XSLT_STATE_STOPPED</a> = 2 664} 665</pre><h3><a name="xsltVarInfo" id="xsltVarInfo">Structure xsltVarInfo</a></h3><pre class="programlisting">Structure xsltVarInfo<br />struct _xsltVarInfo { 666 <a href="libxslt-xsltInternals.html#xsltVarInfoPtr">xsltVarInfoPtr</a> next : next in the list 667 <a href="libxslt-xsltInternals.html#xsltVarInfoPtr">xsltVarInfoPtr</a> prev 668 int depth : the depth in the tree 669 const xmlChar * name 670 const xmlChar * nsName 671}</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 /> 672</pre><p>Allocate an extra runtime information slot statically while compiling the stylesheet and return its number</p> 673<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 /> 674</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> 675<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 /> 676</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> 677<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 /> 678</pre><p>Creates a Result Value Tree (the XSLT 1.0 term for this is "Result Tree Fragment")</p> 679<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 API or internal errors.</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> style, <br /> xmlChar * name)<br /> 680</pre><p>Find decimal-format by name</p> 681<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>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 682void xsltElemPreCompDeallocator (<a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp) 683</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 /> 684<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 /> 685</pre><p>Process the given AVT, and return the new string value.</p> 686<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="xsltExtensionInstructionResultFinalize" id="xsltExtensionInstructionResultFinalize"></a>Function: xsltExtensionInstructionResultFinalize</h3><pre class="programlisting">int xsltExtensionInstructionResultFinalize (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br /> 687</pre><p>Finalizes the data (e.g. result tree fragments) created within a value-returning process (e.g. EXSLT's function). Tree fragments marked as being returned by a function are set to normal state, which means that the fragment garbage collector will free them after the function-calling process exits.</p> 688<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>0 in case of success and -1 in case of API or internal errors.</td></tr></tbody></table></div><h3><a name="xsltExtensionInstructionResultRegister" id="xsltExtensionInstructionResultRegister"></a>Function: xsltExtensionInstructionResultRegister</h3><pre class="programlisting">int xsltExtensionInstructionResultRegister (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlXPathObjectPtr obj)<br /> 689</pre><p>Marks the result of a value-returning extension instruction in order to avoid it being garbage collected before the extension instruction exits. Note that one still has to additionally register any newly created tree fragments (via xsltCreateRVT()) with xsltRegisterLocalRVT().</p> 690<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>obj</tt></i>:</span></td><td>an XPath object to be inspected for result tree fragments</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="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 /> 691</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> 692<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 /> 693</pre><p>Free up the memory associated to the attribute value templates</p> 694<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 /> 695</pre><p>Frees all registered result value trees (Result Tree Fragments) of the transformation. Internal function; should not be called by user-code.</p> 696<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 /> 697</pre><p>Free up the memory allocated by @elem</p> 698<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> style)<br /> 699</pre><p>Free up the memory allocated by @style</p> 700<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></tbody></table></div><h3><a name="xsltInitAllDocKeys" id="xsltInitAllDocKeys"></a>Function: xsltInitAllDocKeys</h3><pre class="programlisting">int xsltInitAllDocKeys (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br /> 701</pre><p>INTERNAL ROUTINE ONLY Check if any keys on the current document need to be computed</p> 702<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>transformation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of failure</td></tr></tbody></table></div><h3><a name="xsltInitCtxtKey" id="xsltInitCtxtKey"></a>Function: xsltInitCtxtKey</h3><pre class="programlisting">int xsltInitCtxtKey (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> idoc, <br /> <a href="libxslt-xsltInternals.html#xsltKeyDefPtr">xsltKeyDefPtr</a> keyDef)<br /> 703</pre><p>Computes the key tables this key and for the current input document.</p> 704<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>idoc</tt></i>:</span></td><td>the document information (holds key values)</td></tr><tr><td><span class="term"><i><tt>keyDef</tt></i>:</span></td><td>the key definition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success, -1 on error</td></tr></tbody></table></div><h3><a name="xsltIsBlank" id="xsltIsBlank"></a>Function: xsltIsBlank</h3><pre class="programlisting">int xsltIsBlank (xmlChar * str)<br /> 705</pre><p>Check if a string is ignorable</p> 706<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 /> 707</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> 708<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 /> 709</pre><p>Create a new XSLT Stylesheet</p> 710<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 /> 711</pre><p>Convert one number.</p> 712<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="xsltParseAnyXSLTElem" id="xsltParseAnyXSLTElem"></a>Function: xsltParseAnyXSLTElem</h3><pre class="programlisting">int xsltParseAnyXSLTElem (<a href="libxslt-xsltInternals.html#xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a> cctxt, <br /> xmlNodePtr elem)<br /> 713</pre><p>Parses, validates the content models and compiles XSLT instructions.</p> 714<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cctxt</tt></i>:</span></td><td>the compilation context</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element node of the XSLT instruction</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if everything's fine; -1 on API or internal errors.</td></tr></tbody></table></div><h3><a name="xsltParseSequenceConstructor" id="xsltParseSequenceConstructor"></a>Function: xsltParseSequenceConstructor</h3><pre class="programlisting">void xsltParseSequenceConstructor (<a href="libxslt-xsltInternals.html#xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a> cctxt, <br /> xmlNodePtr cur)<br /> 715</pre><p>Parses a "template" content (or "sequence constructor" in XSLT 2.0 terms). This will additionally remove xsl:text elements from the tree.</p> 716<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cctxt</tt></i>:</span></td><td>the compilation context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the start-node of the content to be parsed</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 /> 717</pre><p>parse an XSLT stylesheet, building the associated structures. doc is kept as a reference within the returned stylesheet, so changes to doc after the parsing will be reflected when the stylesheet is applied, and the doc is automatically freed when the stylesheet is closed.</p> 718<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 /> 719</pre><p>Load and parse an XSLT stylesheet</p> 720<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> parentStyle)<br /> 721</pre><p>parse an XSLT stylesheet building the associated structures except the processing not needed for imported documents.</p> 722<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>parentStyle</tt></i>:</span></td><td>pointer to the parent stylesheet (if it exists)</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 /> 723</pre><p>parse an XSLT stylesheet output element and record information related to the stylesheet output</p> 724<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 /> 725</pre><p>Parses an XSLT stylesheet, adding the associated structures. Called by: xsltParseStylesheetImportedDoc() (xslt.c) xsltParseStylesheetInclude() (imports.c)</p> 726<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 (the current stylesheet-level)</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 @style 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 /> 727</pre><p>parse a template content-model Clean-up the template content from unwanted ignorable blank nodes and process xslt:text</p> 728<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="xsltPointerListAddSize" id="xsltPointerListAddSize"></a>Function: xsltPointerListAddSize</h3><pre class="programlisting">int xsltPointerListAddSize (<a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> list, <br /> void * item, <br /> int initialSize)<br /> 729</pre><p>Adds an item to the list.</p> 730<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>the pointer list structure</td></tr><tr><td><span class="term"><i><tt>item</tt></i>:</span></td><td>the item to be stored</td></tr><tr><td><span class="term"><i><tt>initialSize</tt></i>:</span></td><td>the initial size of the list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the position of the added item in the list or -1 in case of an error.</td></tr></tbody></table></div><h3><a name="xsltPointerListClear" id="xsltPointerListClear"></a>Function: xsltPointerListClear</h3><pre class="programlisting">void xsltPointerListClear (<a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> list)<br /> 731</pre><p>Resets the list, but does not free the allocated array and does not free the content of the list.</p> 732<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>pointer to the list to be cleared</td></tr></tbody></table></div><h3><a name="xsltPointerListCreate" id="xsltPointerListCreate"></a>Function: xsltPointerListCreate</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> xsltPointerListCreate (int initialSize)<br /> 733</pre><p>Creates an <a href="libxslt-xsltInternals.html#xsltPointerList">xsltPointerList</a> structure.</p> 734<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>initialSize</tt></i>:</span></td><td>the initial size for the list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a <a href="libxslt-xsltInternals.html#xsltPointerList">xsltPointerList</a> structure or NULL in case of an error.</td></tr></tbody></table></div><h3><a name="xsltPointerListFree" id="xsltPointerListFree"></a>Function: xsltPointerListFree</h3><pre class="programlisting">void xsltPointerListFree (<a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> list)<br /> 735</pre><p>Frees the <a href="libxslt-xsltInternals.html#xsltPointerList">xsltPointerList</a> structure. This does not free the content of the list.</p> 736<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>pointer to the list to be freed</td></tr></tbody></table></div><h3><a name="xsltRegisterLocalRVT" id="xsltRegisterLocalRVT"></a>Function: xsltRegisterLocalRVT</h3><pre class="programlisting">int xsltRegisterLocalRVT (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr RVT)<br /> 737</pre><p>Registers a result value tree (XSLT 1.0 term: Result Tree Fragment) in the RVT garbage collector. The fragment will be freed when the instruction which created the fragment exits.</p> 738<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 (Result Tree Fragment; xmlDocPtr)</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 API or internal errors.</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 /> 739</pre><p>Register the result value tree (XSLT 1.0 term: Result Tree Fragment) in the fragment garbage collector. The fragment will be freed when the transformation context is freed.</p> 740<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 (Result Tree Fragment)</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 /> 741</pre><p>Registers the result value tree (XSLT 1.0 term: Result Tree Fragment) in the garbage collector. The fragment will be freed at the exit of the currently instantiated xsl:template. Obsolete; this function might produce massive memory overhead, since the fragment is only freed when the current xsl:template exits. Use xsltRegisterLocalRVT() instead.</p> 742<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 (Result Tree Fragment)</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 API or internal errors.</td></tr></tbody></table></div><h3><a name="xsltReleaseRVT" id="xsltReleaseRVT"></a>Function: xsltReleaseRVT</h3><pre class="programlisting">void xsltReleaseRVT (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr RVT)<br /> 743</pre><p>Either frees the RVT (which is an xmlDoc) or stores it in the context's cache for later reuse.</p> 744<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 (Result Tree Fragment)</td></tr></tbody></table></div><h3><a name="xsltRestoreDocumentNamespaces" id="xsltRestoreDocumentNamespaces"></a>Function: xsltRestoreDocumentNamespaces</h3><pre class="programlisting">int xsltRestoreDocumentNamespaces (<a href="libxslt-xsltInternals.html#xsltNsMapPtr">xsltNsMapPtr</a> ns, <br /> xmlDocPtr doc)<br /> 745</pre><p>Restore the namespaces for the document</p> 746<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>map of namespaces</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of failure</td></tr></tbody></table></div><h3><a name="xsltSortFunc" id="xsltSortFunc"></a>Function type: xsltSortFunc</h3><pre class="programlisting">Function type: xsltSortFunc 747void xsltSortFunc (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr * sorts, <br /> int nbsorts) 748</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 /> 749<h3><a name="xsltTransformFunction" id="xsltTransformFunction"></a>Function type: xsltTransformFunction</h3><pre class="programlisting">Function type: xsltTransformFunction 750void 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) 751</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 /> 752<h3><a name="xsltUninit" id="xsltUninit"></a>Function: xsltUninit</h3><pre class="programlisting">void xsltUninit (void)<br /> 753</pre><p>Uninitializes the processor.</p> 754<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> 755