summaryrefslogtreecommitdiffstats
path: root/libxslt/doc/html
diff options
context:
space:
mode:
Diffstat (limited to 'libxslt/doc/html')
-rw-r--r--libxslt/doc/html/book1.html10
-rw-r--r--libxslt/doc/html/home.pngbin0 -> 654 bytes
-rw-r--r--libxslt/doc/html/index.html10
-rw-r--r--libxslt/doc/html/left.pngbin0 -> 459 bytes
-rw-r--r--libxslt/doc/html/libxslt-attributes.html23
-rw-r--r--libxslt/doc/html/libxslt-documents.html47
-rw-r--r--libxslt/doc/html/libxslt-extensions.html152
-rw-r--r--libxslt/doc/html/libxslt-extra.html28
-rw-r--r--libxslt/doc/html/libxslt-functions.html42
-rw-r--r--libxslt/doc/html/libxslt-imports.html31
-rw-r--r--libxslt/doc/html/libxslt-keys.html27
-rw-r--r--libxslt/doc/html/libxslt-lib.html10
-rw-r--r--libxslt/doc/html/libxslt-namespaces.html33
-rw-r--r--libxslt/doc/html/libxslt-numbersInternals.html39
-rw-r--r--libxslt/doc/html/libxslt-pattern.html43
-rw-r--r--libxslt/doc/html/libxslt-preproc.html20
-rw-r--r--libxslt/doc/html/libxslt-security.html63
-rw-r--r--libxslt/doc/html/libxslt-templates.html44
-rw-r--r--libxslt/doc/html/libxslt-transform.html113
-rw-r--r--libxslt/doc/html/libxslt-variables.html54
-rw-r--r--libxslt/doc/html/libxslt-xslt.html22
-rw-r--r--libxslt/doc/html/libxslt-xsltInternals.html754
-rw-r--r--libxslt/doc/html/libxslt-xsltexports.html16
-rw-r--r--libxslt/doc/html/libxslt-xsltlocale.html29
-rw-r--r--libxslt/doc/html/libxslt-xsltutils.html182
-rw-r--r--libxslt/doc/html/right.pngbin0 -> 472 bytes
-rw-r--r--libxslt/doc/html/up.pngbin0 -> 406 bytes
27 files changed, 1792 insertions, 0 deletions
diff --git a/libxslt/doc/html/book1.html b/libxslt/doc/html/book1.html
new file mode 100644
index 0000000..f3ccb11
--- /dev/null
+++ b/libxslt/doc/html/book1.html
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Reference Manual for 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>Reference Manual for 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"><h2>Table of Contents</h2><ul><li><a href="libxslt-attributes.html">attributes</a>: interface for the XSLT attribute handling</li><li><a href="libxslt-documents.html">documents</a>: interface for the document handling</li><li><a href="libxslt-extensions.html">extensions</a>: interface for the extension support</li><li><a href="libxslt-extra.html">extra</a>: interface for the non-standard features</li><li><a href="libxslt-functions.html">functions</a>: interface for the XSLT functions not from XPath</li><li><a href="libxslt-imports.html">imports</a>: interface for the XSLT import support</li><li><a href="libxslt-keys.html">keys</a>: interface for the key matching used in key() and template matches.</li><li><a href="libxslt-namespaces.html">namespaces</a>: interface for the XSLT namespace handling</li><li><a href="libxslt-numbersInternals.html">numbersInternals</a>: Implementation of the XSLT number functions</li><li><a href="libxslt-pattern.html">pattern</a>: interface for the pattern matching used in template matches.</li><li><a href="libxslt-preproc.html">preproc</a>: precomputing stylesheets</li><li><a href="libxslt-security.html">security</a>: interface for the libxslt security framework</li><li><a href="libxslt-templates.html">templates</a>: interface for the template processing</li><li><a href="libxslt-transform.html">transform</a>: the XSLT engine transformation part.</li><li><a href="libxslt-variables.html">variables</a>: interface for the variable matching and lookup.</li><li><a href="libxslt-xslt.html">xslt</a>: Interfaces, constants and types related to the XSLT engine</li><li><a href="libxslt-xsltInternals.html">xsltInternals</a>: internal data structures, constants and functions</li><li><a href="libxslt-xsltexports.html">xsltexports</a>: macros for marking symbols as exportable/importable.</li><li><a href="libxslt-xsltlocale.html">xsltlocale</a>: Locale handling</li><li><a href="libxslt-xsltutils.html">xsltutils</a>: set of utilities for the XSLT engine</li></ul><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>
diff --git a/libxslt/doc/html/home.png b/libxslt/doc/html/home.png
new file mode 100644
index 0000000..1700361
--- /dev/null
+++ b/libxslt/doc/html/home.png
Binary files differ
diff --git a/libxslt/doc/html/index.html b/libxslt/doc/html/index.html
new file mode 100644
index 0000000..f3ccb11
--- /dev/null
+++ b/libxslt/doc/html/index.html
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Reference Manual for 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>Reference Manual for 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"><h2>Table of Contents</h2><ul><li><a href="libxslt-attributes.html">attributes</a>: interface for the XSLT attribute handling</li><li><a href="libxslt-documents.html">documents</a>: interface for the document handling</li><li><a href="libxslt-extensions.html">extensions</a>: interface for the extension support</li><li><a href="libxslt-extra.html">extra</a>: interface for the non-standard features</li><li><a href="libxslt-functions.html">functions</a>: interface for the XSLT functions not from XPath</li><li><a href="libxslt-imports.html">imports</a>: interface for the XSLT import support</li><li><a href="libxslt-keys.html">keys</a>: interface for the key matching used in key() and template matches.</li><li><a href="libxslt-namespaces.html">namespaces</a>: interface for the XSLT namespace handling</li><li><a href="libxslt-numbersInternals.html">numbersInternals</a>: Implementation of the XSLT number functions</li><li><a href="libxslt-pattern.html">pattern</a>: interface for the pattern matching used in template matches.</li><li><a href="libxslt-preproc.html">preproc</a>: precomputing stylesheets</li><li><a href="libxslt-security.html">security</a>: interface for the libxslt security framework</li><li><a href="libxslt-templates.html">templates</a>: interface for the template processing</li><li><a href="libxslt-transform.html">transform</a>: the XSLT engine transformation part.</li><li><a href="libxslt-variables.html">variables</a>: interface for the variable matching and lookup.</li><li><a href="libxslt-xslt.html">xslt</a>: Interfaces, constants and types related to the XSLT engine</li><li><a href="libxslt-xsltInternals.html">xsltInternals</a>: internal data structures, constants and functions</li><li><a href="libxslt-xsltexports.html">xsltexports</a>: macros for marking symbols as exportable/importable.</li><li><a href="libxslt-xsltlocale.html">xsltlocale</a>: Locale handling</li><li><a href="libxslt-xsltutils.html">xsltutils</a>: set of utilities for the XSLT engine</li></ul><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>
diff --git a/libxslt/doc/html/left.png b/libxslt/doc/html/left.png
new file mode 100644
index 0000000..2d05b3d
--- /dev/null
+++ b/libxslt/doc/html/left.png
Binary files differ
diff --git a/libxslt/doc/html/libxslt-attributes.html b/libxslt/doc/html/libxslt-attributes.html
new file mode 100644
index 0000000..84f4862
--- /dev/null
+++ b/libxslt/doc/html/libxslt-attributes.html
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module attributes 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 attributes 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="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-documents.html">documents</a></th><td><a accesskey="n" href="libxslt-documents.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module handles the specificities of attribute and attribute groups processing. </p><h2>Table of Contents</h2><pre class="programlisting">void <a href="#xsltApplyAttributeSet">xsltApplyAttributeSet</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> const xmlChar * attrSets)</pre>
+<pre class="programlisting">void <a href="#xsltFreeAttributeSetsHashes">xsltFreeAttributeSetsHashes</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">void <a href="#xsltParseStylesheetAttributeSet">xsltParseStylesheetAttributeSet</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)</pre>
+<pre class="programlisting">void <a href="#xsltResolveStylesheetAttributeSet">xsltResolveStylesheetAttributeSet</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<h2>Description</h2>
+<h3><a name="xsltApplyAttributeSet" id="xsltApplyAttributeSet"></a>Function: xsltApplyAttributeSet</h3><pre class="programlisting">void xsltApplyAttributeSet (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> const xmlChar * attrSets)<br />
+</pre><p>Apply the xsl:use-attribute-sets. If @attrSets is NULL, then @inst will be used to exctract this value. If both, @attrSets and @inst, are NULL, then this will do nothing.</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 stylesheet</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node in the source tree.</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the attribute node "xsl:use-attribute-sets"</td></tr><tr><td><span class="term"><i><tt>attrSets</tt></i>:</span></td><td>the list of QNames of the attribute-sets to be applied</td></tr></tbody></table></div><h3><a name="xsltFreeAttributeSetsHashes" id="xsltFreeAttributeSetsHashes"></a>Function: xsltFreeAttributeSetsHashes</h3><pre class="programlisting">void xsltFreeAttributeSetsHashes (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Free up the memory used by attribute sets</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetAttributeSet" id="xsltParseStylesheetAttributeSet"></a>Function: xsltParseStylesheetAttributeSet</h3><pre class="programlisting">void xsltParseStylesheetAttributeSet (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)<br />
+</pre><p>parse an XSLT stylesheet attribute-set element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the "attribute-set" element</td></tr></tbody></table></div><h3><a name="xsltResolveStylesheetAttributeSet" id="xsltResolveStylesheetAttributeSet"></a>Function: xsltResolveStylesheetAttributeSet</h3><pre class="programlisting">void xsltResolveStylesheetAttributeSet (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>resolve the references between attribute sets.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-documents.html b/libxslt/doc/html/libxslt-documents.html
new file mode 100644
index 0000000..57e9b8b
--- /dev/null
+++ b/libxslt/doc/html/libxslt-documents.html
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module documents 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 documents 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-attributes.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-attributes.html">attributes</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-extensions.html">extensions</a></th><td><a accesskey="n" href="libxslt-extensions.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>implements document loading and cache (multiple document() reference for the same resources must be equal. </p><h2>Table of Contents</h2><pre class="programlisting">Enum <a href="#xsltLoadType">xsltLoadType</a>
+</pre><pre class="programlisting">Function type: <a href="#xsltDocLoaderFunc">xsltDocLoaderFunc</a>
+xmlDocPtr <a href="#xsltDocLoaderFunc">xsltDocLoaderFunc</a> (const xmlChar * URI, <br /> xmlDictPtr dict, <br /> int options, <br /> void * ctxt, <br /> <a href="libxslt-documents.html#xsltLoadType">xsltLoadType</a> type)
+</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> <a href="#xsltFindDocument">xsltFindDocument</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr doc)</pre>
+<pre class="programlisting">void <a href="#xsltFreeDocuments">xsltFreeDocuments</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void <a href="#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> <a href="#xsltLoadDocument">xsltLoadDocument</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> <a href="#xsltLoadStyleDocument">xsltLoadStyleDocument</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> <a href="#xsltNewDocument">xsltNewDocument</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr doc)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> <a href="#xsltNewStyleDocument">xsltNewStyleDocument</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc)</pre>
+<pre class="programlisting">void <a href="#xsltSetLoaderFunc">xsltSetLoaderFunc</a> (<a href="libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a> f)</pre>
+<h2>Description</h2>
+<h3>Enum <a name="xsltLoadType" id="xsltLoadType">xsltLoadType</a></h3><pre class="programlisting">Enum xsltLoadType {
+ <a name="XSLT_LOAD_START" id="XSLT_LOAD_START">XSLT_LOAD_START</a> = 0 : loading for a top stylesheet
+ <a name="XSLT_LOAD_STYLESHEET" id="XSLT_LOAD_STYLESHEET">XSLT_LOAD_STYLESHEET</a> = 1 : loading for a stylesheet include/import
+ <a name="XSLT_LOAD_DOCUMENT" id="XSLT_LOAD_DOCUMENT">XSLT_LOAD_DOCUMENT</a> = 2 : loading document at transformation time
+}
+</pre><h3><a name="xsltDocLoaderFunc" id="xsltDocLoaderFunc"></a>Function type: xsltDocLoaderFunc</h3><pre class="programlisting">Function type: xsltDocLoaderFunc
+xmlDocPtr xsltDocLoaderFunc (const xmlChar * URI, <br /> xmlDictPtr dict, <br /> int options, <br /> void * ctxt, <br /> <a href="libxslt-documents.html#xsltLoadType">xsltLoadType</a> type)
+</pre><p>An <a href="libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a> is a signature for a function which can be registered to load document not provided by the compilation or transformation API themselve, for example when an xsl:import, xsl:include is found at compilation time or when a document() call is made at runtime.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI of the document to load</td></tr><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionary to use when parsing that document</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>parsing options, a set of xmlParserOption</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the context, either a stylesheet or a transformation context</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the <a href="libxslt-documents.html#xsltLoadType">xsltLoadType</a> indicating the kind of loading required</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer to the document (which will be modified and freed by the engine later), or NULL in case of error.</td></tr></tbody></table></div><br />
+<h3><a name="xsltFindDocument" id="xsltFindDocument"></a>Function: xsltFindDocument</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> xsltFindDocument (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr doc)<br />
+</pre><p>Try to find a document within the XSLT transformation context. This will not find document infos for temporary Result Tree Fragments.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the desired <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltFreeDocuments" id="xsltFreeDocuments"></a>Function: xsltFreeDocuments</h3><pre class="programlisting">void xsltFreeDocuments (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Free up all the space used by the loaded documents</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr></tbody></table></div><h3><a name="xsltFreeStyleDocuments" id="xsltFreeStyleDocuments"></a>Function: xsltFreeStyleDocuments</h3><pre class="programlisting">void xsltFreeStyleDocuments (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Frees the node-trees (and <a href="libxslt-xsltInternals.html#xsltDocument">xsltDocument</a> structures) of all stylesheet-modules of the stylesheet-level represented by the given @style.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet (representing a stylesheet-level)</td></tr></tbody></table></div><h3><a name="xsltLoadDocument" id="xsltLoadDocument"></a>Function: xsltLoadDocument</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> xsltLoadDocument (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URI)<br />
+</pre><p>Try to load a document (not a stylesheet) within the XSLT transformation context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the computed URI of the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltLoadStyleDocument" id="xsltLoadStyleDocument"></a>Function: xsltLoadStyleDocument</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> xsltLoadStyleDocument (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)<br />
+</pre><p>Try to load a stylesheet document within the XSLT transformation context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT style sheet</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the computed URI of the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltNewDocument" id="xsltNewDocument"></a>Function: xsltNewDocument</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> xsltNewDocument (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr doc)<br />
+</pre><p>Register a new document, apply key computations</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context (or NULL)</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a handler to the document</td></tr></tbody></table></div><h3><a name="xsltNewStyleDocument" id="xsltNewStyleDocument"></a>Function: xsltNewStyleDocument</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> xsltNewStyleDocument (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc)<br />
+</pre><p>Register a new document, apply key computations</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT style sheet</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a handler to the document</td></tr></tbody></table></div><h3><a name="xsltSetLoaderFunc" id="xsltSetLoaderFunc"></a>Function: xsltSetLoaderFunc</h3><pre class="programlisting">void xsltSetLoaderFunc (<a href="libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a> f)<br />
+</pre><p>Set the new function to load document, if NULL it resets it to the default function.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the new function to handle document loading.</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-extensions.html b/libxslt/doc/html/libxslt-extensions.html
new file mode 100644
index 0000000..40b61ff
--- /dev/null
+++ b/libxslt/doc/html/libxslt-extensions.html
@@ -0,0 +1,152 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module extensions 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 extensions 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-documents.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-documents.html">documents</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-extra.html">extra</a></th><td><a accesskey="n" href="libxslt-extra.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>This provide the API needed for simple and module extension support. </p><h2>Table of Contents</h2><pre class="programlisting">int <a href="#xsltCheckExtPrefix">xsltCheckExtPrefix</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">int <a href="#xsltCheckExtURI">xsltCheckExtURI</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">void <a href="#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a> (FILE * output)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> <a href="#xsltExtElementLookup">xsltExtElementLookup</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">Function type: <a href="#xsltExtInitFunction">xsltExtInitFunction</a>
+void * <a href="#xsltExtInitFunction">xsltExtInitFunction</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URI)
+</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> <a href="#xsltExtModuleElementLookup">xsltExtModuleElementLookup</a> (const xmlChar * name, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting"><a href="libxslt-extensions.html#xsltPreComputeFunction">xsltPreComputeFunction</a> <a href="#xsltExtModuleElementPreComputeLookup">xsltExtModuleElementPreComputeLookup</a> (const xmlChar * name, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">xmlXPathFunction <a href="#xsltExtModuleFunctionLookup">xsltExtModuleFunctionLookup</a> (const xmlChar * name, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting"><a href="libxslt-extensions.html#xsltTopLevelFunction">xsltTopLevelFunction</a> <a href="#xsltExtModuleTopLevelLookup">xsltExtModuleTopLevelLookup</a> (const xmlChar * name, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">Function type: <a href="#xsltExtShutdownFunction">xsltExtShutdownFunction</a>
+void <a href="#xsltExtShutdownFunction">xsltExtShutdownFunction</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URI, <br /> void * data)
+</pre>
+<pre class="programlisting">void <a href="#xsltFreeCtxtExts">xsltFreeCtxtExts</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void <a href="#xsltFreeExts">xsltFreeExts</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">void * <a href="#xsltGetExtData">xsltGetExtData</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">xmlHashTablePtr <a href="#xsltGetExtInfo">xsltGetExtInfo</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">int <a href="#xsltInitCtxtExts">xsltInitCtxtExts</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void <a href="#xsltInitElemPreComp">xsltInitElemPreComp</a> (<a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> function, <br /> <a href="libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a> freeFunc)</pre>
+<pre class="programlisting">void <a href="#xsltInitGlobals">xsltInitGlobals</a> (void)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> <a href="#xsltNewElemPreComp">xsltNewElemPreComp</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> function)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> <a href="#xsltPreComputeExtModuleElement">xsltPreComputeExtModuleElement</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst)</pre>
+<pre class="programlisting">Function type: <a href="#xsltPreComputeFunction">xsltPreComputeFunction</a>
+<a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> <a href="#xsltPreComputeFunction">xsltPreComputeFunction</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> function)
+</pre>
+<pre class="programlisting">int <a href="#xsltRegisterExtElement">xsltRegisterExtElement</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * URI, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> function)</pre>
+<pre class="programlisting">int <a href="#xsltRegisterExtFunction">xsltRegisterExtFunction</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * URI, <br /> xmlXPathFunction function)</pre>
+<pre class="programlisting">int <a href="#xsltRegisterExtModule">xsltRegisterExtModule</a> (const xmlChar * URI, <br /> <a href="libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a> initFunc, <br /> <a href="libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a> shutdownFunc)</pre>
+<pre class="programlisting">int <a href="#xsltRegisterExtModuleElement">xsltRegisterExtModuleElement</a> (const xmlChar * name, <br /> const xmlChar * URI, <br /> <a href="libxslt-extensions.html#xsltPreComputeFunction">xsltPreComputeFunction</a> precomp, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> transform)</pre>
+<pre class="programlisting">int <a href="#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a> (const xmlChar * URI, <br /> <a href="libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a> initFunc, <br /> <a href="libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a> shutdownFunc, <br /> <a href="libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a> styleInitFunc, <br /> <a href="libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a> styleShutdownFunc)</pre>
+<pre class="programlisting">int <a href="#xsltRegisterExtModuleFunction">xsltRegisterExtModuleFunction</a> (const xmlChar * name, <br /> const xmlChar * URI, <br /> xmlXPathFunction function)</pre>
+<pre class="programlisting">int <a href="#xsltRegisterExtModuleTopLevel">xsltRegisterExtModuleTopLevel</a> (const xmlChar * name, <br /> const xmlChar * URI, <br /> <a href="libxslt-extensions.html#xsltTopLevelFunction">xsltTopLevelFunction</a> function)</pre>
+<pre class="programlisting">int <a href="#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * prefix, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">void <a href="#xsltRegisterTestModule">xsltRegisterTestModule</a> (void)</pre>
+<pre class="programlisting">void <a href="#xsltShutdownCtxtExts">xsltShutdownCtxtExts</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void <a href="#xsltShutdownExts">xsltShutdownExts</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">Function type: <a href="#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a>
+void * <a href="#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)
+</pre>
+<pre class="programlisting">Function type: <a href="#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a>
+void <a href="#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI, <br /> void * data)
+</pre>
+<pre class="programlisting">void * <a href="#xsltStyleGetExtData">xsltStyleGetExtData</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">void * <a href="#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">Function type: <a href="#xsltTopLevelFunction">xsltTopLevelFunction</a>
+void <a href="#xsltTopLevelFunction">xsltTopLevelFunction</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst)
+</pre>
+<pre class="programlisting">int <a href="#xsltUnregisterExtModule">xsltUnregisterExtModule</a> (const xmlChar * URI)</pre>
+<pre class="programlisting">int <a href="#xsltUnregisterExtModuleElement">xsltUnregisterExtModuleElement</a> (const xmlChar * name, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">int <a href="#xsltUnregisterExtModuleFunction">xsltUnregisterExtModuleFunction</a> (const xmlChar * name, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting">int <a href="#xsltUnregisterExtModuleTopLevel">xsltUnregisterExtModuleTopLevel</a> (const xmlChar * name, <br /> const xmlChar * URI)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> <a href="#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a> (xmlXPathParserContextPtr ctxt)</pre>
+<h2>Description</h2>
+<h3><a name="xsltCheckExtPrefix" id="xsltCheckExtPrefix"></a>Function: xsltCheckExtPrefix</h3><pre class="programlisting">int xsltCheckExtPrefix (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)<br />
+</pre><p>Check if the given prefix is one of the declared extensions. This is intended to be called only at compile-time. Called by: xsltGetInheritedNsList() (xslt.c) <a href="libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a> (xslt.c)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the namespace prefix (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if this is an extension, 0 otherwise</td></tr></tbody></table></div><h3><a name="xsltCheckExtURI" id="xsltCheckExtURI"></a>Function: xsltCheckExtURI</h3><pre class="programlisting">int xsltCheckExtURI (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)<br />
+</pre><p>Check if the given prefix is one of the declared extensions. This is intended to be called only at compile-time. Called by: xsltPrecomputeStylesheet() (xslt.c) <a href="libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a> (xslt.c)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the namespace URI (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if this is an extension, 0 otherwise</td></tr></tbody></table></div><h3><a name="xsltDebugDumpExtensions" id="xsltDebugDumpExtensions"></a>Function: xsltDebugDumpExtensions</h3><pre class="programlisting">void xsltDebugDumpExtensions (FILE * output)<br />
+</pre><p>Dumps a list of the registered XSLT extension functions and elements</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output, if NULL stdout is used</td></tr></tbody></table></div><h3><a name="xsltExtElementLookup" id="xsltExtElementLookup"></a>Function: xsltExtElementLookup</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> xsltExtElementLookup (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * URI)<br />
+</pre><p>Looks up an extension element. @ctxt can be NULL to search only in module elements.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT process context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the element callback or NULL if not found</td></tr></tbody></table></div><h3><a name="xsltExtInitFunction" id="xsltExtInitFunction"></a>Function type: xsltExtInitFunction</h3><pre class="programlisting">Function type: xsltExtInitFunction
+void * xsltExtInitFunction (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URI)
+</pre><p>A function called at initialization time of an XSLT extension module.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the namespace URI for the extension</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the module specific data for this transformation.</td></tr></tbody></table></div><br />
+<h3><a name="xsltExtModuleElementLookup" id="xsltExtModuleElementLookup"></a>Function: xsltExtModuleElementLookup</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> xsltExtModuleElementLookup (const xmlChar * name, <br /> const xmlChar * URI)<br />
+</pre><p>Looks up an extension module element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the callback function if found, NULL otherwise.</td></tr></tbody></table></div><h3><a name="xsltExtModuleElementPreComputeLookup" id="xsltExtModuleElementPreComputeLookup"></a>Function: xsltExtModuleElementPreComputeLookup</h3><pre class="programlisting"><a href="libxslt-extensions.html#xsltPreComputeFunction">xsltPreComputeFunction</a> xsltExtModuleElementPreComputeLookup (const xmlChar * name, <br /> const xmlChar * URI)<br />
+</pre><p>Looks up an extension module element pre-computation function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the callback function if found, NULL otherwise.</td></tr></tbody></table></div><h3><a name="xsltExtModuleFunctionLookup" id="xsltExtModuleFunctionLookup"></a>Function: xsltExtModuleFunctionLookup</h3><pre class="programlisting">xmlXPathFunction xsltExtModuleFunctionLookup (const xmlChar * name, <br /> const xmlChar * URI)<br />
+</pre><p>Looks up an extension module function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the function namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the function if found, NULL otherwise.</td></tr></tbody></table></div><h3><a name="xsltExtModuleTopLevelLookup" id="xsltExtModuleTopLevelLookup"></a>Function: xsltExtModuleTopLevelLookup</h3><pre class="programlisting"><a href="libxslt-extensions.html#xsltTopLevelFunction">xsltTopLevelFunction</a> xsltExtModuleTopLevelLookup (const xmlChar * name, <br /> const xmlChar * URI)<br />
+</pre><p>Looks up an extension module top-level element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the top-level element name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the top-level element namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the callback function if found, NULL otherwise.</td></tr></tbody></table></div><h3><a name="xsltExtShutdownFunction" id="xsltExtShutdownFunction"></a>Function type: xsltExtShutdownFunction</h3><pre class="programlisting">Function type: xsltExtShutdownFunction
+void xsltExtShutdownFunction (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URI, <br /> void * data)
+</pre><p>A function called at shutdown time of an XSLT extension module.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the namespace URI for the extension</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data associated to this module</td></tr></tbody></table></div><br />
+<h3><a name="xsltFreeCtxtExts" id="xsltFreeCtxtExts"></a>Function: xsltFreeCtxtExts</h3><pre class="programlisting">void xsltFreeCtxtExts (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Free the XSLT extension data</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr></tbody></table></div><h3><a name="xsltFreeExts" id="xsltFreeExts"></a>Function: xsltFreeExts</h3><pre class="programlisting">void xsltFreeExts (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Free up the memory used by XSLT extensions in a stylesheet</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr></tbody></table></div><h3><a name="xsltGetExtData" id="xsltGetExtData"></a>Function: xsltGetExtData</h3><pre class="programlisting">void * xsltGetExtData (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URI)<br />
+</pre><p>Retrieve the data associated to the extension module in this given transformation.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI associated to the exension module</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer or NULL if not present</td></tr></tbody></table></div><h3><a name="xsltGetExtInfo" id="xsltGetExtInfo"></a>Function: xsltGetExtInfo</h3><pre class="programlisting">xmlHashTablePtr xsltGetExtInfo (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)<br />
+</pre><p>looks up URI in extInfos of the stylesheet</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>pointer to a stylesheet</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the namespace URI desired</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the hash table if found, else NULL</td></tr></tbody></table></div><h3><a name="xsltInitCtxtExts" id="xsltInitCtxtExts"></a>Function: xsltInitCtxtExts</h3><pre class="programlisting">int xsltInitCtxtExts (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Initialize the set of modules with registered stylesheet data</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of modules initialized or -1 in case of error</td></tr></tbody></table></div><h3><a name="xsltInitElemPreComp" id="xsltInitElemPreComp"></a>Function: xsltInitElemPreComp</h3><pre class="programlisting">void xsltInitElemPreComp (<a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> function, <br /> <a href="libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a> freeFunc)<br />
+</pre><p>Initializes an existing #xsltElemPreComp structure. This is usefull when extending an #xsltElemPreComp to store precomputed data. This function MUST be called on any extension element precomputed data struct.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>an #xsltElemPreComp (or generally a derived structure)</td></tr><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>inst</tt></i>:</span></td><td>the element node</td></tr><tr><td><span class="term"><i><tt>function</tt></i>:</span></td><td>the transform function</td></tr><tr><td><span class="term"><i><tt>freeFunc</tt></i>:</span></td><td>the @comp deallocator</td></tr></tbody></table></div><h3><a name="xsltInitGlobals" id="xsltInitGlobals"></a>Function: xsltInitGlobals</h3><pre class="programlisting">void xsltInitGlobals (void)<br />
+</pre><p>Initialize the global variables for extensions</p>
+<h3><a name="xsltNewElemPreComp" id="xsltNewElemPreComp"></a>Function: xsltNewElemPreComp</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> xsltNewElemPreComp (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> function)<br />
+</pre><p>Creates and initializes an #xsltElemPreComp</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the element node</td></tr><tr><td><span class="term"><i><tt>function</tt></i>:</span></td><td>the transform function</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new and initialized #xsltElemPreComp</td></tr></tbody></table></div><h3><a name="xsltPreComputeExtModuleElement" id="xsltPreComputeExtModuleElement"></a>Function: xsltPreComputeExtModuleElement</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> xsltPreComputeExtModuleElement (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst)<br />
+</pre><p>Precomputes an extension module element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the element node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the precomputed data</td></tr></tbody></table></div><h3><a name="xsltPreComputeFunction" id="xsltPreComputeFunction"></a>Function type: xsltPreComputeFunction</h3><pre class="programlisting">Function type: xsltPreComputeFunction
+<a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> xsltPreComputeFunction (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> function)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>function</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xsltRegisterExtElement" id="xsltRegisterExtElement"></a>Function: xsltRegisterExtElement</h3><pre class="programlisting">int xsltRegisterExtElement (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * URI, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> function)<br />
+</pre><p>Registers an extension element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the element</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI associated to the element</td></tr><tr><td><span class="term"><i><tt>function</tt></i>:</span></td><td>the actual implementation which should be called</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="xsltRegisterExtFunction" id="xsltRegisterExtFunction"></a>Function: xsltRegisterExtFunction</h3><pre class="programlisting">int xsltRegisterExtFunction (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * URI, <br /> xmlXPathFunction function)<br />
+</pre><p>Registers an extension function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the element</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI associated to the element</td></tr><tr><td><span class="term"><i><tt>function</tt></i>:</span></td><td>the actual implementation which should be called</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="xsltRegisterExtModule" id="xsltRegisterExtModule"></a>Function: xsltRegisterExtModule</h3><pre class="programlisting">int xsltRegisterExtModule (const xmlChar * URI, <br /> <a href="libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a> initFunc, <br /> <a href="libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a> shutdownFunc)<br />
+</pre><p>Register an XSLT extension module to the library.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>URI associated to this module</td></tr><tr><td><span class="term"><i><tt>initFunc</tt></i>:</span></td><td>the module initialization function</td></tr><tr><td><span class="term"><i><tt>shutdownFunc</tt></i>:</span></td><td>the module shutdown function</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if sucessful, -1 in case of error</td></tr></tbody></table></div><h3><a name="xsltRegisterExtModuleElement" id="xsltRegisterExtModuleElement"></a>Function: xsltRegisterExtModuleElement</h3><pre class="programlisting">int xsltRegisterExtModuleElement (const xmlChar * name, <br /> const xmlChar * URI, <br /> <a href="libxslt-extensions.html#xsltPreComputeFunction">xsltPreComputeFunction</a> precomp, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> transform)<br />
+</pre><p>Registers an extension module element.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace URI</td></tr><tr><td><span class="term"><i><tt>precomp</tt></i>:</span></td><td>the pre-computation callback</td></tr><tr><td><span class="term"><i><tt>transform</tt></i>:</span></td><td>the transformation callback</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltRegisterExtModuleFull" id="xsltRegisterExtModuleFull"></a>Function: xsltRegisterExtModuleFull</h3><pre class="programlisting">int xsltRegisterExtModuleFull (const xmlChar * URI, <br /> <a href="libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a> initFunc, <br /> <a href="libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a> shutdownFunc, <br /> <a href="libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a> styleInitFunc, <br /> <a href="libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a> styleShutdownFunc)<br />
+</pre><p>Register an XSLT extension module to the library.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>URI associated to this module</td></tr><tr><td><span class="term"><i><tt>initFunc</tt></i>:</span></td><td>the module initialization function</td></tr><tr><td><span class="term"><i><tt>shutdownFunc</tt></i>:</span></td><td>the module shutdown function</td></tr><tr><td><span class="term"><i><tt>styleInitFunc</tt></i>:</span></td><td>the module initialization function</td></tr><tr><td><span class="term"><i><tt>styleShutdownFunc</tt></i>:</span></td><td>the module shutdown function</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if sucessful, -1 in case of error</td></tr></tbody></table></div><h3><a name="xsltRegisterExtModuleFunction" id="xsltRegisterExtModuleFunction"></a>Function: xsltRegisterExtModuleFunction</h3><pre class="programlisting">int xsltRegisterExtModuleFunction (const xmlChar * name, <br /> const xmlChar * URI, <br /> xmlXPathFunction function)<br />
+</pre><p>Registers an extension module function.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the function namespace URI</td></tr><tr><td><span class="term"><i><tt>function</tt></i>:</span></td><td>the function callback</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltRegisterExtModuleTopLevel" id="xsltRegisterExtModuleTopLevel"></a>Function: xsltRegisterExtModuleTopLevel</h3><pre class="programlisting">int xsltRegisterExtModuleTopLevel (const xmlChar * name, <br /> const xmlChar * URI, <br /> <a href="libxslt-extensions.html#xsltTopLevelFunction">xsltTopLevelFunction</a> function)<br />
+</pre><p>Registers an extension module top-level element.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the top-level element name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the top-level element namespace URI</td></tr><tr><td><span class="term"><i><tt>function</tt></i>:</span></td><td>the top-level element callback</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltRegisterExtPrefix" id="xsltRegisterExtPrefix"></a>Function: xsltRegisterExtPrefix</h3><pre class="programlisting">int xsltRegisterExtPrefix (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * prefix, <br /> const xmlChar * URI)<br />
+</pre><p>Registers an extension namespace This is called from xslt.c during compile-time. The given prefix is not needed. Called by: xsltParseExtElemPrefixes() (new function) xsltRegisterExtPrefix() (old function)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix used (optional)</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI associated to the extension</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, 1 if the @URI was already registered as an extension namespace and -1 in case of failure</td></tr></tbody></table></div><h3><a name="xsltRegisterTestModule" id="xsltRegisterTestModule"></a>Function: xsltRegisterTestModule</h3><pre class="programlisting">void xsltRegisterTestModule (void)<br />
+</pre><p>Registers the test module</p>
+<h3><a name="xsltShutdownCtxtExts" id="xsltShutdownCtxtExts"></a>Function: xsltShutdownCtxtExts</h3><pre class="programlisting">void xsltShutdownCtxtExts (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Shutdown the set of modules loaded</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr></tbody></table></div><h3><a name="xsltShutdownExts" id="xsltShutdownExts"></a>Function: xsltShutdownExts</h3><pre class="programlisting">void xsltShutdownExts (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Shutdown the set of modules loaded</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr></tbody></table></div><h3><a name="xsltStyleExtInitFunction" id="xsltStyleExtInitFunction"></a>Function type: xsltStyleExtInitFunction</h3><pre class="programlisting">Function type: xsltStyleExtInitFunction
+void * xsltStyleExtInitFunction (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)
+</pre><p>A function called at initialization time of an XSLT extension module.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the namespace URI for the extension</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the module specific data for this transformation.</td></tr></tbody></table></div><br />
+<h3><a name="xsltStyleExtShutdownFunction" id="xsltStyleExtShutdownFunction"></a>Function type: xsltStyleExtShutdownFunction</h3><pre class="programlisting">Function type: xsltStyleExtShutdownFunction
+void xsltStyleExtShutdownFunction (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI, <br /> void * data)
+</pre><p>A function called at shutdown time of an XSLT extension module.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the namespace URI for the extension</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data associated to this module</td></tr></tbody></table></div><br />
+<h3><a name="xsltStyleGetExtData" id="xsltStyleGetExtData"></a>Function: xsltStyleGetExtData</h3><pre class="programlisting">void * xsltStyleGetExtData (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)<br />
+</pre><p>Retrieve the data associated to the extension module in this given stylesheet. Called by: xsltRegisterExtPrefix(), ( xsltExtElementPreCompTest(), xsltExtInitTest )</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI associated to the exension module</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer or NULL if not present</td></tr></tbody></table></div><h3><a name="xsltStyleStylesheetLevelGetExtData" id="xsltStyleStylesheetLevelGetExtData"></a>Function: xsltStyleStylesheetLevelGetExtData</h3><pre class="programlisting">void * xsltStyleStylesheetLevelGetExtData (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * URI)<br />
+</pre><p>Retrieve the data associated to the extension module in this given stylesheet.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI associated to the exension module</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer or NULL if not present</td></tr></tbody></table></div><h3><a name="xsltTopLevelFunction" id="xsltTopLevelFunction"></a>Function type: xsltTopLevelFunction</h3><pre class="programlisting">Function type: xsltTopLevelFunction
+void xsltTopLevelFunction (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xsltUnregisterExtModule" id="xsltUnregisterExtModule"></a>Function: xsltUnregisterExtModule</h3><pre class="programlisting">int xsltUnregisterExtModule (const xmlChar * URI)<br />
+</pre><p>Unregister an XSLT extension module from the library.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>URI associated to this module</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if sucessful, -1 in case of error</td></tr></tbody></table></div><h3><a name="xsltUnregisterExtModuleElement" id="xsltUnregisterExtModuleElement"></a>Function: xsltUnregisterExtModuleElement</h3><pre class="programlisting">int xsltUnregisterExtModuleElement (const xmlChar * name, <br /> const xmlChar * URI)<br />
+</pre><p>Unregisters an extension module element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltUnregisterExtModuleFunction" id="xsltUnregisterExtModuleFunction"></a>Function: xsltUnregisterExtModuleFunction</h3><pre class="programlisting">int xsltUnregisterExtModuleFunction (const xmlChar * name, <br /> const xmlChar * URI)<br />
+</pre><p>Unregisters an extension module function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the function namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltUnregisterExtModuleTopLevel" id="xsltUnregisterExtModuleTopLevel"></a>Function: xsltUnregisterExtModuleTopLevel</h3><pre class="programlisting">int xsltUnregisterExtModuleTopLevel (const xmlChar * name, <br /> const xmlChar * URI)<br />
+</pre><p>Unregisters an extension module top-level element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the top-level element name</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the top-level element namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltXPathGetTransformContext" id="xsltXPathGetTransformContext"></a>Function: xsltXPathGetTransformContext</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> xsltXPathGetTransformContext (xmlXPathParserContextPtr ctxt)<br />
+</pre><p>Provides the XSLT transformation context from the XPath transformation context. This is useful when an XPath function in the extension module is called by the XPath interpreter and that the XSLT context is needed for example to retrieve the associated data pertaining to this XSLT transformation.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath transformation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the XSLT transformation context or NULL in case of error.</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-extra.html b/libxslt/doc/html/libxslt-extra.html
new file mode 100644
index 0000000..9e03622
--- /dev/null
+++ b/libxslt/doc/html/libxslt-extra.html
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module extra 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 extra 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-extensions.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-extensions.html">extensions</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-functions.html">functions</a></th><td><a accesskey="n" href="libxslt-functions.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>implement some extension outside the XSLT namespace but not EXSLT with is in a different library. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XSLT_LIBXSLT_NAMESPACE">XSLT_LIBXSLT_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#XSLT_NORM_SAXON_NAMESPACE">XSLT_NORM_SAXON_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#XSLT_SAXON_NAMESPACE">XSLT_SAXON_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#XSLT_XALAN_NAMESPACE">XSLT_XALAN_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#XSLT_XT_NAMESPACE">XSLT_XT_NAMESPACE</a></pre><pre class="programlisting">void <a href="#xsltDebug">xsltDebug</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)</pre>
+<pre class="programlisting">void <a href="#xsltFunctionNodeSet">xsltFunctionNodeSet</a> (xmlXPathParserContextPtr ctxt, <br /> int nargs)</pre>
+<pre class="programlisting">void <a href="#xsltRegisterAllExtras">xsltRegisterAllExtras</a> (void)</pre>
+<pre class="programlisting">void <a href="#xsltRegisterExtras">xsltRegisterExtras</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<h2>Description</h2>
+<h3><a name="XSLT_LIBXSLT_NAMESPACE" id="XSLT_LIBXSLT_NAMESPACE"></a>Macro: XSLT_LIBXSLT_NAMESPACE</h3><pre>#define XSLT_LIBXSLT_NAMESPACE</pre><p>This is the libxslt namespace for specific extensions.</p>
+<h3><a name="XSLT_NORM_SAXON_NAMESPACE" id="XSLT_NORM_SAXON_NAMESPACE"></a>Macro: XSLT_NORM_SAXON_NAMESPACE</h3><pre>#define XSLT_NORM_SAXON_NAMESPACE</pre><p>This is Norm's namespace for SAXON extensions.</p>
+<h3><a name="XSLT_SAXON_NAMESPACE" id="XSLT_SAXON_NAMESPACE"></a>Macro: XSLT_SAXON_NAMESPACE</h3><pre>#define XSLT_SAXON_NAMESPACE</pre><p>This is Michael Kay's Saxon processor namespace for extensions.</p>
+<h3><a name="XSLT_XALAN_NAMESPACE" id="XSLT_XALAN_NAMESPACE"></a>Macro: XSLT_XALAN_NAMESPACE</h3><pre>#define XSLT_XALAN_NAMESPACE</pre><p>This is the Apache project XALAN processor namespace for extensions.</p>
+<h3><a name="XSLT_XT_NAMESPACE" id="XSLT_XT_NAMESPACE"></a>Macro: XSLT_XT_NAMESPACE</h3><pre>#define XSLT_XT_NAMESPACE</pre><p>This is James Clark's XT processor namespace for extensions.</p>
+<h3><a name="xsltDebug" id="xsltDebug"></a>Function: xsltDebug</h3><pre class="programlisting">void xsltDebug (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)<br />
+</pre><p>Process an debug node</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT processing context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>The current node</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the instruction in the stylesheet</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>precomputed informations</td></tr></tbody></table></div><h3><a name="xsltFunctionNodeSet" id="xsltFunctionNodeSet"></a>Function: xsltFunctionNodeSet</h3><pre class="programlisting">void xsltFunctionNodeSet (xmlXPathParserContextPtr ctxt, <br /> int nargs)<br />
+</pre><p>Implement the node-set() XSLT function node-set node-set(result-tree) This function is available in libxslt, saxon or xt namespace.</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 XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xsltRegisterAllExtras" id="xsltRegisterAllExtras"></a>Function: xsltRegisterAllExtras</h3><pre class="programlisting">void xsltRegisterAllExtras (void)<br />
+</pre><p>Registers the built-in extensions</p>
+<h3><a name="xsltRegisterExtras" id="xsltRegisterExtras"></a>Function: xsltRegisterExtras</h3><pre class="programlisting">void xsltRegisterExtras (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Registers the built-in extensions. This function is deprecated, use <a href="libxslt-extra.html#xsltRegisterAllExtras">xsltRegisterAllExtras</a> instead.</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 XSLT process context</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-functions.html b/libxslt/doc/html/libxslt-functions.html
new file mode 100644
index 0000000..6e7c424
--- /dev/null
+++ b/libxslt/doc/html/libxslt-functions.html
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module functions 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 functions 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-extra.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-extra.html">extra</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-imports.html">imports</a></th><td><a accesskey="n" href="libxslt-imports.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>a set of extra functions coming from XSLT but not in XPath </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a></pre><pre class="programlisting">void <a href="#xsltDocumentFunction">xsltDocumentFunction</a> (xmlXPathParserContextPtr ctxt, <br /> int nargs)</pre>
+<pre class="programlisting">void <a href="#xsltElementAvailableFunction">xsltElementAvailableFunction</a> (xmlXPathParserContextPtr ctxt, <br /> int nargs)</pre>
+<pre class="programlisting">void <a href="#xsltFormatNumberFunction">xsltFormatNumberFunction</a> (xmlXPathParserContextPtr ctxt, <br /> int nargs)</pre>
+<pre class="programlisting">void <a href="#xsltFunctionAvailableFunction">xsltFunctionAvailableFunction</a> (xmlXPathParserContextPtr ctxt, <br /> int nargs)</pre>
+<pre class="programlisting">void <a href="#xsltGenerateIdFunction">xsltGenerateIdFunction</a> (xmlXPathParserContextPtr ctxt, <br /> int nargs)</pre>
+<pre class="programlisting">void <a href="#xsltKeyFunction">xsltKeyFunction</a> (xmlXPathParserContextPtr ctxt, <br /> int nargs)</pre>
+<pre class="programlisting">void <a href="#xsltRegisterAllFunctions">xsltRegisterAllFunctions</a> (xmlXPathContextPtr ctxt)</pre>
+<pre class="programlisting">void <a href="#xsltSystemPropertyFunction">xsltSystemPropertyFunction</a> (xmlXPathParserContextPtr ctxt, <br /> int nargs)</pre>
+<pre class="programlisting">void <a href="#xsltUnparsedEntityURIFunction">xsltUnparsedEntityURIFunction</a> (xmlXPathParserContextPtr ctxt, <br /> int nargs)</pre>
+<pre class="programlisting">xmlXPathFunction <a href="#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a> (xmlXPathContextPtr ctxt, <br /> const xmlChar * name, <br /> const xmlChar * ns_uri)</pre>
+<h2>Description</h2>
+<h3><a name="XSLT_REGISTER_FUNCTION_LOOKUP" id="XSLT_REGISTER_FUNCTION_LOOKUP"></a>Macro: XSLT_REGISTER_FUNCTION_LOOKUP</h3><pre>#define XSLT_REGISTER_FUNCTION_LOOKUP</pre><p>Registering macro, not general purpose at all but used in different modules.</p>
+<h3><a name="xsltDocumentFunction" id="xsltDocumentFunction"></a>Function: xsltDocumentFunction</h3><pre class="programlisting">void xsltDocumentFunction (xmlXPathParserContextPtr ctxt, <br /> int nargs)<br />
+</pre><p>Implement the document() XSLT function node-set document(object, node-set?)</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 XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xsltElementAvailableFunction" id="xsltElementAvailableFunction"></a>Function: xsltElementAvailableFunction</h3><pre class="programlisting">void xsltElementAvailableFunction (xmlXPathParserContextPtr ctxt, <br /> int nargs)<br />
+</pre><p>Implement the element-available() XSLT function boolean element-available(string)</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 XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xsltFormatNumberFunction" id="xsltFormatNumberFunction"></a>Function: xsltFormatNumberFunction</h3><pre class="programlisting">void xsltFormatNumberFunction (xmlXPathParserContextPtr ctxt, <br /> int nargs)<br />
+</pre><p>Implement the format-number() XSLT function string format-number(number, string, string?)</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 XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xsltFunctionAvailableFunction" id="xsltFunctionAvailableFunction"></a>Function: xsltFunctionAvailableFunction</h3><pre class="programlisting">void xsltFunctionAvailableFunction (xmlXPathParserContextPtr ctxt, <br /> int nargs)<br />
+</pre><p>Implement the function-available() XSLT function boolean function-available(string)</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 XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xsltGenerateIdFunction" id="xsltGenerateIdFunction"></a>Function: xsltGenerateIdFunction</h3><pre class="programlisting">void xsltGenerateIdFunction (xmlXPathParserContextPtr ctxt, <br /> int nargs)<br />
+</pre><p>Implement the generate-id() XSLT function string generate-id(node-set?)</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 XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xsltKeyFunction" id="xsltKeyFunction"></a>Function: xsltKeyFunction</h3><pre class="programlisting">void xsltKeyFunction (xmlXPathParserContextPtr ctxt, <br /> int nargs)<br />
+</pre><p>Implement the key() XSLT function node-set key(string, object)</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 XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xsltRegisterAllFunctions" id="xsltRegisterAllFunctions"></a>Function: xsltRegisterAllFunctions</h3><pre class="programlisting">void xsltRegisterAllFunctions (xmlXPathContextPtr ctxt)<br />
+</pre><p>Registers all default XSLT functions in this context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr></tbody></table></div><h3><a name="xsltSystemPropertyFunction" id="xsltSystemPropertyFunction"></a>Function: xsltSystemPropertyFunction</h3><pre class="programlisting">void xsltSystemPropertyFunction (xmlXPathParserContextPtr ctxt, <br /> int nargs)<br />
+</pre><p>Implement the system-property() XSLT function object system-property(string)</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 XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xsltUnparsedEntityURIFunction" id="xsltUnparsedEntityURIFunction"></a>Function: xsltUnparsedEntityURIFunction</h3><pre class="programlisting">void xsltUnparsedEntityURIFunction (xmlXPathParserContextPtr ctxt, <br /> int nargs)<br />
+</pre><p>Implement the unparsed-entity-uri() XSLT function string unparsed-entity-uri(string)</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 XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xsltXPathFunctionLookup" id="xsltXPathFunctionLookup"></a>Function: xsltXPathFunctionLookup</h3><pre class="programlisting">xmlXPathFunction xsltXPathFunctionLookup (xmlXPathContextPtr ctxt, <br /> const xmlChar * name, <br /> const xmlChar * ns_uri)<br />
+</pre><p>This is the entry point when a function is needed by the XPath interpretor.</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 void * but the XSLT transformation context actually</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the function namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the callback function or NULL if not found</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-imports.html b/libxslt/doc/html/libxslt-imports.html
new file mode 100644
index 0000000..8b7de45
--- /dev/null
+++ b/libxslt/doc/html/libxslt-imports.html
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module imports 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 imports 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-functions.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-functions.html">functions</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-keys.html">keys</a></th><td><a accesskey="n" href="libxslt-keys.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>macros and fuctions needed to implement and access the import tree </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XSLT_GET_IMPORT_INT">XSLT_GET_IMPORT_INT</a></pre><pre class="programlisting">#define <a href="#XSLT_GET_IMPORT_PTR">XSLT_GET_IMPORT_PTR</a></pre><pre class="programlisting">int <a href="#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> <a href="#xsltFindTemplate">xsltFindTemplate</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * nameURI)</pre>
+<pre class="programlisting">int <a href="#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltNextImport">xsltNextImport</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> cur)</pre>
+<pre class="programlisting">int <a href="#xsltParseStylesheetImport">xsltParseStylesheetImport</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)</pre>
+<pre class="programlisting">int <a href="#xsltParseStylesheetInclude">xsltParseStylesheetInclude</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)</pre>
+<h2>Description</h2>
+<h3><a name="XSLT_GET_IMPORT_INT" id="XSLT_GET_IMPORT_INT"></a>Macro: XSLT_GET_IMPORT_INT</h3><pre>#define XSLT_GET_IMPORT_INT</pre><p>A macro to import intergers from the stylesheet cascading order.</p>
+<h3><a name="XSLT_GET_IMPORT_PTR" id="XSLT_GET_IMPORT_PTR"></a>Macro: XSLT_GET_IMPORT_PTR</h3><pre>#define XSLT_GET_IMPORT_PTR</pre><p>A macro to import pointers from the stylesheet cascading order.</p>
+<h3><a name="xsltFindElemSpaceHandling" id="xsltFindElemSpaceHandling"></a>Function: xsltFindElemSpaceHandling</h3><pre class="programlisting">int xsltFindElemSpaceHandling (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node)<br />
+</pre><p>Find strip-space or preserve-space informations for an element respect the import precedence or the wildcards</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>an XML node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if space should be stripped, 0 if not, and 2 if everything should be CDTATA wrapped.</td></tr></tbody></table></div><h3><a name="xsltFindTemplate" id="xsltFindTemplate"></a>Function: xsltFindTemplate</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> xsltFindTemplate (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * nameURI)<br />
+</pre><p>Finds the named template, apply import precedence rule. REVISIT TODO: We'll change the nameURI fields of templates to be in the string dict, so if the specified @nameURI is in the same dict, then use pointer comparison. Check if this can be done in a sane way. Maybe this function is not needed internally at transformation-time if we hard-wire the called templates to the caller.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the template name</td></tr><tr><td><span class="term"><i><tt>nameURI</tt></i>:</span></td><td>the template name URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> or NULL if not found</td></tr></tbody></table></div><h3><a name="xsltNeedElemSpaceHandling" id="xsltNeedElemSpaceHandling"></a>Function: xsltNeedElemSpaceHandling</h3><pre class="programlisting">int xsltNeedElemSpaceHandling (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Checks whether that stylesheet requires white-space stripping</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if space should be stripped, 0 if not</td></tr></tbody></table></div><h3><a name="xsltNextImport" id="xsltNextImport"></a>Function: xsltNextImport</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> xsltNextImport (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> cur)<br />
+</pre><p>Find the next stylesheet in import precedence.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next stylesheet or NULL if it was the last one</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetImport" id="xsltParseStylesheetImport"></a>Function: xsltParseStylesheetImport</h3><pre class="programlisting">int xsltParseStylesheetImport (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)<br />
+</pre><p>parse an XSLT stylesheet import element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the import element</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="xsltParseStylesheetInclude" id="xsltParseStylesheetInclude"></a>Function: xsltParseStylesheetInclude</h3><pre class="programlisting">int xsltParseStylesheetInclude (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)<br />
+</pre><p>parse an XSLT stylesheet include element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the include node</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><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>
diff --git a/libxslt/doc/html/libxslt-keys.html b/libxslt/doc/html/libxslt-keys.html
new file mode 100644
index 0000000..55bef1c
--- /dev/null
+++ b/libxslt/doc/html/libxslt-keys.html
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module keys 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 keys 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-imports.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-imports.html">imports</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-namespaces.html">namespaces</a></th><td><a accesskey="n" href="libxslt-namespaces.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>implementation of the key mechanims. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#NODE_IS_KEYED">NODE_IS_KEYED</a></pre><pre class="programlisting">int <a href="#xsltAddKey">xsltAddKey</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * name, <br /> const xmlChar * nameURI, <br /> const xmlChar * match, <br /> const xmlChar * use, <br /> xmlNodePtr inst)</pre>
+<pre class="programlisting">void <a href="#xsltFreeDocumentKeys">xsltFreeDocumentKeys</a> (<a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> idoc)</pre>
+<pre class="programlisting">void <a href="#xsltFreeKeys">xsltFreeKeys</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">xmlNodeSetPtr <a href="#xsltGetKey">xsltGetKey</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * nameURI, <br /> const xmlChar * value)</pre>
+<pre class="programlisting">void <a href="#xsltInitCtxtKeys">xsltInitCtxtKeys</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> idoc)</pre>
+<h2>Description</h2>
+<h3><a name="NODE_IS_KEYED" id="NODE_IS_KEYED"></a>Macro: NODE_IS_KEYED</h3><pre>#define NODE_IS_KEYED</pre><p>check for bit 15 set</p>
+<h3><a name="xsltAddKey" id="xsltAddKey"></a>Function: xsltAddKey</h3><pre class="programlisting">int xsltAddKey (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * name, <br /> const xmlChar * nameURI, <br /> const xmlChar * match, <br /> const xmlChar * use, <br /> xmlNodePtr inst)<br />
+</pre><p>add a key definition to a stylesheet</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the key name or NULL</td></tr><tr><td><span class="term"><i><tt>nameURI</tt></i>:</span></td><td>the name URI or NULL</td></tr><tr><td><span class="term"><i><tt>match</tt></i>:</span></td><td>the match value</td></tr><tr><td><span class="term"><i><tt>use</tt></i>:</span></td><td>the use value</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the key instruction</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 failure.</td></tr></tbody></table></div><h3><a name="xsltFreeDocumentKeys" id="xsltFreeDocumentKeys"></a>Function: xsltFreeDocumentKeys</h3><pre class="programlisting">void xsltFreeDocumentKeys (<a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> idoc)<br />
+</pre><p>Free the keys associated to a document</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>idoc</tt></i>:</span></td><td>a XSLT document</td></tr></tbody></table></div><h3><a name="xsltFreeKeys" id="xsltFreeKeys"></a>Function: xsltFreeKeys</h3><pre class="programlisting">void xsltFreeKeys (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Free up the memory used by XSLT keys in a stylesheet</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr></tbody></table></div><h3><a name="xsltGetKey" id="xsltGetKey"></a>Function: xsltGetKey</h3><pre class="programlisting">xmlNodeSetPtr xsltGetKey (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * nameURI, <br /> const xmlChar * value)<br />
+</pre><p>Looks up a key of the in current source doc (the document info on @ctxt-&gt;document). Computes the key if not already done for the current source doc.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the key name or NULL</td></tr><tr><td><span class="term"><i><tt>nameURI</tt></i>:</span></td><td>the name URI or NULL</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the key value to look for</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodeset resulting from the query or NULL</td></tr></tbody></table></div><h3><a name="xsltInitCtxtKeys" id="xsltInitCtxtKeys"></a>Function: xsltInitCtxtKeys</h3><pre class="programlisting">void xsltInitCtxtKeys (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> idoc)<br />
+</pre><p>Computes all the keys tables for the current input document. Should be done before global varibales are initialized. NOTE: Not used anymore in the refactored code.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>idoc</tt></i>:</span></td><td>a document info</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-lib.html b/libxslt/doc/html/libxslt-lib.html
new file mode 100644
index 0000000..f3ccb11
--- /dev/null
+++ b/libxslt/doc/html/libxslt-lib.html
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Reference Manual for 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>Reference Manual for 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"><h2>Table of Contents</h2><ul><li><a href="libxslt-attributes.html">attributes</a>: interface for the XSLT attribute handling</li><li><a href="libxslt-documents.html">documents</a>: interface for the document handling</li><li><a href="libxslt-extensions.html">extensions</a>: interface for the extension support</li><li><a href="libxslt-extra.html">extra</a>: interface for the non-standard features</li><li><a href="libxslt-functions.html">functions</a>: interface for the XSLT functions not from XPath</li><li><a href="libxslt-imports.html">imports</a>: interface for the XSLT import support</li><li><a href="libxslt-keys.html">keys</a>: interface for the key matching used in key() and template matches.</li><li><a href="libxslt-namespaces.html">namespaces</a>: interface for the XSLT namespace handling</li><li><a href="libxslt-numbersInternals.html">numbersInternals</a>: Implementation of the XSLT number functions</li><li><a href="libxslt-pattern.html">pattern</a>: interface for the pattern matching used in template matches.</li><li><a href="libxslt-preproc.html">preproc</a>: precomputing stylesheets</li><li><a href="libxslt-security.html">security</a>: interface for the libxslt security framework</li><li><a href="libxslt-templates.html">templates</a>: interface for the template processing</li><li><a href="libxslt-transform.html">transform</a>: the XSLT engine transformation part.</li><li><a href="libxslt-variables.html">variables</a>: interface for the variable matching and lookup.</li><li><a href="libxslt-xslt.html">xslt</a>: Interfaces, constants and types related to the XSLT engine</li><li><a href="libxslt-xsltInternals.html">xsltInternals</a>: internal data structures, constants and functions</li><li><a href="libxslt-xsltexports.html">xsltexports</a>: macros for marking symbols as exportable/importable.</li><li><a href="libxslt-xsltlocale.html">xsltlocale</a>: Locale handling</li><li><a href="libxslt-xsltutils.html">xsltutils</a>: set of utilities for the XSLT engine</li></ul><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>
diff --git a/libxslt/doc/html/libxslt-namespaces.html b/libxslt/doc/html/libxslt-namespaces.html
new file mode 100644
index 0000000..bb9099d
--- /dev/null
+++ b/libxslt/doc/html/libxslt-namespaces.html
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module namespaces 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 namespaces 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-keys.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-keys.html">keys</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-numbersInternals.html">numbersInternals</a></th><td><a accesskey="n" href="libxslt-numbersInternals.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>set of function easing the processing and generation of namespace nodes in XSLT. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#UNDEFINED_DEFAULT_NS">UNDEFINED_DEFAULT_NS</a></pre><pre class="programlisting">xmlNsPtr <a href="#xsltCopyNamespace">xsltCopyNamespace</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr elem, <br /> xmlNsPtr ns)</pre>
+<pre class="programlisting">xmlNsPtr <a href="#xsltCopyNamespaceList">xsltCopyNamespaceList</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNsPtr cur)</pre>
+<pre class="programlisting">void <a href="#xsltFreeNamespaceAliasHashes">xsltFreeNamespaceAliasHashes</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">xmlNsPtr <a href="#xsltGetNamespace">xsltGetNamespace</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr cur, <br /> xmlNsPtr ns, <br /> xmlNodePtr out)</pre>
+<pre class="programlisting">xmlNsPtr <a href="#xsltGetPlainNamespace">xsltGetPlainNamespace</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr cur, <br /> xmlNsPtr ns, <br /> xmlNodePtr out)</pre>
+<pre class="programlisting">xmlNsPtr <a href="#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr invocNode, <br /> const xmlChar * nsName, <br /> const xmlChar * nsPrefix, <br /> xmlNodePtr target)</pre>
+<pre class="programlisting">void <a href="#xsltNamespaceAlias">xsltNamespaceAlias</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr node)</pre>
+<h2>Description</h2>
+<h3><a name="UNDEFINED_DEFAULT_NS" id="UNDEFINED_DEFAULT_NS"></a>Macro: UNDEFINED_DEFAULT_NS</h3><pre>#define UNDEFINED_DEFAULT_NS</pre><p>Special value for undefined namespace, internal</p>
+<h3><a name="xsltCopyNamespace" id="xsltCopyNamespace"></a>Function: xsltCopyNamespace</h3><pre class="programlisting">xmlNsPtr xsltCopyNamespace (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr elem, <br /> xmlNsPtr ns)<br />
+</pre><p>Copies a namespace node (declaration). If @elem is not NULL, then the new namespace will be declared on @elem.</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>elem</tt></i>:</span></td><td>the target element node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new xmlNsPtr, or NULL in case of an error.</td></tr></tbody></table></div><h3><a name="xsltCopyNamespaceList" id="xsltCopyNamespaceList"></a>Function: xsltCopyNamespaceList</h3><pre class="programlisting">xmlNsPtr xsltCopyNamespaceList (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNsPtr cur)<br />
+</pre><p>Do a copy of an namespace list. If @node is non-NULL the new namespaces are added automatically. This handles namespaces aliases. This function is intended only for *internal* use at transformation-time for copying ns-declarations of Literal Result Elements. Called by: xsltCopyTreeInternal() (transform.c) xsltShallowCopyElem() (transform.c) REVISIT: This function won't be used in the refactored code.</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>node</tt></i>:</span></td><td>the target node</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new xmlNsPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xsltFreeNamespaceAliasHashes" id="xsltFreeNamespaceAliasHashes"></a>Function: xsltFreeNamespaceAliasHashes</h3><pre class="programlisting">void xsltFreeNamespaceAliasHashes (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Free up the memory used by namespaces aliases</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr></tbody></table></div><h3><a name="xsltGetNamespace" id="xsltGetNamespace"></a>Function: xsltGetNamespace</h3><pre class="programlisting">xmlNsPtr xsltGetNamespace (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr cur, <br /> xmlNsPtr ns, <br /> xmlNodePtr out)<br />
+</pre><p>Find a matching (prefix and ns-name) ns-declaration for the requested @ns-&gt;prefix and @ns-&gt;href in the result tree. If none is found then a new ns-declaration will be added to @resultElem. If, in this case, the given prefix is already in use, then a ns-declaration with a modified ns-prefix be we created. Called by: - xsltCopyPropList() (*not* anymore) - xsltShallowCopyElement() - xsltCopyTreeInternal() (*not* anymore) - xsltApplySequenceConstructor() (*not* in the refactored code), - xsltElement() (*not* anymore)</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>cur</tt></i>:</span></td><td>the input node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the output node (or its parent)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a namespace declaration or NULL in case of namespace fixup failures or API or internal errors.</td></tr></tbody></table></div><h3><a name="xsltGetPlainNamespace" id="xsltGetPlainNamespace"></a>Function: xsltGetPlainNamespace</h3><pre class="programlisting">xmlNsPtr xsltGetPlainNamespace (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr cur, <br /> xmlNsPtr ns, <br /> xmlNodePtr out)<br />
+</pre><p>Obsolete. *Not* called by any Libxslt/Libexslt function. Exaclty the same as xsltGetNamespace().</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>cur</tt></i>:</span></td><td>the input node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the result element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a namespace declaration or NULL in case of namespace fixup failures or API or internal errors.</td></tr></tbody></table></div><h3><a name="xsltGetSpecialNamespace" id="xsltGetSpecialNamespace"></a>Function: xsltGetSpecialNamespace</h3><pre class="programlisting">xmlNsPtr xsltGetSpecialNamespace (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr invocNode, <br /> const xmlChar * nsName, <br /> const xmlChar * nsPrefix, <br /> xmlNodePtr target)<br />
+</pre><p>Find a matching (prefix and ns-name) ns-declaration for the requested @nsName and @nsPrefix in the result tree. If none is found then a new ns-declaration will be added to @resultElem. If, in this case, the given prefix is already in use, then a ns-declaration with a modified ns-prefix be we created. Note that this function's priority is to preserve ns-prefixes; it will only change a prefix if there's a namespace clash. If both @nsName and @nsPrefix are NULL, then this will try to "undeclare" a default namespace by declaring an xmlns="".</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 transformation context</td></tr><tr><td><span class="term"><i><tt>invocNode</tt></i>:</span></td><td>the invoking node; e.g. a literal result element/attr; only used for error reports</td></tr><tr><td><span class="term"><i><tt>nsName</tt></i>:</span></td><td>the namespace name (or NULL)</td></tr><tr><td><span class="term"><i><tt>nsPrefix</tt></i>:</span></td><td>the suggested namespace prefix (or NULL)</td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the result element on which to anchor a namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a namespace declaration or NULL.</td></tr></tbody></table></div><h3><a name="xsltNamespaceAlias" id="xsltNamespaceAlias"></a>Function: xsltNamespaceAlias</h3><pre class="programlisting">void xsltNamespaceAlias (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr node)<br />
+</pre><p>Read the stylesheet-prefix and result-prefix attributes, register them as well as the corresponding namespace.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the xsl:namespace-alias node</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-numbersInternals.html b/libxslt/doc/html/libxslt-numbersInternals.html
new file mode 100644
index 0000000..def3056
--- /dev/null
+++ b/libxslt/doc/html/libxslt-numbersInternals.html
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module numbersInternals 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 numbersInternals 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-namespaces.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-namespaces.html">namespaces</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-pattern.html">pattern</a></th><td><a accesskey="n" href="libxslt-pattern.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>Implementation of the XSLT number functions </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xsltFormatNumberInfo">xsltFormatNumberInfo</a><br />struct _xsltFormatNumberInfo
+</pre><pre class="programlisting">Typedef <a href="libxslt-numbersInternals.html#xsltFormatNumberInfo">xsltFormatNumberInfo</a> * <a name="xsltFormatNumberInfoPtr" id="xsltFormatNumberInfoPtr">xsltFormatNumberInfoPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltNumberData">xsltNumberData</a><br />struct _xsltNumberData
+</pre><pre class="programlisting">Typedef <a href="libxslt-numbersInternals.html#xsltNumberData">xsltNumberData</a> * <a name="xsltNumberDataPtr" id="xsltNumberDataPtr">xsltNumberDataPtr</a>
+</pre><h2>Description</h2>
+<h3><a name="xsltFormatNumberInfo" id="xsltFormatNumberInfo">Structure xsltFormatNumberInfo</a></h3><pre class="programlisting">Structure xsltFormatNumberInfo<br />struct _xsltFormatNumberInfo {
+ int integer_hash : Number of '#' in integer part
+ int integer_digits : Number of '0' in integer part
+ int frac_digits : Number of '0' in fractional part
+ int frac_hash : Number of '#' in fractional part
+ int group : Number of chars per display 'group'
+ int multiplier : Scaling for percent or permille
+ char add_decimal : Flag for whether decimal point appears
+ char is_multiplier_set : Flag to catch multiple occurences of pe
+ char is_negative_pattern : Flag for processing -ve prefix/suffix
+}</pre><h3><a name="xsltNumberData" id="xsltNumberData">Structure xsltNumberData</a></h3><pre class="programlisting">Structure xsltNumberData<br />struct _xsltNumberData {
+ const xmlChar * level
+ const xmlChar * count
+ const xmlChar * from
+ const xmlChar * value
+ const xmlChar * format
+ int has_format
+ int digitsPerGroup
+ int groupingCharacter
+ int groupingCharacterLen
+ xmlDocPtr doc
+ xmlNodePtr node
+ struct _xsltCompMatch * countPat
+ struct _xsltCompMatch * fromPat : * accelerators *
+}</pre><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>
diff --git a/libxslt/doc/html/libxslt-pattern.html b/libxslt/doc/html/libxslt-pattern.html
new file mode 100644
index 0000000..c5334c6
--- /dev/null
+++ b/libxslt/doc/html/libxslt-pattern.html
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module pattern 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 pattern 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-numbersInternals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-numbersInternals.html">numbersInternals</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-preproc.html">preproc</a></th><td><a accesskey="n" href="libxslt-preproc.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>the implementation of the lookup of the right template for a given node must be really fast in order to keep decent performances. </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xsltCompMatch">xsltCompMatch</a><br />struct _xsltCompMatch
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxslt-pattern.html#xsltCompMatch">xsltCompMatch</a> * <a name="xsltCompMatchPtr" id="xsltCompMatchPtr">xsltCompMatchPtr</a>
+</pre><pre class="programlisting">int <a href="#xsltAddTemplate">xsltAddTemplate</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> cur, <br /> const xmlChar * mode, <br /> const xmlChar * modeURI)</pre>
+<pre class="programlisting">void <a href="#xsltCleanupTemplates">xsltCleanupTemplates</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting"><a href="libxslt-pattern.html#xsltCompMatchPtr">xsltCompMatchPtr</a> <a href="#xsltCompilePattern">xsltCompilePattern</a> (const xmlChar * pattern, <br /> xmlDocPtr doc, <br /> xmlNodePtr node, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> runtime)</pre>
+<pre class="programlisting">void <a href="#xsltFreeCompMatchList">xsltFreeCompMatchList</a> (<a href="libxslt-pattern.html#xsltCompMatchPtr">xsltCompMatchPtr</a> comp)</pre>
+<pre class="programlisting">void <a href="#xsltFreeTemplateHashes">xsltFreeTemplateHashes</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> <a href="#xsltGetTemplate">xsltGetTemplate</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">int <a href="#xsltMatchPattern">xsltMatchPattern</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> const xmlChar * pattern, <br /> xmlDocPtr ctxtdoc, <br /> xmlNodePtr ctxtnode)</pre>
+<pre class="programlisting">void <a href="#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a> (void * payload, <br /> void * data, <br /> const xmlChar * name)</pre>
+<pre class="programlisting">int <a href="#xsltTestCompMatchList">xsltTestCompMatchList</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> <a href="libxslt-pattern.html#xsltCompMatchPtr">xsltCompMatchPtr</a> comp)</pre>
+<h2>Description</h2>
+<h3><a name="xsltCompMatch" id="xsltCompMatch">Structure xsltCompMatch</a></h3><pre class="programlisting">Structure xsltCompMatch<br />struct _xsltCompMatch {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xsltAddTemplate" id="xsltAddTemplate"></a>Function: xsltAddTemplate</h3><pre class="programlisting">int xsltAddTemplate (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> cur, <br /> const xmlChar * mode, <br /> const xmlChar * modeURI)<br />
+</pre><p>Register the XSLT pattern associated to @cur</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>an XSLT template</td></tr><tr><td><span class="term"><i><tt>mode</tt></i>:</span></td><td>the mode name or NULL</td></tr><tr><td><span class="term"><i><tt>modeURI</tt></i>:</span></td><td>the mode URI or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xsltCleanupTemplates" id="xsltCleanupTemplates"></a>Function: xsltCleanupTemplates</h3><pre class="programlisting">void xsltCleanupTemplates (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Cleanup the state of the templates used by the stylesheet and the ones it imports.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr></tbody></table></div><h3><a name="xsltCompilePattern" id="xsltCompilePattern"></a>Function: xsltCompilePattern</h3><pre class="programlisting"><a href="libxslt-pattern.html#xsltCompMatchPtr">xsltCompMatchPtr</a> xsltCompilePattern (const xmlChar * pattern, <br /> xmlDocPtr doc, <br /> xmlNodePtr node, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> runtime)<br />
+</pre><p>Compile the XSLT pattern and generates a list of precompiled form suitable for fast matching. [1] Pattern ::= LocationPathPattern | Pattern '|' LocationPathPattern</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pattern</tt></i>:</span></td><td>an XSLT pattern</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the containing document</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the containing element</td></tr><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>runtime</tt></i>:</span></td><td>the transformation context, if done at run-time</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the generated pattern list or NULL in case of failure</td></tr></tbody></table></div><h3><a name="xsltFreeCompMatchList" id="xsltFreeCompMatchList"></a>Function: xsltFreeCompMatchList</h3><pre class="programlisting">void xsltFreeCompMatchList (<a href="libxslt-pattern.html#xsltCompMatchPtr">xsltCompMatchPtr</a> comp)<br />
+</pre><p>Free up the memory allocated by all the elements of @comp</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>an XSLT comp list</td></tr></tbody></table></div><h3><a name="xsltFreeTemplateHashes" id="xsltFreeTemplateHashes"></a>Function: xsltFreeTemplateHashes</h3><pre class="programlisting">void xsltFreeTemplateHashes (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Free up the memory used by xsltAddTemplate/xsltGetTemplate mechanism</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr></tbody></table></div><h3><a name="xsltGetTemplate" id="xsltGetTemplate"></a>Function: xsltGetTemplate</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> xsltGetTemplate (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Finds the template applying to this node, if @style is non-NULL it means one needs to look for the next imported template in scope.</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node being processed</td></tr><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the current style</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> or NULL if not found</td></tr></tbody></table></div><h3><a name="xsltMatchPattern" id="xsltMatchPattern"></a>Function: xsltMatchPattern</h3><pre class="programlisting">int xsltMatchPattern (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> const xmlChar * pattern, <br /> xmlDocPtr ctxtdoc, <br /> xmlNodePtr ctxtnode)<br />
+</pre><p></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pattern</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>ctxtdoc</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>ctxtnode</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xsltNormalizeCompSteps" id="xsltNormalizeCompSteps"></a>Function: xsltNormalizeCompSteps</h3><pre class="programlisting">void xsltNormalizeCompSteps (void * payload, <br /> void * data, <br /> const xmlChar * name)<br />
+</pre><p>This is a hashtable scanner function to normalize the compiled steps of an imported stylesheet.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>pointer to template hash table entry</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>pointer to the stylesheet</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>template match name</td></tr></tbody></table></div><h3><a name="xsltTestCompMatchList" id="xsltTestCompMatchList"></a>Function: xsltTestCompMatchList</h3><pre class="programlisting">int xsltTestCompMatchList (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> <a href="libxslt-pattern.html#xsltCompMatchPtr">xsltCompMatchPtr</a> comp)<br />
+</pre><p>Test whether the node matches one of the patterns in the list</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the precompiled pattern list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if it matches, 0 if it doesn't and -1 in case of failure</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-preproc.html b/libxslt/doc/html/libxslt-preproc.html
new file mode 100644
index 0000000..f664304
--- /dev/null
+++ b/libxslt/doc/html/libxslt-preproc.html
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module preproc 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 preproc 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-pattern.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-pattern.html">pattern</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-security.html">security</a></th><td><a accesskey="n" href="libxslt-security.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this is the compilation phase, where most of the stylesheet is "compiled" into faster to use data. </p><h2>Table of Contents</h2><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> <a href="#xsltDocumentComp">xsltDocumentComp</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> function)</pre>
+<pre class="programlisting">void <a href="#xsltFreeStylePreComps">xsltFreeStylePreComps</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">void <a href="#xsltStylePreCompute">xsltStylePreCompute</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst)</pre>
+<h2>Description</h2>
+<h3><a name="xsltDocumentComp" id="xsltDocumentComp"></a>Function: xsltDocumentComp</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> xsltDocumentComp (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> function)<br />
+</pre><p>Pre process an XSLT-1.1 document element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the instruction in the stylesheet</td></tr><tr><td><span class="term"><i><tt>function</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a precompiled data structure for the element</td></tr></tbody></table></div><h3><a name="xsltFreeStylePreComps" id="xsltFreeStylePreComps"></a>Function: xsltFreeStylePreComps</h3><pre class="programlisting">void xsltFreeStylePreComps (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Free up the memory allocated by all precomputed blocks</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT transformation context</td></tr></tbody></table></div><h3><a name="xsltStylePreCompute" id="xsltStylePreCompute"></a>Function: xsltStylePreCompute</h3><pre class="programlisting">void xsltStylePreCompute (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst)<br />
+</pre><p>Precompute an XSLT stylesheet element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the instruction in the stylesheet</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-security.html b/libxslt/doc/html/libxslt-security.html
new file mode 100644
index 0000000..8b200ec
--- /dev/null
+++ b/libxslt/doc/html/libxslt-security.html
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module security 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 security 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-preproc.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-preproc.html">preproc</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-templates.html">templates</a></th><td><a accesskey="n" href="libxslt-templates.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>the libxslt security framework allow to restrict the access to new resources (file or URL) from the stylesheet at runtime. </p><h2>Table of Contents</h2><pre class="programlisting">Enum <a href="#xsltSecurityOption">xsltSecurityOption</a>
+</pre><pre class="programlisting">Structure <a href="#xsltSecurityPrefs">xsltSecurityPrefs</a><br />struct _xsltSecurityPrefs
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxslt-security.html#xsltSecurityPrefs">xsltSecurityPrefs</a> * <a name="xsltSecurityPrefsPtr" id="xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a>
+</pre><pre class="programlisting">int <a href="#xsltCheckRead">xsltCheckRead</a> (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URL)</pre>
+<pre class="programlisting">int <a href="#xsltCheckWrite">xsltCheckWrite</a> (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URL)</pre>
+<pre class="programlisting">void <a href="#xsltFreeSecurityPrefs">xsltFreeSecurityPrefs</a> (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec)</pre>
+<pre class="programlisting"><a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> <a href="#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a> (void)</pre>
+<pre class="programlisting"><a href="libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a> <a href="#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a> (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-security.html#xsltSecurityOption">xsltSecurityOption</a> option)</pre>
+<pre class="programlisting"><a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> <a href="#xsltNewSecurityPrefs">xsltNewSecurityPrefs</a> (void)</pre>
+<pre class="programlisting">int <a href="#xsltSecurityAllow">xsltSecurityAllow</a> (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const char * value)</pre>
+<pre class="programlisting">Function type: <a href="#xsltSecurityCheck">xsltSecurityCheck</a>
+int <a href="#xsltSecurityCheck">xsltSecurityCheck</a> (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const char * value)
+</pre>
+<pre class="programlisting">int <a href="#xsltSecurityForbid">xsltSecurityForbid</a> (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const char * value)</pre>
+<pre class="programlisting">int <a href="#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a> (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void <a href="#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a> (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec)</pre>
+<pre class="programlisting">int <a href="#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a> (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-security.html#xsltSecurityOption">xsltSecurityOption</a> option, <br /> <a href="libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a> func)</pre>
+<h2>Description</h2>
+<h3>Enum <a name="xsltSecurityOption" id="xsltSecurityOption">xsltSecurityOption</a></h3><pre class="programlisting">Enum xsltSecurityOption {
+ <a name="XSLT_SECPREF_READ_FILE" id="XSLT_SECPREF_READ_FILE">XSLT_SECPREF_READ_FILE</a> = 1
+ <a name="XSLT_SECPREF_WRITE_FILE" id="XSLT_SECPREF_WRITE_FILE">XSLT_SECPREF_WRITE_FILE</a> = 2
+ <a name="XSLT_SECPREF_CREATE_DIRECTORY" id="XSLT_SECPREF_CREATE_DIRECTORY">XSLT_SECPREF_CREATE_DIRECTORY</a> = 3
+ <a name="XSLT_SECPREF_READ_NETWORK" id="XSLT_SECPREF_READ_NETWORK">XSLT_SECPREF_READ_NETWORK</a> = 4
+ <a name="XSLT_SECPREF_WRITE_NETWORK" id="XSLT_SECPREF_WRITE_NETWORK">XSLT_SECPREF_WRITE_NETWORK</a> = 5
+}
+</pre><h3><a name="xsltSecurityPrefs" id="xsltSecurityPrefs">Structure xsltSecurityPrefs</a></h3><pre class="programlisting">Structure xsltSecurityPrefs<br />struct _xsltSecurityPrefs {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xsltCheckRead" id="xsltCheckRead"></a>Function: xsltCheckRead</h3><pre class="programlisting">int xsltCheckRead (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URL)<br />
+</pre><p>Check if the resource is allowed to be read</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sec</tt></i>:</span></td><td>the security options</td></tr><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>URL</tt></i>:</span></td><td>the resource to be read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if read is allowed, 0 if not and -1 in case or error.</td></tr></tbody></table></div><h3><a name="xsltCheckWrite" id="xsltCheckWrite"></a>Function: xsltCheckWrite</h3><pre class="programlisting">int xsltCheckWrite (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * URL)<br />
+</pre><p>Check if the resource is allowed to be written, if necessary makes some preliminary work like creating directories</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sec</tt></i>:</span></td><td>the security options</td></tr><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>URL</tt></i>:</span></td><td>the resource to be written</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if write is allowed, 0 if not and -1 in case or error.</td></tr></tbody></table></div><h3><a name="xsltFreeSecurityPrefs" id="xsltFreeSecurityPrefs"></a>Function: xsltFreeSecurityPrefs</h3><pre class="programlisting">void xsltFreeSecurityPrefs (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec)<br />
+</pre><p>Free up a security preference block</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sec</tt></i>:</span></td><td>the security block to free</td></tr></tbody></table></div><h3><a name="xsltGetDefaultSecurityPrefs" id="xsltGetDefaultSecurityPrefs"></a>Function: xsltGetDefaultSecurityPrefs</h3><pre class="programlisting"><a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> xsltGetDefaultSecurityPrefs (void)<br />
+</pre><p>Get the default security preference application-wide</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current <a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> in use or NULL if none</td></tr></tbody></table></div><h3><a name="xsltGetSecurityPrefs" id="xsltGetSecurityPrefs"></a>Function: xsltGetSecurityPrefs</h3><pre class="programlisting"><a href="libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a> xsltGetSecurityPrefs (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-security.html#xsltSecurityOption">xsltSecurityOption</a> option)<br />
+</pre><p>Lookup the security option to get the callback checking function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sec</tt></i>:</span></td><td>the security block to update</td></tr><tr><td><span class="term"><i><tt>option</tt></i>:</span></td><td>the option to lookup</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not found, the function otherwise</td></tr></tbody></table></div><h3><a name="xsltNewSecurityPrefs" id="xsltNewSecurityPrefs"></a>Function: xsltNewSecurityPrefs</h3><pre class="programlisting"><a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> xsltNewSecurityPrefs (void)<br />
+</pre><p>Create a new security preference block</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new block or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltSecurityAllow" id="xsltSecurityAllow"></a>Function: xsltSecurityAllow</h3><pre class="programlisting">int xsltSecurityAllow (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const char * value)<br />
+</pre><p>Function used to always allow an operation</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sec</tt></i>:</span></td><td>the security block to use</td></tr><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>value</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 always</td></tr></tbody></table></div><h3><a name="xsltSecurityCheck" id="xsltSecurityCheck"></a>Function type: xsltSecurityCheck</h3><pre class="programlisting">Function type: xsltSecurityCheck
+int xsltSecurityCheck (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const char * value)
+</pre><p>User provided function to check the value of a string like a file path or an URL ...</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sec</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xsltSecurityForbid" id="xsltSecurityForbid"></a>Function: xsltSecurityForbid</h3><pre class="programlisting">int xsltSecurityForbid (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const char * value)<br />
+</pre><p>Function used to always forbid an operation</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sec</tt></i>:</span></td><td>the security block to use</td></tr><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>value</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 always</td></tr></tbody></table></div><h3><a name="xsltSetCtxtSecurityPrefs" id="xsltSetCtxtSecurityPrefs"></a>Function: xsltSetCtxtSecurityPrefs</h3><pre class="programlisting">int xsltSetCtxtSecurityPrefs (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Set the security preference for a specific transformation</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sec</tt></i>:</span></td><td>the security block to use</td></tr><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>-1 in case of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xsltSetDefaultSecurityPrefs" id="xsltSetDefaultSecurityPrefs"></a>Function: xsltSetDefaultSecurityPrefs</h3><pre class="programlisting">void xsltSetDefaultSecurityPrefs (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec)<br />
+</pre><p>Set the default security preference application-wide</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sec</tt></i>:</span></td><td>the security block to use</td></tr></tbody></table></div><h3><a name="xsltSetSecurityPrefs" id="xsltSetSecurityPrefs"></a>Function: xsltSetSecurityPrefs</h3><pre class="programlisting">int xsltSetSecurityPrefs (<a href="libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a> sec, <br /> <a href="libxslt-security.html#xsltSecurityOption">xsltSecurityOption</a> option, <br /> <a href="libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a> func)<br />
+</pre><p>Update the security option to use the new callback checking function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sec</tt></i>:</span></td><td>the security block to update</td></tr><tr><td><span class="term"><i><tt>option</tt></i>:</span></td><td>the option to update</td></tr><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td>the user callback to use for this option</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, 0 otherwise</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-templates.html b/libxslt/doc/html/libxslt-templates.html
new file mode 100644
index 0000000..2a1241d
--- /dev/null
+++ b/libxslt/doc/html/libxslt-templates.html
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module templates 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 templates 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-security.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-security.html">security</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-transform.html">transform</a></th><td><a accesskey="n" href="libxslt-transform.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>This set of routine encapsulates XPath calls and Attribute Value Templates evaluation. </p><h2>Table of Contents</h2><pre class="programlisting">xmlAttrPtr <a href="#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr target, <br /> xmlAttrPtr attrs)</pre>
+<pre class="programlisting">xmlAttrPtr <a href="#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr target, <br /> xmlAttrPtr attr)</pre>
+<pre class="programlisting">xmlChar * <a href="#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * str)</pre>
+<pre class="programlisting">xmlChar * <a href="#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * str, <br /> xmlNodePtr inst)</pre>
+<pre class="programlisting">xmlChar * <a href="#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr inst, <br /> const xmlChar * name, <br /> const xmlChar * ns)</pre>
+<pre class="programlisting">const xmlChar * <a href="#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst, <br /> const xmlChar * name, <br /> const xmlChar * ns, <br /> int * found)</pre>
+<pre class="programlisting">xmlChar * <a href="#xsltEvalTemplateString">xsltEvalTemplateString</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr inst)</pre>
+<pre class="programlisting">int <a href="#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlXPathCompExprPtr comp, <br /> xmlNsPtr * nsList, <br /> int nsNr)</pre>
+<pre class="programlisting">xmlChar * <a href="#xsltEvalXPathString">xsltEvalXPathString</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlXPathCompExprPtr comp)</pre>
+<pre class="programlisting">xmlChar * <a href="#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlXPathCompExprPtr comp, <br /> int nsNr, <br /> xmlNsPtr * nsList)</pre>
+<pre class="programlisting">xmlNodePtr * <a href="#xsltTemplateProcess">xsltTemplateProcess</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node)</pre>
+<h2>Description</h2>
+<h3><a name="xsltAttrListTemplateProcess" id="xsltAttrListTemplateProcess"></a>Function: xsltAttrListTemplateProcess</h3><pre class="programlisting">xmlAttrPtr xsltAttrListTemplateProcess (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr target, <br /> xmlAttrPtr attrs)<br />
+</pre><p>Processes all attributes of a Literal Result Element. Attribute references are applied via xsl:use-attribute-set attributes. Copies all non XSLT-attributes over to the @target element and evaluates Attribute Value Templates. Called by xsltApplySequenceConstructor() (transform.c).</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>target</tt></i>:</span></td><td>the element where the attributes will be grafted</td></tr><tr><td><span class="term"><i><tt>attrs</tt></i>:</span></td><td>the first attribute</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new list of attribute nodes, or NULL in case of error. (Don't assign the result to @target-&gt;properties; if the result is NULL, you'll get memory leaks, since the attributes will be disattached.)</td></tr></tbody></table></div><h3><a name="xsltAttrTemplateProcess" id="xsltAttrTemplateProcess"></a>Function: xsltAttrTemplateProcess</h3><pre class="programlisting">xmlAttrPtr xsltAttrTemplateProcess (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr target, <br /> xmlAttrPtr attr)<br />
+</pre><p>Process one attribute of a Literal Result Element (in the stylesheet). Evaluates Attribute Value Templates and copies the attribute over to the result element. This does *not* process attribute sets (xsl:use-attribute-set).</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>target</tt></i>:</span></td><td>the element where the attribute will be grafted</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the attribute node of a literal result element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the generated attribute node.</td></tr></tbody></table></div><h3><a name="xsltAttrTemplateValueProcess" id="xsltAttrTemplateValueProcess"></a>Function: xsltAttrTemplateValueProcess</h3><pre class="programlisting">xmlChar * xsltAttrTemplateValueProcess (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * str)<br />
+</pre><p>Process the given node and return the new string value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the attribute template node value</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="xsltAttrTemplateValueProcessNode" id="xsltAttrTemplateValueProcessNode"></a>Function: xsltAttrTemplateValueProcessNode</h3><pre class="programlisting">xmlChar * xsltAttrTemplateValueProcessNode (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * str, <br /> xmlNodePtr inst)<br />
+</pre><p>Process the given string, allowing to pass a namespace mapping context and return the new string value. Called by: - xsltAttrTemplateValueProcess() (templates.c) - xsltEvalAttrValueTemplate() (templates.c) QUESTION: Why is this function public? It is not used outside of templates.c.</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>str</tt></i>:</span></td><td>the attribute template node value</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the instruction (or LRE) in the stylesheet holding the attribute with an AVT</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="xsltEvalAttrValueTemplate" id="xsltEvalAttrValueTemplate"></a>Function: xsltEvalAttrValueTemplate</h3><pre class="programlisting">xmlChar * xsltEvalAttrValueTemplate (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr inst, <br /> const xmlChar * name, <br /> const xmlChar * ns)<br />
+</pre><p>Evaluate a attribute value template, i.e. the attribute value can contain expressions contained in curly braces ({}) and those are substituted by they computed value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the instruction (or LRE) in the stylesheet holding the attribute with an AVT</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the attribute QName</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the attribute namespace URI</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="xsltEvalStaticAttrValueTemplate" id="xsltEvalStaticAttrValueTemplate"></a>Function: xsltEvalStaticAttrValueTemplate</h3><pre class="programlisting">const xmlChar * xsltEvalStaticAttrValueTemplate (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr inst, <br /> const xmlChar * name, <br /> const xmlChar * ns, <br /> int * found)<br />
+</pre><p>Check if an attribute value template has a static value, i.e. the attribute value does not contain expressions contained in curly braces ({})</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the instruction (or LRE) in the stylesheet holding the attribute with an AVT</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the attribute Name</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the attribute namespace URI</td></tr><tr><td><span class="term"><i><tt>found</tt></i>:</span></td><td>indicator whether the attribute is present</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the static string value or NULL, must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xsltEvalTemplateString" id="xsltEvalTemplateString"></a>Function: xsltEvalTemplateString</h3><pre class="programlisting">xmlChar * xsltEvalTemplateString (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr inst)<br />
+</pre><p>Processes the sequence constructor of the given instruction on @contextNode and converts the resulting tree to a string. This is needed by e.g. xsl:comment and xsl:processing-instruction.</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>contextNode</tt></i>:</span></td><td>the current node in the source tree</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the XSLT instruction (xsl:comment, xsl:processing-instruction)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the computed string value or NULL; it's up to the caller to free the result.</td></tr></tbody></table></div><h3><a name="xsltEvalXPathPredicate" id="xsltEvalXPathPredicate"></a>Function: xsltEvalXPathPredicate</h3><pre class="programlisting">int xsltEvalXPathPredicate (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlXPathCompExprPtr comp, <br /> xmlNsPtr * nsList, <br /> int nsNr)<br />
+</pre><p>Process the expression using XPath and evaluate the result as an XPath predicate</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>comp</tt></i>:</span></td><td>the XPath compiled expression</td></tr><tr><td><span class="term"><i><tt>nsList</tt></i>:</span></td><td>the namespaces in scope</td></tr><tr><td><span class="term"><i><tt>nsNr</tt></i>:</span></td><td>the number of namespaces in scope</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 is the predicate was true, 0 otherwise</td></tr></tbody></table></div><h3><a name="xsltEvalXPathString" id="xsltEvalXPathString"></a>Function: xsltEvalXPathString</h3><pre class="programlisting">xmlChar * xsltEvalXPathString (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlXPathCompExprPtr comp)<br />
+</pre><p>Process the expression using XPath and get a string</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>comp</tt></i>:</span></td><td>the compiled XPath expression</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="xsltEvalXPathStringNs" id="xsltEvalXPathStringNs"></a>Function: xsltEvalXPathStringNs</h3><pre class="programlisting">xmlChar * xsltEvalXPathStringNs (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlXPathCompExprPtr comp, <br /> int nsNr, <br /> xmlNsPtr * nsList)<br />
+</pre><p>Process the expression using XPath, allowing to pass a namespace mapping context and get a string</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>comp</tt></i>:</span></td><td>the compiled XPath expression</td></tr><tr><td><span class="term"><i><tt>nsNr</tt></i>:</span></td><td>the number of namespaces in the list</td></tr><tr><td><span class="term"><i><tt>nsList</tt></i>:</span></td><td>the list of in-scope namespaces to use</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="xsltTemplateProcess" id="xsltTemplateProcess"></a>Function: xsltTemplateProcess</h3><pre class="programlisting">xmlNodePtr * xsltTemplateProcess (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node)<br />
+</pre><p>Obsolete. Don't use it.</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 attribute template node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL.</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-transform.html b/libxslt/doc/html/libxslt-transform.html
new file mode 100644
index 0000000..be71f2c
--- /dev/null
+++ b/libxslt/doc/html/libxslt-transform.html
@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module transform 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 transform 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-templates.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-templates.html">templates</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-variables.html">variables</a></th><td><a accesskey="n" href="libxslt-variables.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>This module implements the bulk of the actual</p><h2>Table of Contents</h2><pre class="programlisting">void <a href="#xslHandleDebugger">xslHandleDebugger</a> (xmlNodePtr cur, <br /> xmlNodePtr node, <br /> <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void <a href="#xsltApplyImports">xsltApplyImports</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)</pre>
+<pre class="programlisting">void <a href="#xsltApplyOneTemplate">xsltApplyOneTemplate</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr list, <br /> <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ, <br /> <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> params)</pre>
+<pre class="programlisting">void <a href="#xsltApplyStripSpaces">xsltApplyStripSpaces</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node)</pre>
+<pre class="programlisting">xmlDocPtr <a href="#xsltApplyStylesheet">xsltApplyStylesheet</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc, <br /> const char ** params)</pre>
+<pre class="programlisting">xmlDocPtr <a href="#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc, <br /> const char ** params, <br /> const char * output, <br /> FILE * profile, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> userCtxt)</pre>
+<pre class="programlisting">void <a href="#xsltApplyTemplates">xsltApplyTemplates</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<pre class="programlisting">void <a href="#xsltAttribute">xsltAttribute</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)</pre>
+<pre class="programlisting">void <a href="#xsltCallTemplate">xsltCallTemplate</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<pre class="programlisting">void <a href="#xsltChoose">xsltChoose</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)</pre>
+<pre class="programlisting">void <a href="#xsltComment">xsltComment</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)</pre>
+<pre class="programlisting">void <a href="#xsltCopy">xsltCopy</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<pre class="programlisting">void <a href="#xsltCopyOf">xsltCopyOf</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<pre class="programlisting">xmlNodePtr <a href="#xsltCopyTextString">xsltCopyTextString</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr target, <br /> const xmlChar * string, <br /> int noescape)</pre>
+<pre class="programlisting">void <a href="#xsltDocumentElem">xsltDocumentElem</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<pre class="programlisting">void <a href="#xsltElement">xsltElement</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<pre class="programlisting">void <a href="#xsltForEach">xsltForEach</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<pre class="programlisting">void <a href="#xsltFreeTransformContext">xsltFreeTransformContext</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">int <a href="#xsltGetXIncludeDefault">xsltGetXIncludeDefault</a> (void)</pre>
+<pre class="programlisting">void <a href="#xsltIf">xsltIf</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<pre class="programlisting">void <a href="#xsltLocalVariablePop">xsltLocalVariablePop</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> int limitNr, <br /> int level)</pre>
+<pre class="programlisting">int <a href="#xsltLocalVariablePush">xsltLocalVariablePush</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> variable, <br /> int level)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> <a href="#xsltNewTransformContext">xsltNewTransformContext</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc)</pre>
+<pre class="programlisting">void <a href="#xsltNumber">xsltNumber</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<pre class="programlisting">void <a href="#xsltProcessOneNode">xsltProcessOneNode</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> withParams)</pre>
+<pre class="programlisting">void <a href="#xsltProcessingInstruction">xsltProcessingInstruction</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<pre class="programlisting">xmlDocPtr <a href="#xsltProfileStylesheet">xsltProfileStylesheet</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc, <br /> const char ** params, <br /> FILE * output)</pre>
+<pre class="programlisting">void <a href="#xsltRegisterAllElement">xsltRegisterAllElement</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">int <a href="#xsltRunStylesheet">xsltRunStylesheet</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc, <br /> const char ** params, <br /> const char * output, <br /> xmlSAXHandlerPtr SAX, <br /> xmlOutputBufferPtr IObuf)</pre>
+<pre class="programlisting">int <a href="#xsltRunStylesheetUser">xsltRunStylesheetUser</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc, <br /> const char ** params, <br /> const char * output, <br /> xmlSAXHandlerPtr SAX, <br /> xmlOutputBufferPtr IObuf, <br /> FILE * profile, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> userCtxt)</pre>
+<pre class="programlisting">void <a href="#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a> (int xinclude)</pre>
+<pre class="programlisting">void <a href="#xsltSort">xsltSort</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)</pre>
+<pre class="programlisting">void <a href="#xsltText">xsltText</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)</pre>
+<pre class="programlisting">void <a href="#xsltValueOf">xsltValueOf</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)</pre>
+<h2>Description</h2>
+<h3><a name="xslHandleDebugger" id="xslHandleDebugger"></a>Function: xslHandleDebugger</h3><pre class="programlisting">void xslHandleDebugger (xmlNodePtr cur, <br /> xmlNodePtr node, <br /> <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>If either cur or node are a breakpoint, or <a href="libxslt-xsltutils.html#xslDebugStatus">xslDebugStatus</a> in state where debugging must occcur at this time then transfer control to the xslDebugBreak function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>source node being executed</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>data node being processed</td></tr><tr><td><span class="term"><i><tt>templ</tt></i>:</span></td><td>temlate that applies to node</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the xslt transform context</td></tr></tbody></table></div><h3><a name="xsltApplyImports" id="xsltApplyImports"></a>Function: xsltApplyImports</h3><pre class="programlisting">void xsltApplyImports (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)<br />
+</pre><p>Process the XSLT apply-imports element.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>contextNode</tt></i>:</span></td><td>the current node in the source tree.</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the element node of the XSLT 'apply-imports' instruction</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled instruction</td></tr></tbody></table></div><h3><a name="xsltApplyOneTemplate" id="xsltApplyOneTemplate"></a>Function: xsltApplyOneTemplate</h3><pre class="programlisting">void xsltApplyOneTemplate (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr list, <br /> <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ, <br /> <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> params)<br />
+</pre><p>Processes a sequence constructor on the current node in the source tree. @params are the already computed variable stack items; this function pushes them on the variable stack, and pops them before exiting; it's left to the caller to free or reuse @params afterwards. The initial states of the variable stack will always be restored before this function exits. NOTE that this does *not* initiate a new distinct variable scope; i.e. variables already on the stack are visible to the process. The caller's side needs to start a new variable scope if needed (e.g. in exsl:function). @templ is obsolete and not used anymore (e.g. &lt;exslt:function&gt; does not provide a @templ); a non-NULL @templ might raise an error in the future. BIG NOTE: This function is not intended to process the content of an xsl:template; it does not expect xsl:param instructions in @list and will report errors if found. Called by: - xsltEvalVariable() (variables.c) - exsltFuncFunctionFunction() (libexsl/functions.c)</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>contextNode</tt></i>:</span></td><td>the node in the source tree.</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>the nodes of a sequence constructor</td></tr><tr><td><span class="term"><i><tt>templ</tt></i>:</span></td><td>not used</td></tr><tr><td><span class="term"><i><tt>params</tt></i>:</span></td><td>a set of parameters (xsl:param) or NULL</td></tr></tbody></table></div><h3><a name="xsltApplyStripSpaces" id="xsltApplyStripSpaces"></a>Function: xsltApplyStripSpaces</h3><pre class="programlisting">void xsltApplyStripSpaces (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node)<br />
+</pre><p>Strip the unwanted ignorable spaces from the input tree</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the root of the XML tree</td></tr></tbody></table></div><h3><a name="xsltApplyStylesheet" id="xsltApplyStylesheet"></a>Function: xsltApplyStylesheet</h3><pre class="programlisting">xmlDocPtr xsltApplyStylesheet (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc, <br /> const char ** params)<br />
+</pre><p>Apply the stylesheet to the document NOTE: This may lead to a non-wellformed output XML wise !</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>a parsed XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed XML document</td></tr><tr><td><span class="term"><i><tt>params</tt></i>:</span></td><td>a NULL terminated arry of parameters names/values tuples</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the result document or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltApplyStylesheetUser" id="xsltApplyStylesheetUser"></a>Function: xsltApplyStylesheetUser</h3><pre class="programlisting">xmlDocPtr xsltApplyStylesheetUser (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc, <br /> const char ** params, <br /> const char * output, <br /> FILE * profile, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> userCtxt)<br />
+</pre><p>Apply the stylesheet to the document and allow the user to provide its own transformation context.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>a parsed XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed XML document</td></tr><tr><td><span class="term"><i><tt>params</tt></i>:</span></td><td>a NULL terminated array of parameters names/values tuples</td></tr><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the targetted output</td></tr><tr><td><span class="term"><i><tt>profile</tt></i>:</span></td><td>profile FILE * output or NULL</td></tr><tr><td><span class="term"><i><tt>userCtxt</tt></i>:</span></td><td>user provided transform context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the result document or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltApplyTemplates" id="xsltApplyTemplates"></a>Function: xsltApplyTemplates</h3><pre class="programlisting">void xsltApplyTemplates (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Processes the XSLT 'apply-templates' instruction on the current node.</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 XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the 'current node' in the source tree</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the element node of an XSLT 'apply-templates' instruction</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>the compiled instruction</td></tr></tbody></table></div><h3><a name="xsltAttribute" id="xsltAttribute"></a>Function: xsltAttribute</h3><pre class="programlisting">void xsltAttribute (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)<br />
+</pre><p>Process the xslt attribute node on the source node</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node in the source tree.</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xslt attribute node</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>precomputed information</td></tr></tbody></table></div><h3><a name="xsltCallTemplate" id="xsltCallTemplate"></a>Function: xsltCallTemplate</h3><pre class="programlisting">void xsltCallTemplate (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Processes the XSLT call-template instruction on the source node.</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 XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the "current node" in the source tree</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the XSLT 'call-template' instruction</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>the compiled information of the instruction</td></tr></tbody></table></div><h3><a name="xsltChoose" id="xsltChoose"></a>Function: xsltChoose</h3><pre class="programlisting">void xsltChoose (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)<br />
+</pre><p>Processes the xsl:choose instruction on the source node.</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>contextNode</tt></i>:</span></td><td>the current node in the source tree</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xsl:choose instruction</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>compiled information of the instruction</td></tr></tbody></table></div><h3><a name="xsltComment" id="xsltComment"></a>Function: xsltComment</h3><pre class="programlisting">void xsltComment (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)<br />
+</pre><p>Process the xslt comment node on the source node</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node in the source tree.</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xslt comment node</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>precomputed information</td></tr></tbody></table></div><h3><a name="xsltCopy" id="xsltCopy"></a>Function: xsltCopy</h3><pre class="programlisting">void xsltCopy (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Execute the XSLT-copy instruction on the source node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node in the source tree</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the element node of the XSLT-copy instruction</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>computed information of the XSLT-copy instruction</td></tr></tbody></table></div><h3><a name="xsltCopyOf" id="xsltCopyOf"></a>Function: xsltCopyOf</h3><pre class="programlisting">void xsltCopyOf (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Process the XSLT copy-of instruction.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node in the source tree</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the element node of the XSLT copy-of instruction</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>precomputed information of the XSLT copy-of instruction</td></tr></tbody></table></div><h3><a name="xsltCopyTextString" id="xsltCopyTextString"></a>Function: xsltCopyTextString</h3><pre class="programlisting">xmlNodePtr xsltCopyTextString (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr target, <br /> const xmlChar * string, <br /> int noescape)<br />
+</pre><p>Adds @string to a newly created or an existent text node child of @target.</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the element where the text will be attached</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the text string</td></tr><tr><td><span class="term"><i><tt>noescape</tt></i>:</span></td><td>should disable-escaping be activated for this text node.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the text node, where the text content of @cur is copied to. NULL in case of API or internal errors.</td></tr></tbody></table></div><h3><a name="xsltDocumentElem" id="xsltDocumentElem"></a>Function: xsltDocumentElem</h3><pre class="programlisting">void xsltDocumentElem (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Process an EXSLT/XSLT-1.1 document element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT processing context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>The current node</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the instruction in the stylesheet</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>precomputed information</td></tr></tbody></table></div><h3><a name="xsltElement" id="xsltElement"></a>Function: xsltElement</h3><pre class="programlisting">void xsltElement (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Process the xslt element node on the source node</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node in the source tree.</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xslt element node</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>precomputed information</td></tr></tbody></table></div><h3><a name="xsltForEach" id="xsltForEach"></a>Function: xsltForEach</h3><pre class="programlisting">void xsltForEach (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Process the xslt for-each node on the source node</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>contextNode</tt></i>:</span></td><td>the "current node" in the source tree</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the element node of the xsl:for-each instruction</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>the compiled information of the instruction</td></tr></tbody></table></div><h3><a name="xsltFreeTransformContext" id="xsltFreeTransformContext"></a>Function: xsltFreeTransformContext</h3><pre class="programlisting">void xsltFreeTransformContext (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Free up the memory allocated by @ctxt</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT parser context</td></tr></tbody></table></div><h3><a name="xsltGetXIncludeDefault" id="xsltGetXIncludeDefault"></a>Function: xsltGetXIncludeDefault</h3><pre class="programlisting">int xsltGetXIncludeDefault (void)<br />
+</pre><p>Provides the default state for XInclude processing</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if there is no processing 1 otherwise</td></tr></tbody></table></div><h3><a name="xsltIf" id="xsltIf"></a>Function: xsltIf</h3><pre class="programlisting">void xsltIf (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Processes the xsl:if instruction on the source node.</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>contextNode</tt></i>:</span></td><td>the current node in the source tree</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xsl:if instruction</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>compiled information of the instruction</td></tr></tbody></table></div><h3><a name="xsltLocalVariablePop" id="xsltLocalVariablePop"></a>Function: xsltLocalVariablePop</h3><pre class="programlisting">void xsltLocalVariablePop (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> int limitNr, <br /> int level)<br />
+</pre><p>Pops all variable values at the given @depth from the stack.</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 transformation context</td></tr><tr><td><span class="term"><i><tt>limitNr</tt></i>:</span></td><td>number of variables which should remain</td></tr><tr><td><span class="term"><i><tt>level</tt></i>:</span></td><td>the depth in the xsl:template's tree</td></tr></tbody></table></div><h3><a name="xsltLocalVariablePush" id="xsltLocalVariablePush"></a>Function: xsltLocalVariablePush</h3><pre class="programlisting">int xsltLocalVariablePush (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> variable, <br /> int level)<br />
+</pre><p>Places the variable onto the local variable stack</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 transformation context</td></tr><tr><td><span class="term"><i><tt>variable</tt></i>:</span></td><td>variable to be pushed to the variable stack</td></tr><tr><td><span class="term"><i><tt>level</tt></i>:</span></td><td>new value for variable's level</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 for success, -1 for any error **NOTE:** This is an internal routine and should not be called by users!</td></tr></tbody></table></div><h3><a name="xsltNewTransformContext" id="xsltNewTransformContext"></a>Function: xsltNewTransformContext</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> xsltNewTransformContext (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc)<br />
+</pre><p>Create a new XSLT TransformContext</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>a parsed XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the input document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly allocated <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltNumber" id="xsltNumber"></a>Function: xsltNumber</h3><pre class="programlisting">void xsltNumber (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Process the xslt number node on the source node</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node in the source tree.</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xslt number node</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>precomputed information</td></tr></tbody></table></div><h3><a name="xsltProcessOneNode" id="xsltProcessOneNode"></a>Function: xsltProcessOneNode</h3><pre class="programlisting">void xsltProcessOneNode (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr contextNode, <br /> <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> withParams)<br />
+</pre><p>Process the source node.</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>contextNode</tt></i>:</span></td><td>the "current node" in the source tree</td></tr><tr><td><span class="term"><i><tt>withParams</tt></i>:</span></td><td>extra parameters (e.g. xsl:with-param) passed to the template if any</td></tr></tbody></table></div><h3><a name="xsltProcessingInstruction" id="xsltProcessingInstruction"></a>Function: xsltProcessingInstruction</h3><pre class="programlisting">void xsltProcessingInstruction (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Process the xslt processing-instruction node on the source node</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node in the source tree.</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xslt processing-instruction node</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>precomputed information</td></tr></tbody></table></div><h3><a name="xsltProfileStylesheet" id="xsltProfileStylesheet"></a>Function: xsltProfileStylesheet</h3><pre class="programlisting">xmlDocPtr xsltProfileStylesheet (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc, <br /> const char ** params, <br /> FILE * output)<br />
+</pre><p>Apply the stylesheet to the document and dump the profiling to the given output.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>a parsed XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed XML document</td></tr><tr><td><span class="term"><i><tt>params</tt></i>:</span></td><td>a NULL terminated arry of parameters names/values tuples</td></tr><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>a FILE * for the profiling output</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the result document or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltRegisterAllElement" id="xsltRegisterAllElement"></a>Function: xsltRegisterAllElement</h3><pre class="programlisting">void xsltRegisterAllElement (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Registers all default XSLT elements in this context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr></tbody></table></div><h3><a name="xsltRunStylesheet" id="xsltRunStylesheet"></a>Function: xsltRunStylesheet</h3><pre class="programlisting">int xsltRunStylesheet (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc, <br /> const char ** params, <br /> const char * output, <br /> xmlSAXHandlerPtr SAX, <br /> xmlOutputBufferPtr IObuf)<br />
+</pre><p>Apply the stylesheet to the document and generate the output according to @output @SAX and @IObuf. It's an error to specify both @SAX and @IObuf. NOTE: This may lead to a non-wellformed output XML wise ! NOTE: This may also result in multiple files being generated NOTE: using IObuf, the result encoding used will be the one used for creating the output buffer, use the following macro to read it from the stylesheet XSLT_GET_IMPORT_PTR(encoding, style, encoding) NOTE: using SAX, any encoding specified in the stylesheet will be lost since the interface uses only UTF8</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>a parsed XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed XML document</td></tr><tr><td><span class="term"><i><tt>params</tt></i>:</span></td><td>a NULL terminated array of parameters names/values tuples</td></tr><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the URL/filename ot the generated resource if available</td></tr><tr><td><span class="term"><i><tt>SAX</tt></i>:</span></td><td>a SAX handler for progressive callback output (not implemented yet)</td></tr><tr><td><span class="term"><i><tt>IObuf</tt></i>:</span></td><td>an output buffer for progressive output (not implemented yet)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written to the main resource or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltRunStylesheetUser" id="xsltRunStylesheetUser"></a>Function: xsltRunStylesheetUser</h3><pre class="programlisting">int xsltRunStylesheetUser (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlDocPtr doc, <br /> const char ** params, <br /> const char * output, <br /> xmlSAXHandlerPtr SAX, <br /> xmlOutputBufferPtr IObuf, <br /> FILE * profile, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> userCtxt)<br />
+</pre><p>Apply the stylesheet to the document and generate the output according to @output @SAX and @IObuf. It's an error to specify both @SAX and @IObuf. NOTE: This may lead to a non-wellformed output XML wise ! NOTE: This may also result in multiple files being generated NOTE: using IObuf, the result encoding used will be the one used for creating the output buffer, use the following macro to read it from the stylesheet XSLT_GET_IMPORT_PTR(encoding, style, encoding) NOTE: using SAX, any encoding specified in the stylesheet will be lost since the interface uses only UTF8</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>a parsed XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed XML document</td></tr><tr><td><span class="term"><i><tt>params</tt></i>:</span></td><td>a NULL terminated array of parameters names/values tuples</td></tr><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the URL/filename ot the generated resource if available</td></tr><tr><td><span class="term"><i><tt>SAX</tt></i>:</span></td><td>a SAX handler for progressive callback output (not implemented yet)</td></tr><tr><td><span class="term"><i><tt>IObuf</tt></i>:</span></td><td>an output buffer for progressive output (not implemented yet)</td></tr><tr><td><span class="term"><i><tt>profile</tt></i>:</span></td><td>profile FILE * output or NULL</td></tr><tr><td><span class="term"><i><tt>userCtxt</tt></i>:</span></td><td>user provided transform context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of by written to the main resource or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltSetXIncludeDefault" id="xsltSetXIncludeDefault"></a>Function: xsltSetXIncludeDefault</h3><pre class="programlisting">void xsltSetXIncludeDefault (int xinclude)<br />
+</pre><p>Set whether XInclude should be processed on document being loaded by default</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>xinclude</tt></i>:</span></td><td>whether to do XInclude processing</td></tr></tbody></table></div><h3><a name="xsltSort" id="xsltSort"></a>Function: xsltSort</h3><pre class="programlisting">void xsltSort (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)<br />
+</pre><p>function attached to xsl:sort nodes, but this should not be called directly</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node in the source tree.</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xslt sort node</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>precomputed information</td></tr></tbody></table></div><h3><a name="xsltText" id="xsltText"></a>Function: xsltText</h3><pre class="programlisting">void xsltText (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp)<br />
+</pre><p>Process the xslt text node on the source node</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node in the source tree.</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xslt text node</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>precomputed information</td></tr></tbody></table></div><h3><a name="xsltValueOf" id="xsltValueOf"></a>Function: xsltValueOf</h3><pre class="programlisting">void xsltValueOf (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> castedComp)<br />
+</pre><p>Process the xslt value-of node on the source node</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node in the source tree.</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xslt value-of node</td></tr><tr><td><span class="term"><i><tt>castedComp</tt></i>:</span></td><td>precomputed information</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-variables.html b/libxslt/doc/html/libxslt-variables.html
new file mode 100644
index 0000000..2a7f71d
--- /dev/null
+++ b/libxslt/doc/html/libxslt-variables.html
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module variables 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 variables 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-transform.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-transform.html">transform</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-xslt.html">xslt</a></th><td><a accesskey="n" href="libxslt-xslt.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>interface for the variable matching and lookup. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a></pre><pre class="programlisting">int <a href="#xsltAddStackElemList">xsltAddStackElemList</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> elems)</pre>
+<pre class="programlisting">int <a href="#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">int <a href="#xsltEvalOneUserParam">xsltEvalOneUserParam</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * value)</pre>
+<pre class="programlisting">int <a href="#xsltEvalUserParams">xsltEvalUserParams</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const char ** params)</pre>
+<pre class="programlisting">void <a href="#xsltFreeGlobalVariables">xsltFreeGlobalVariables</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void <a href="#xsltParseGlobalParam">xsltParseGlobalParam</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)</pre>
+<pre class="programlisting">void <a href="#xsltParseGlobalVariable">xsltParseGlobalVariable</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> <a href="#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr inst)</pre>
+<pre class="programlisting">void <a href="#xsltParseStylesheetParam">xsltParseStylesheetParam</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr cur)</pre>
+<pre class="programlisting">void <a href="#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr inst)</pre>
+<pre class="programlisting">int <a href="#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * value)</pre>
+<pre class="programlisting">int <a href="#xsltQuoteUserParams">xsltQuoteUserParams</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const char ** params)</pre>
+<pre class="programlisting">xmlXPathObjectPtr <a href="#xsltVariableLookup">xsltVariableLookup</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * ns_uri)</pre>
+<pre class="programlisting">xmlXPathObjectPtr <a href="#xsltXPathVariableLookup">xsltXPathVariableLookup</a> (void * ctxt, <br /> const xmlChar * name, <br /> const xmlChar * ns_uri)</pre>
+<h2>Description</h2>
+<h3><a name="XSLT_REGISTER_VARIABLE_LOOKUP" id="XSLT_REGISTER_VARIABLE_LOOKUP"></a>Macro: XSLT_REGISTER_VARIABLE_LOOKUP</h3><pre>#define XSLT_REGISTER_VARIABLE_LOOKUP</pre><p>Registering macro, not general purpose at all but used in different modules.</p>
+<h3><a name="xsltAddStackElemList" id="xsltAddStackElemList"></a>Function: xsltAddStackElemList</h3><pre class="programlisting">int xsltAddStackElemList (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> elems)<br />
+</pre><p>Push an element list onto the stack.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>xn XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>elems</tt></i>:</span></td><td>a stack element list</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="xsltEvalGlobalVariables" id="xsltEvalGlobalVariables"></a>Function: xsltEvalGlobalVariables</h3><pre class="programlisting">int xsltEvalGlobalVariables (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Evaluates all global variables and parameters of a stylesheet. For internal use only. This is called at start of a transformation.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT 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 error</td></tr></tbody></table></div><h3><a name="xsltEvalOneUserParam" id="xsltEvalOneUserParam"></a>Function: xsltEvalOneUserParam</h3><pre class="programlisting">int xsltEvalOneUserParam (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * value)<br />
+</pre><p>This is normally called from <a href="libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a> to process a single parameter from a list of parameters. The @value is evaluated as an XPath expression and the result is stored in the context's global variable/parameter hash table. To have a parameter treated literally (not as an XPath expression) use <a href="libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a> (or xsltQuoteOneUserParam). For more details see description of xsltProcessOneUserParamInternal.</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>name</tt></i>:</span></td><td>a null terminated string giving the name of the parameter</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>a null terminated string giving the XPath expression to be evaluated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltEvalUserParams" id="xsltEvalUserParams"></a>Function: xsltEvalUserParams</h3><pre class="programlisting">int xsltEvalUserParams (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const char ** params)<br />
+</pre><p>Evaluate the global variables of a stylesheet. This needs to be done on parsed stylesheets before starting to apply transformations. Each of the parameters is evaluated as an XPath expression and stored in the global variables/parameter hash table. If you want your parameter used literally, use xsltQuoteUserParams.</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>params</tt></i>:</span></td><td>a NULL terminated array of parameters name/value tuples</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="xsltFreeGlobalVariables" id="xsltFreeGlobalVariables"></a>Function: xsltFreeGlobalVariables</h3><pre class="programlisting">void xsltFreeGlobalVariables (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Free up the data associated to the global variables its value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr></tbody></table></div><h3><a name="xsltParseGlobalParam" id="xsltParseGlobalParam"></a>Function: xsltParseGlobalParam</h3><pre class="programlisting">void xsltParseGlobalParam (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)<br />
+</pre><p>parse an XSLT transformation param declaration and record its value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the "param" element</td></tr></tbody></table></div><h3><a name="xsltParseGlobalVariable" id="xsltParseGlobalVariable"></a>Function: xsltParseGlobalVariable</h3><pre class="programlisting">void xsltParseGlobalVariable (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)<br />
+</pre><p>Parses a global XSLT 'variable' declaration at compilation time and registers it</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the "variable" element</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetCallerParam" id="xsltParseStylesheetCallerParam"></a>Function: xsltParseStylesheetCallerParam</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> xsltParseStylesheetCallerParam (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr inst)<br />
+</pre><p>Processes an xsl:with-param instruction at transformation time. The value is compute, but not recorded. NOTE that this is also called with an *xsl:param* element from exsltFuncFunctionFunction().</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>inst</tt></i>:</span></td><td>the xsl:with-param instruction element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> or NULL</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetParam" id="xsltParseStylesheetParam"></a>Function: xsltParseStylesheetParam</h3><pre class="programlisting">void xsltParseStylesheetParam (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr cur)<br />
+</pre><p>Registers a local XSLT 'param' declaration at transformation time and evaluates its value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the XSLT 'param' element</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetVariable" id="xsltParseStylesheetVariable"></a>Function: xsltParseStylesheetVariable</h3><pre class="programlisting">void xsltParseStylesheetVariable (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr inst)<br />
+</pre><p>Registers a local XSLT 'variable' instruction at transformation time and evaluates its value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the xsl:variable instruction element</td></tr></tbody></table></div><h3><a name="xsltQuoteOneUserParam" id="xsltQuoteOneUserParam"></a>Function: xsltQuoteOneUserParam</h3><pre class="programlisting">int xsltQuoteOneUserParam (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * value)<br />
+</pre><p>This is normally called from <a href="libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a> to process a single parameter from a list of parameters. The @value is stored in the context's global variable/parameter hash table.</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>name</tt></i>:</span></td><td>a null terminated string giving the name of the parameter</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>a null terminated string giving the parameter value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltQuoteUserParams" id="xsltQuoteUserParams"></a>Function: xsltQuoteUserParams</h3><pre class="programlisting">int xsltQuoteUserParams (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const char ** params)<br />
+</pre><p>Similar to xsltEvalUserParams, but the values are treated literally and are * *not* evaluated as XPath expressions. This should be done on parsed stylesheets before starting to apply transformations.</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>params</tt></i>:</span></td><td>a NULL terminated arry of parameters names/values tuples</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error.</td></tr></tbody></table></div><h3><a name="xsltVariableLookup" id="xsltVariableLookup"></a>Function: xsltVariableLookup</h3><pre class="programlisting">xmlXPathObjectPtr xsltVariableLookup (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> const xmlChar * name, <br /> const xmlChar * ns_uri)<br />
+</pre><p>Search in the Variable array of the context for the given variable value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the variable name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the variable namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value or NULL if not found</td></tr></tbody></table></div><h3><a name="xsltXPathVariableLookup" id="xsltXPathVariableLookup"></a>Function: xsltXPathVariableLookup</h3><pre class="programlisting">xmlXPathObjectPtr xsltXPathVariableLookup (void * ctxt, <br /> const xmlChar * name, <br /> const xmlChar * ns_uri)<br />
+</pre><p>This is the entry point when a varibale is needed by the XPath interpretor.</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 void * but the the XSLT transformation context actually</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the variable name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the variable namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value or NULL if not found</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-xslt.html b/libxslt/doc/html/libxslt-xslt.html
new file mode 100644
index 0000000..6d822a4
--- /dev/null
+++ b/libxslt/doc/html/libxslt-xslt.html
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module xslt 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 xslt 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-variables.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-variables.html">variables</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-xsltInternals.html">xsltInternals</a></th><td><a accesskey="n" href="libxslt-xsltInternals.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>Interfaces, constants and types related to the XSLT engine </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XSLT_DEFAULT_URL">XSLT_DEFAULT_URL</a></pre><pre class="programlisting">#define <a href="#XSLT_DEFAULT_VENDOR">XSLT_DEFAULT_VENDOR</a></pre><pre class="programlisting">#define <a href="#XSLT_DEFAULT_VERSION">XSLT_DEFAULT_VERSION</a></pre><pre class="programlisting">#define <a href="#XSLT_NAMESPACE">XSLT_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a></pre><pre class="programlisting">void <a href="#xsltCleanupGlobals">xsltCleanupGlobals</a> (void)</pre>
+<pre class="programlisting">void <a href="#xsltInit">xsltInit</a> (void)</pre>
+<h2>Description</h2>
+<h3><a name="XSLT_DEFAULT_URL" id="XSLT_DEFAULT_URL"></a>Macro: XSLT_DEFAULT_URL</h3><pre>#define XSLT_DEFAULT_URL</pre><p>The XSLT "vendor" URL for this processor.</p>
+<h3><a name="XSLT_DEFAULT_VENDOR" id="XSLT_DEFAULT_VENDOR"></a>Macro: XSLT_DEFAULT_VENDOR</h3><pre>#define XSLT_DEFAULT_VENDOR</pre><p>The XSLT "vendor" string for this processor.</p>
+<h3><a name="XSLT_DEFAULT_VERSION" id="XSLT_DEFAULT_VERSION"></a>Macro: XSLT_DEFAULT_VERSION</h3><pre>#define XSLT_DEFAULT_VERSION</pre><p>The default version of XSLT supported.</p>
+<h3><a name="XSLT_NAMESPACE" id="XSLT_NAMESPACE"></a>Macro: XSLT_NAMESPACE</h3><pre>#define XSLT_NAMESPACE</pre><p>The XSLT specification namespace.</p>
+<h3><a name="XSLT_PARSE_OPTIONS" id="XSLT_PARSE_OPTIONS"></a>Macro: XSLT_PARSE_OPTIONS</h3><pre>#define XSLT_PARSE_OPTIONS</pre><p>The set of options to pass to an xmlReadxxx when loading files for XSLT consumption.</p>
+<h3><a name="xsltCleanupGlobals" id="xsltCleanupGlobals"></a>Function: xsltCleanupGlobals</h3><pre class="programlisting">void xsltCleanupGlobals (void)<br />
+</pre><p>Unregister all global variables set up by the XSLT library</p>
+<h3><a name="xsltInit" id="xsltInit"></a>Function: xsltInit</h3><pre class="programlisting">void xsltInit (void)<br />
+</pre><p>Initializes the processor (e.g. registers built-in extensions, etc.)</p>
+<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>
diff --git a/libxslt/doc/html/libxslt-xsltInternals.html b/libxslt/doc/html/libxslt-xsltInternals.html
new file mode 100644
index 0000000..5cd9cc3
--- /dev/null
+++ b/libxslt/doc/html/libxslt-xsltInternals.html
@@ -0,0 +1,754 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module xsltInternals from libxslt</title></head><body bgcolor="#8b7765" text="#000000" link="#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
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltCompilerCtxt">xsltCompilerCtxt</a> * <a name="xsltCompilerCtxtPtr" id="xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltCompilerNodeInfo">xsltCompilerNodeInfo</a><br />struct _xsltCompilerNodeInfo
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfo">xsltCompilerNodeInfo</a> * <a name="xsltCompilerNodeInfoPtr" id="xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltDecimalFormat">xsltDecimalFormat</a><br />struct _xsltDecimalFormat
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltDecimalFormat">xsltDecimalFormat</a> * <a name="xsltDecimalFormatPtr" id="xsltDecimalFormatPtr">xsltDecimalFormatPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltDocument">xsltDocument</a><br />struct _xsltDocument
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltDocument">xsltDocument</a> * <a name="xsltDocumentPtr" id="xsltDocumentPtr">xsltDocumentPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltEffectiveNs">xsltEffectiveNs</a><br />struct _xsltEffectiveNs
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltEffectiveNs">xsltEffectiveNs</a> * <a name="xsltEffectiveNsPtr" id="xsltEffectiveNsPtr">xsltEffectiveNsPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltElemPreComp">xsltElemPreComp</a><br />struct _xsltElemPreComp
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltElemPreComp">xsltElemPreComp</a> * <a name="xsltElemPreCompPtr" id="xsltElemPreCompPtr">xsltElemPreCompPtr</a>
+</pre><pre class="programlisting">Enum <a href="#xsltErrorSeverityType">xsltErrorSeverityType</a>
+</pre><pre class="programlisting">Structure <a href="#xsltKeyDef">xsltKeyDef</a><br />struct _xsltKeyDef
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltKeyDef">xsltKeyDef</a> * <a name="xsltKeyDefPtr" id="xsltKeyDefPtr">xsltKeyDefPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltKeyTable">xsltKeyTable</a><br />struct _xsltKeyTable
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltKeyTable">xsltKeyTable</a> * <a name="xsltKeyTablePtr" id="xsltKeyTablePtr">xsltKeyTablePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltNsAlias">xsltNsAlias</a><br />struct _xsltNsAlias
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltNsAlias">xsltNsAlias</a> * <a name="xsltNsAliasPtr" id="xsltNsAliasPtr">xsltNsAliasPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltNsList">xsltNsList</a><br />struct _xsltNsList
+</pre><pre class="programlisting">Structure <a href="#xsltNsListContainer">xsltNsListContainer</a><br />struct _xsltNsListContainer
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltNsListContainer">xsltNsListContainer</a> * <a name="xsltNsListContainerPtr" id="xsltNsListContainerPtr">xsltNsListContainerPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltNsList">xsltNsList</a> * <a name="xsltNsListPtr" id="xsltNsListPtr">xsltNsListPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltNsMap">xsltNsMap</a><br />struct _xsltNsMap
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltNsMap">xsltNsMap</a> * <a name="xsltNsMapPtr" id="xsltNsMapPtr">xsltNsMapPtr</a>
+</pre><pre class="programlisting">Enum <a href="#xsltOutputType">xsltOutputType</a>
+</pre><pre class="programlisting">Structure <a href="#xsltPointerList">xsltPointerList</a><br />struct _xsltPointerList
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltPointerList">xsltPointerList</a> * <a name="xsltPointerListPtr" id="xsltPointerListPtr">xsltPointerListPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltPrincipalStylesheetData">xsltPrincipalStylesheetData</a><br />struct _xsltPrincipalStylesheetData
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltPrincipalStylesheetData">xsltPrincipalStylesheetData</a> * <a name="xsltPrincipalStylesheetDataPtr" id="xsltPrincipalStylesheetDataPtr">xsltPrincipalStylesheetDataPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltRuntimeExtra">xsltRuntimeExtra</a><br />struct _xsltRuntimeExtra
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltRuntimeExtra">xsltRuntimeExtra</a> * <a name="xsltRuntimeExtraPtr" id="xsltRuntimeExtraPtr">xsltRuntimeExtraPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStackElem">xsltStackElem</a><br />struct _xsltStackElem
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStackElem">xsltStackElem</a> * <a name="xsltStackElemPtr" id="xsltStackElemPtr">xsltStackElemPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a><br />struct _xsltStyleBasicEmptyItem
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a> * <a name="xsltStyleBasicEmptyItemPtr" id="xsltStyleBasicEmptyItemPtr">xsltStyleBasicEmptyItemPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleBasicExpressionItem">xsltStyleBasicExpressionItem</a><br />struct _xsltStyleBasicExpressionItem
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicExpressionItem">xsltStyleBasicExpressionItem</a> * <a name="xsltStyleBasicExpressionItemPtr" id="xsltStyleBasicExpressionItemPtr">xsltStyleBasicExpressionItemPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleBasicItemVariable">xsltStyleBasicItemVariable</a><br />struct _xsltStyleBasicItemVariable
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicItemVariable">xsltStyleBasicItemVariable</a> * <a name="xsltStyleBasicItemVariablePtr" id="xsltStyleBasicItemVariablePtr">xsltStyleBasicItemVariablePtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a> <a name="xsltStyleItemApplyImports" id="xsltStyleItemApplyImports">xsltStyleItemApplyImports</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemApplyImports">xsltStyleItemApplyImports</a> * <a name="xsltStyleItemApplyImportsPtr" id="xsltStyleItemApplyImportsPtr">xsltStyleItemApplyImportsPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemApplyTemplates">xsltStyleItemApplyTemplates</a><br />struct _xsltStyleItemApplyTemplates
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemApplyTemplates">xsltStyleItemApplyTemplates</a> * <a name="xsltStyleItemApplyTemplatesPtr" id="xsltStyleItemApplyTemplatesPtr">xsltStyleItemApplyTemplatesPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemAttribute">xsltStyleItemAttribute</a><br />struct _xsltStyleItemAttribute
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemAttribute">xsltStyleItemAttribute</a> * <a name="xsltStyleItemAttributePtr" id="xsltStyleItemAttributePtr">xsltStyleItemAttributePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemCallTemplate">xsltStyleItemCallTemplate</a><br />struct _xsltStyleItemCallTemplate
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemCallTemplate">xsltStyleItemCallTemplate</a> * <a name="xsltStyleItemCallTemplatePtr" id="xsltStyleItemCallTemplatePtr">xsltStyleItemCallTemplatePtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a> <a name="xsltStyleItemChoose" id="xsltStyleItemChoose">xsltStyleItemChoose</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemChoose">xsltStyleItemChoose</a> * <a name="xsltStyleItemChoosePtr" id="xsltStyleItemChoosePtr">xsltStyleItemChoosePtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a> <a name="xsltStyleItemComment" id="xsltStyleItemComment">xsltStyleItemComment</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemComment">xsltStyleItemComment</a> * <a name="xsltStyleItemCommentPtr" id="xsltStyleItemCommentPtr">xsltStyleItemCommentPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemCopy">xsltStyleItemCopy</a><br />struct _xsltStyleItemCopy
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicExpressionItem">xsltStyleBasicExpressionItem</a> <a name="xsltStyleItemCopyOf" id="xsltStyleItemCopyOf">xsltStyleItemCopyOf</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemCopyOf">xsltStyleItemCopyOf</a> * <a name="xsltStyleItemCopyOfPtr" id="xsltStyleItemCopyOfPtr">xsltStyleItemCopyOfPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemCopy">xsltStyleItemCopy</a> * <a name="xsltStyleItemCopyPtr" id="xsltStyleItemCopyPtr">xsltStyleItemCopyPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemDocument">xsltStyleItemDocument</a><br />struct _xsltStyleItemDocument
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemDocument">xsltStyleItemDocument</a> * <a name="xsltStyleItemDocumentPtr" id="xsltStyleItemDocumentPtr">xsltStyleItemDocumentPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemElement">xsltStyleItemElement</a><br />struct _xsltStyleItemElement
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemElement">xsltStyleItemElement</a> * <a name="xsltStyleItemElementPtr" id="xsltStyleItemElementPtr">xsltStyleItemElementPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemExtElement">xsltStyleItemExtElement</a><br />struct _xsltStyleItemExtElement
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemExtElement">xsltStyleItemExtElement</a> * <a name="xsltStyleItemExtElementPtr" id="xsltStyleItemExtElementPtr">xsltStyleItemExtElementPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a> <a name="xsltStyleItemFallback" id="xsltStyleItemFallback">xsltStyleItemFallback</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemFallback">xsltStyleItemFallback</a> * <a name="xsltStyleItemFallbackPtr" id="xsltStyleItemFallbackPtr">xsltStyleItemFallbackPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicExpressionItem">xsltStyleBasicExpressionItem</a> <a name="xsltStyleItemForEach" id="xsltStyleItemForEach">xsltStyleItemForEach</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemForEach">xsltStyleItemForEach</a> * <a name="xsltStyleItemForEachPtr" id="xsltStyleItemForEachPtr">xsltStyleItemForEachPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemIf">xsltStyleItemIf</a><br />struct _xsltStyleItemIf
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemIf">xsltStyleItemIf</a> * <a name="xsltStyleItemIfPtr" id="xsltStyleItemIfPtr">xsltStyleItemIfPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemInclude">xsltStyleItemInclude</a><br />struct _xsltStyleItemInclude
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemInclude">xsltStyleItemInclude</a> * <a name="xsltStyleItemIncludePtr" id="xsltStyleItemIncludePtr">xsltStyleItemIncludePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemLRElementInfo">xsltStyleItemLRElementInfo</a><br />struct _xsltStyleItemLRElementInfo
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemLRElementInfo">xsltStyleItemLRElementInfo</a> * <a name="xsltStyleItemLRElementInfoPtr" id="xsltStyleItemLRElementInfoPtr">xsltStyleItemLRElementInfoPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemMessage">xsltStyleItemMessage</a><br />struct _xsltStyleItemMessage
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemMessage">xsltStyleItemMessage</a> * <a name="xsltStyleItemMessagePtr" id="xsltStyleItemMessagePtr">xsltStyleItemMessagePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemNumber">xsltStyleItemNumber</a><br />struct _xsltStyleItemNumber
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemNumber">xsltStyleItemNumber</a> * <a name="xsltStyleItemNumberPtr" id="xsltStyleItemNumberPtr">xsltStyleItemNumberPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemOtherwise">xsltStyleItemOtherwise</a><br />struct _xsltStyleItemOtherwise
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemOtherwise">xsltStyleItemOtherwise</a> * <a name="xsltStyleItemOtherwisePtr" id="xsltStyleItemOtherwisePtr">xsltStyleItemOtherwisePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemPI">xsltStyleItemPI</a><br />struct _xsltStyleItemPI
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemPI">xsltStyleItemPI</a> * <a name="xsltStyleItemPIPtr" id="xsltStyleItemPIPtr">xsltStyleItemPIPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemParam">xsltStyleItemParam</a><br />struct _xsltStyleItemParam
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemParam">xsltStyleItemParam</a> * <a name="xsltStyleItemParamPtr" id="xsltStyleItemParamPtr">xsltStyleItemParamPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemSort">xsltStyleItemSort</a><br />struct _xsltStyleItemSort
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemSort">xsltStyleItemSort</a> * <a name="xsltStyleItemSortPtr" id="xsltStyleItemSortPtr">xsltStyleItemSortPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemText">xsltStyleItemText</a><br />struct _xsltStyleItemText
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemText">xsltStyleItemText</a> * <a name="xsltStyleItemTextPtr" id="xsltStyleItemTextPtr">xsltStyleItemTextPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemUknown">xsltStyleItemUknown</a><br />struct _xsltStyleItemUknown
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemUknown">xsltStyleItemUknown</a> * <a name="xsltStyleItemUknownPtr" id="xsltStyleItemUknownPtr">xsltStyleItemUknownPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemValueOf">xsltStyleItemValueOf</a><br />struct _xsltStyleItemValueOf
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemValueOf">xsltStyleItemValueOf</a> * <a name="xsltStyleItemValueOfPtr" id="xsltStyleItemValueOfPtr">xsltStyleItemValueOfPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicItemVariable">xsltStyleBasicItemVariable</a> <a name="xsltStyleItemVariable" id="xsltStyleItemVariable">xsltStyleItemVariable</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemVariable">xsltStyleItemVariable</a> * <a name="xsltStyleItemVariablePtr" id="xsltStyleItemVariablePtr">xsltStyleItemVariablePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStyleItemWhen">xsltStyleItemWhen</a><br />struct _xsltStyleItemWhen
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemWhen">xsltStyleItemWhen</a> * <a name="xsltStyleItemWhenPtr" id="xsltStyleItemWhenPtr">xsltStyleItemWhenPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleBasicItemVariable">xsltStyleBasicItemVariable</a> <a name="xsltStyleItemWithParam" id="xsltStyleItemWithParam">xsltStyleItemWithParam</a>
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStyleItemWithParam">xsltStyleItemWithParam</a> * <a name="xsltStyleItemWithParamPtr" id="xsltStyleItemWithParamPtr">xsltStyleItemWithParamPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStylePreComp">xsltStylePreComp</a><br />struct _xsltStylePreComp
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStylePreComp">xsltStylePreComp</a> * <a name="xsltStylePreCompPtr" id="xsltStylePreCompPtr">xsltStylePreCompPtr</a>
+</pre><pre class="programlisting">Enum <a href="#xsltStyleType">xsltStyleType</a>
+</pre><pre class="programlisting">Structure <a href="#xsltStylesheet">xsltStylesheet</a><br />struct _xsltStylesheet
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltStylesheet">xsltStylesheet</a> * <a name="xsltStylesheetPtr" id="xsltStylesheetPtr">xsltStylesheetPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltTemplate">xsltTemplate</a><br />struct _xsltTemplate
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltTemplate">xsltTemplate</a> * <a name="xsltTemplatePtr" id="xsltTemplatePtr">xsltTemplatePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltTransformCache">xsltTransformCache</a><br />struct _xsltTransformCache
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltTransformCache">xsltTransformCache</a> * <a name="xsltTransformCachePtr" id="xsltTransformCachePtr">xsltTransformCachePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xsltTransformContext">xsltTransformContext</a><br />struct _xsltTransformContext
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltTransformContext">xsltTransformContext</a> * <a name="xsltTransformContextPtr" id="xsltTransformContextPtr">xsltTransformContextPtr</a>
+</pre><pre class="programlisting">Enum <a href="#xsltTransformState">xsltTransformState</a>
+</pre><pre class="programlisting">Structure <a href="#xsltVarInfo">xsltVarInfo</a><br />struct _xsltVarInfo
+</pre><pre class="programlisting">Typedef <a href="libxslt-xsltInternals.html#xsltVarInfo">xsltVarInfo</a> * <a name="xsltVarInfoPtr" id="xsltVarInfoPtr">xsltVarInfoPtr</a>
+</pre><pre class="programlisting">int <a href="#xsltAllocateExtra">xsltAllocateExtra</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">int <a href="#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void <a href="#xsltCompileAttr">xsltCompileAttr</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlAttrPtr attr)</pre>
+<pre class="programlisting">xmlDocPtr <a href="#xsltCreateRVT">xsltCreateRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a> <a href="#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlChar * name)</pre>
+<pre class="programlisting">Function type: <a href="#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a>
+void <a href="#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a> (<a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp)
+</pre>
+<pre class="programlisting">xmlChar * <a href="#xsltEvalAVT">xsltEvalAVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> void * avt, <br /> xmlNodePtr node)</pre>
+<pre class="programlisting">int <a href="#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">int <a href="#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlXPathObjectPtr obj)</pre>
+<pre class="programlisting">xmlXPathError <a href="#xsltFormatNumberConversion">xsltFormatNumberConversion</a> (<a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a> self, <br /> xmlChar * format, <br /> double number, <br /> xmlChar ** result)</pre>
+<pre class="programlisting">void <a href="#xsltFreeAVTList">xsltFreeAVTList</a> (void * avt)</pre>
+<pre class="programlisting">void <a href="#xsltFreeRVTs">xsltFreeRVTs</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void <a href="#xsltFreeStackElemList">xsltFreeStackElemList</a> (<a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> elem)</pre>
+<pre class="programlisting">void <a href="#xsltFreeStylesheet">xsltFreeStylesheet</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">int <a href="#xsltInitAllDocKeys">xsltInitAllDocKeys</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<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>
+<pre class="programlisting">int <a href="#xsltIsBlank">xsltIsBlank</a> (xmlChar * str)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a> (xmlDocPtr doc)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltNewStylesheet">xsltNewStylesheet</a> (void)</pre>
+<pre class="programlisting">void <a href="#xsltNumberFormat">xsltNumberFormat</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-numbersInternals.html#xsltNumberDataPtr">xsltNumberDataPtr</a> data, <br /> xmlNodePtr node)</pre>
+<pre class="programlisting">int <a href="#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a> (<a href="libxslt-xsltInternals.html#xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a> cctxt, <br /> xmlNodePtr elem)</pre>
+<pre class="programlisting">void <a href="#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a> (<a href="libxslt-xsltInternals.html#xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a> cctxt, <br /> xmlNodePtr cur)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a> (xmlDocPtr doc)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltParseStylesheetFile">xsltParseStylesheetFile</a> (const xmlChar * filename)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a> (xmlDocPtr doc, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> parentStyle)</pre>
+<pre class="programlisting">void <a href="#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr cur)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> <a href="#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> ret, <br /> xmlDocPtr doc)</pre>
+<pre class="programlisting">void <a href="#xsltParseTemplateContent">xsltParseTemplateContent</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr templ)</pre>
+<pre class="programlisting">int <a href="#xsltPointerListAddSize">xsltPointerListAddSize</a> (<a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> list, <br /> void * item, <br /> int initialSize)</pre>
+<pre class="programlisting">void <a href="#xsltPointerListClear">xsltPointerListClear</a> (<a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> list)</pre>
+<pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> <a href="#xsltPointerListCreate">xsltPointerListCreate</a> (int initialSize)</pre>
+<pre class="programlisting">void <a href="#xsltPointerListFree">xsltPointerListFree</a> (<a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> list)</pre>
+<pre class="programlisting">int <a href="#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr RVT)</pre>
+<pre class="programlisting">int <a href="#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr RVT)</pre>
+<pre class="programlisting">int <a href="#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr RVT)</pre>
+<pre class="programlisting">void <a href="#xsltReleaseRVT">xsltReleaseRVT</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlDocPtr RVT)</pre>
+<pre class="programlisting">int <a href="#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a> (<a href="libxslt-xsltInternals.html#xsltNsMapPtr">xsltNsMapPtr</a> ns, <br /> xmlDocPtr doc)</pre>
+<pre class="programlisting">Function type: <a href="#xsltSortFunc">xsltSortFunc</a>
+void <a href="#xsltSortFunc">xsltSortFunc</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr * sorts, <br /> int nbsorts)
+</pre>
+<pre class="programlisting">Function type: <a href="#xsltTransformFunction">xsltTransformFunction</a>
+void <a href="#xsltTransformFunction">xsltTransformFunction</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp)
+</pre>
+<pre class="programlisting">void <a href="#xsltUninit">xsltUninit</a> (void)</pre>
+<h2>Description</h2>
+<h3><a name="CHECK_STOPPED" id="CHECK_STOPPED"></a>Macro: CHECK_STOPPED</h3><pre>#define CHECK_STOPPED</pre><p>Macro to check if the XSLT processing should be stopped. Will return from the function.</p>
+<h3><a name="CHECK_STOPPED0" id="CHECK_STOPPED0"></a>Macro: CHECK_STOPPED0</h3><pre>#define CHECK_STOPPED0</pre><p>Macro to check if the XSLT processing should be stopped. Will return from the function with a 0 value.</p>
+<h3><a name="CHECK_STOPPEDE" id="CHECK_STOPPEDE"></a>Macro: CHECK_STOPPEDE</h3><pre>#define CHECK_STOPPEDE</pre><p>Macro to check if the XSLT processing should be stopped. Will goto the error: label.</p>
+<h3><a name="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>
+<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>
+<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 **)(&amp;fptr)) This macro violated ISO C aliasing rules (gcc4 on s390 broke) so it is disabled now</p>
+<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>
+<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 &lt;xsl:if test="/foo/bar"&gt;</p>
+<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>
+<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>
+<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>
+<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>
+<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>
+<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>
+<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>
+<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>
+<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>
+<h3><a name="XSLT_MAX_SORT" id="XSLT_MAX_SORT"></a>Macro: XSLT_MAX_SORT</h3><pre>#define XSLT_MAX_SORT</pre><p>Max number of specified xsl:sort on an element.</p>
+<h3><a name="XSLT_PAT_NO_PRIORITY" id="XSLT_PAT_NO_PRIORITY"></a>Macro: XSLT_PAT_NO_PRIORITY</h3><pre>#define XSLT_PAT_NO_PRIORITY</pre><p>Specific value for pattern without priority expressed.</p>
+<h3><a name="XSLT_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>
+<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>
+<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>
+<h3><a name="XSLT_RUNTIME_EXTRA" id="XSLT_RUNTIME_EXTRA"></a>Macro: XSLT_RUNTIME_EXTRA</h3><pre>#define XSLT_RUNTIME_EXTRA</pre><p>Macro used to define extra information stored in the context</p>
+<h3><a name="XSLT_RUNTIME_EXTRA_FREE" id="XSLT_RUNTIME_EXTRA_FREE"></a>Macro: XSLT_RUNTIME_EXTRA_FREE</h3><pre>#define XSLT_RUNTIME_EXTRA_FREE</pre><p>Macro used to free extra information stored in the context</p>
+<h3><a name="XSLT_RUNTIME_EXTRA_LST" id="XSLT_RUNTIME_EXTRA_LST"></a>Macro: XSLT_RUNTIME_EXTRA_LST</h3><pre>#define XSLT_RUNTIME_EXTRA_LST</pre><p>Macro used to access extra information stored in the context</p>
+<h3><a name="xsltCompilerCtxt" id="xsltCompilerCtxt">Structure xsltCompilerCtxt</a></h3><pre class="programlisting">Structure xsltCompilerCtxt<br />struct _xsltCompilerCtxt {
+ void * errorCtxt : * used for error/warning reports; e.g. X
+ <a href="libxslt-xsltInternals.html#xsltErrorSeverityType">xsltErrorSeverityType</a> errSeverity
+ int warnings : TODO: number of warnings found at compi
+ int errors : TODO: number of errors found at compila
+ xmlDictPtr dict
+ <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style
+ int simplified : whether this is a simplified stylesheet
+ int depth : Current depth of processing
+ <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> inode
+ <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> inodeList
+ <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> inodeLast
+ <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> tmpList : * The XSLT version as specified by the s
+ int isInclude
+ int hasForwardsCompat : whether forwards-compatible mode was us
+ int maxNodeInfos : TEMP TODO: just for the interest
+ int maxLREs : * In order to keep the old behaviour, ap
+ int strict
+ <a href="libxslt-xsltInternals.html#xsltPrincipalStylesheetDataPtr">xsltPrincipalStylesheetDataPtr</a> psData
+ xmlXPathContextPtr xpathCtxt
+ <a href="libxslt-xsltInternals.html#xsltStyleItemUknownPtr">xsltStyleItemUknownPtr</a> unknownItem
+ int hasNsAliases : Indicator if there was an xsl:namespace
+ <a href="libxslt-xsltInternals.html#xsltNsAliasPtr">xsltNsAliasPtr</a> nsAliases
+ <a href="libxslt-xsltInternals.html#xsltVarInfoPtr">xsltVarInfoPtr</a> ivars : Storage of local in-scope variables/par
+ <a href="libxslt-xsltInternals.html#xsltVarInfoPtr">xsltVarInfoPtr</a> ivar : topmost local variable/param.
+}</pre><h3><a name="xsltCompilerNodeInfo" id="xsltCompilerNodeInfo">Structure xsltCompilerNodeInfo</a></h3><pre class="programlisting">Structure xsltCompilerNodeInfo<br />struct _xsltCompilerNodeInfo {
+ <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> next
+ <a href="libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a> prev
+ xmlNodePtr node
+ int depth
+ <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ : The owning template
+ int category : XSLT element, LR-element or extension e
+ <a href="libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a> type
+ <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> item : The compiled information The current in
+ <a href="libxslt-xsltInternals.html#xsltNsListContainerPtr">xsltNsListContainerPtr</a> inScopeNs : The current excluded result namespaces
+ <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> exclResultNs : The current extension instruction names
+ <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> extElemNs : The current info for literal result ele
+ <a href="libxslt-xsltInternals.html#xsltStyleItemLRElementInfoPtr">xsltStyleItemLRElementInfoPtr</a> litResElemInfo : * Set to 1 if in-scope namespaces change
+ int nsChanged
+ int preserveWhitespace
+ int stripWhitespace
+ int isRoot : whether this is the stylesheet's root n
+ int forwardsCompat : whether forwards-compatible mode is ena
+ int extContentHandled : the type of the current child
+ <a href="libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a> curChildType
+}</pre><h3><a name="xsltDecimalFormat" id="xsltDecimalFormat">Structure xsltDecimalFormat</a></h3><pre class="programlisting">Structure xsltDecimalFormat<br />struct _xsltDecimalFormat {
+ struct _xsltDecimalFormat * next : chained list
+ xmlChar * name : Used for interpretation of pattern
+ xmlChar * digit
+ xmlChar * patternSeparator : May appear in result
+ xmlChar * minusSign
+ xmlChar * infinity
+ xmlChar * noNumber : Not-a-number Used for interpretation of
+ xmlChar * decimalPoint
+ xmlChar * grouping
+ xmlChar * percent
+ xmlChar * permille
+ xmlChar * zeroDigit
+}</pre><h3><a name="xsltDocument" id="xsltDocument">Structure xsltDocument</a></h3><pre class="programlisting">Structure xsltDocument<br />struct _xsltDocument {
+ struct _xsltDocument * next : documents are kept in a chained list
+ int main : is this the main document
+ xmlDocPtr doc : the parsed document
+ void * keys : key tables storage
+ struct _xsltDocument * includes : subsidiary includes
+ int preproc : pre-processing already done
+ int nbKeysComputed
+}</pre><h3><a name="xsltEffectiveNs" id="xsltEffectiveNs">Structure xsltEffectiveNs</a></h3><pre class="programlisting">Structure xsltEffectiveNs<br />struct _xsltEffectiveNs {
+ <a href="libxslt-xsltInternals.html#xsltEffectiveNsPtr">xsltEffectiveNsPtr</a> nextInStore : storage next
+ <a href="libxslt-xsltInternals.html#xsltEffectiveNsPtr">xsltEffectiveNsPtr</a> next : next item in the list
+ const xmlChar * prefix
+ const xmlChar * nsName : * Indicates if eclared on the literal re
+ int holdByElem
+}</pre><h3><a name="xsltElemPreComp" id="xsltElemPreComp">Structure xsltElemPreComp</a></h3><pre class="programlisting">Structure xsltElemPreComp<br />struct _xsltElemPreComp {
+ <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> next : next item in the global chained list ho
+ <a href="libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a> type : type of the element
+ <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> func : handling function
+ xmlNodePtr inst : the node in the stylesheet's tree corre
+ <a href="libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a> free : the deallocator
+}</pre><h3>Enum <a name="xsltErrorSeverityType" id="xsltErrorSeverityType">xsltErrorSeverityType</a></h3><pre class="programlisting">Enum xsltErrorSeverityType {
+ <a name="XSLT_ERROR_SEVERITY_ERROR" id="XSLT_ERROR_SEVERITY_ERROR">XSLT_ERROR_SEVERITY_ERROR</a> = 0
+ <a name="XSLT_ERROR_SEVERITY_WARNING" id="XSLT_ERROR_SEVERITY_WARNING">XSLT_ERROR_SEVERITY_WARNING</a> = 1
+}
+</pre><h3><a name="xsltKeyDef" id="xsltKeyDef">Structure xsltKeyDef</a></h3><pre class="programlisting">Structure xsltKeyDef<br />struct _xsltKeyDef {
+ struct _xsltKeyDef * next
+ xmlNodePtr inst
+ xmlChar * name
+ xmlChar * nameURI
+ xmlChar * match
+ xmlChar * use
+ xmlXPathCompExprPtr comp
+ xmlXPathCompExprPtr usecomp
+ xmlNsPtr * nsList : the namespaces in scope
+ int nsNr : the number of namespaces in scope
+}</pre><h3><a name="xsltKeyTable" id="xsltKeyTable">Structure xsltKeyTable</a></h3><pre class="programlisting">Structure xsltKeyTable<br />struct _xsltKeyTable {
+ struct _xsltKeyTable * next
+ xmlChar * name
+ xmlChar * nameURI
+ xmlHashTablePtr keys
+}</pre><h3><a name="xsltNsAlias" id="xsltNsAlias">Structure xsltNsAlias</a></h3><pre class="programlisting">Structure xsltNsAlias<br />struct _xsltNsAlias {
+ <a href="libxslt-xsltInternals.html#xsltNsAliasPtr">xsltNsAliasPtr</a> next : next in the list
+ xmlNsPtr literalNs
+ xmlNsPtr targetNs
+ xmlDocPtr docOfTargetNs
+}</pre><h3><a name="xsltNsList" id="xsltNsList">Structure xsltNsList</a></h3><pre class="programlisting">Structure xsltNsList<br />struct _xsltNsList {
+ <a href="libxslt-xsltInternals.html#xsltNsListPtr">xsltNsListPtr</a> next : next in the list
+ xmlNsPtr ns
+}</pre><h3><a name="xsltNsListContainer" id="xsltNsListContainer">Structure xsltNsListContainer</a></h3><pre class="programlisting">Structure xsltNsListContainer<br />struct _xsltNsListContainer {
+ xmlNsPtr * list
+ int totalNumber
+ int xpathNumber
+}</pre><h3><a name="xsltNsMap" id="xsltNsMap">Structure xsltNsMap</a></h3><pre class="programlisting">Structure xsltNsMap<br />struct _xsltNsMap {
+ <a href="libxslt-xsltInternals.html#xsltNsMapPtr">xsltNsMapPtr</a> next : next in the list
+ xmlDocPtr doc
+ xmlNodePtr elem : the element holding the ns-decl
+ xmlNsPtr ns : the xmlNs structure holding the XML nam
+ const xmlChar * origNsName : the original XML namespace name
+ const xmlChar * newNsName : the mapped XML namespace name
+}</pre><h3>Enum <a name="xsltOutputType" id="xsltOutputType">xsltOutputType</a></h3><pre class="programlisting">Enum xsltOutputType {
+ <a name="XSLT_OUTPUT_XML" id="XSLT_OUTPUT_XML">XSLT_OUTPUT_XML</a> = 0
+ <a name="XSLT_OUTPUT_HTML" id="XSLT_OUTPUT_HTML">XSLT_OUTPUT_HTML</a> = 1
+ <a name="XSLT_OUTPUT_TEXT" id="XSLT_OUTPUT_TEXT">XSLT_OUTPUT_TEXT</a> = 2
+}
+</pre><h3><a name="xsltPointerList" id="xsltPointerList">Structure xsltPointerList</a></h3><pre class="programlisting">Structure xsltPointerList<br />struct _xsltPointerList {
+ void ** items
+ int number
+ int size
+}</pre><h3><a name="xsltPrincipalStylesheetData" id="xsltPrincipalStylesheetData">Structure xsltPrincipalStylesheetData</a></h3><pre class="programlisting">Structure xsltPrincipalStylesheetData<br />struct _xsltPrincipalStylesheetData {
+ xmlDictPtr namespaceDict : * Global list of in-scope namespaces. *
+ <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> inScopeNamespaces : * Global list of information for [xsl:]e
+ <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> exclResultNamespaces : * Global list of information for [xsl:]e
+ <a href="libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a> extElemNamespaces
+ <a href="libxslt-xsltInternals.html#xsltEffectiveNsPtr">xsltEffectiveNsPtr</a> effectiveNs : * Namespace name map to get rid of strin
+ <a href="libxslt-xsltInternals.html#xsltNsMapPtr">xsltNsMapPtr</a> nsMap
+}</pre><h3><a name="xsltRuntimeExtra" id="xsltRuntimeExtra">Structure xsltRuntimeExtra</a></h3><pre class="programlisting">Structure xsltRuntimeExtra<br />struct _xsltRuntimeExtra {
+ void * info : pointer to the extra data
+ xmlFreeFunc deallocate : pointer to the deallocation routine
+}</pre><h3><a name="xsltStackElem" id="xsltStackElem">Structure xsltStackElem</a></h3><pre class="programlisting">Structure xsltStackElem<br />struct _xsltStackElem {
+ struct _xsltStackElem * next : chained list
+ <a href="libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a> comp : the compiled form
+ int computed : was the evaluation done
+ const xmlChar * name : the local part of the name QName
+ const xmlChar * nameURI : the URI part of the name QName
+ const xmlChar * select : the eval string
+ xmlNodePtr tree : the sequence constructor if no eval str
+ xmlXPathObjectPtr value : The value if computed
+ xmlDocPtr fragment : The Result Tree Fragments (needed for X
+ int level : the depth in the tree; -1 if persistent
+ <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> context : The transformation context; needed to c
+ int flags
+}</pre><h3><a name="xsltStyleBasicEmptyItem" id="xsltStyleBasicEmptyItem">Structure xsltStyleBasicEmptyItem</a></h3><pre class="programlisting">Structure xsltStyleBasicEmptyItem<br />struct _xsltStyleBasicEmptyItem {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xsltStyleBasicExpressionItem" id="xsltStyleBasicExpressionItem">Structure xsltStyleBasicExpressionItem</a></h3><pre class="programlisting">Structure xsltStyleBasicExpressionItem<br />struct _xsltStyleBasicExpressionItem {
+ const xmlChar * select : TODO: Change this to "expression".
+ xmlXPathCompExprPtr comp : TODO: Change this to compExpr.
+}</pre><h3><a name="xsltStyleBasicItemVariable" id="xsltStyleBasicItemVariable">Structure xsltStyleBasicItemVariable</a></h3><pre class="programlisting">Structure xsltStyleBasicItemVariable<br />struct _xsltStyleBasicItemVariable {
+ const xmlChar * select
+ xmlXPathCompExprPtr comp
+ const xmlChar * name
+ int has_name
+ const xmlChar * ns
+ int has_ns
+}</pre><h3><a name="xsltStyleItemApplyTemplates" id="xsltStyleItemApplyTemplates">Structure xsltStyleItemApplyTemplates</a></h3><pre class="programlisting">Structure xsltStyleItemApplyTemplates<br />struct _xsltStyleItemApplyTemplates {
+ const xmlChar * mode : apply-templates
+ const xmlChar * modeURI : apply-templates
+ const xmlChar * select : sort, copy-of, value-of, apply-template
+ xmlXPathCompExprPtr comp : a precompiled XPath expression TODO: wi
+}</pre><h3><a name="xsltStyleItemAttribute" id="xsltStyleItemAttribute">Structure xsltStyleItemAttribute</a></h3><pre class="programlisting">Structure xsltStyleItemAttribute<br />struct _xsltStyleItemAttribute {
+ const xmlChar * name
+ int has_name
+ const xmlChar * ns
+ const xmlChar * nsPrefix
+ int has_ns
+}</pre><h3><a name="xsltStyleItemCallTemplate" id="xsltStyleItemCallTemplate">Structure xsltStyleItemCallTemplate</a></h3><pre class="programlisting">Structure xsltStyleItemCallTemplate<br />struct _xsltStyleItemCallTemplate {
+ <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ : call-template
+ const xmlChar * name : element, attribute, pi
+ int has_name : element, attribute, pi
+ const xmlChar * ns : element
+ int has_ns : element TODO: with-params
+}</pre><h3><a name="xsltStyleItemCopy" id="xsltStyleItemCopy">Structure xsltStyleItemCopy</a></h3><pre class="programlisting">Structure xsltStyleItemCopy<br />struct _xsltStyleItemCopy {
+ const xmlChar * use : copy, element
+ int has_use : copy, element
+}</pre><h3><a name="xsltStyleItemDocument" id="xsltStyleItemDocument">Structure xsltStyleItemDocument</a></h3><pre class="programlisting">Structure xsltStyleItemDocument<br />struct _xsltStyleItemDocument {
+ int ver11 : assigned: in xsltDocumentComp; read: no
+ const xmlChar * filename : document URL
+ int has_filename
+}</pre><h3><a name="xsltStyleItemElement" id="xsltStyleItemElement">Structure xsltStyleItemElement</a></h3><pre class="programlisting">Structure xsltStyleItemElement<br />struct _xsltStyleItemElement {
+ const xmlChar * use
+ int has_use
+ const xmlChar * name
+ int has_name
+ const xmlChar * ns
+ const xmlChar * nsPrefix
+ int has_ns
+}</pre><h3><a name="xsltStyleItemExtElement" id="xsltStyleItemExtElement">Structure xsltStyleItemExtElement</a></h3><pre class="programlisting">Structure xsltStyleItemExtElement<br />struct _xsltStyleItemExtElement {
+ <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> item
+}</pre><h3><a name="xsltStyleItemIf" id="xsltStyleItemIf">Structure xsltStyleItemIf</a></h3><pre class="programlisting">Structure xsltStyleItemIf<br />struct _xsltStyleItemIf {
+ const xmlChar * test : if
+ xmlXPathCompExprPtr comp : a precompiled XPath expression
+}</pre><h3><a name="xsltStyleItemInclude" id="xsltStyleItemInclude">Structure xsltStyleItemInclude</a></h3><pre class="programlisting">Structure xsltStyleItemInclude<br />struct _xsltStyleItemInclude {
+ <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> include
+}</pre><h3><a name="xsltStyleItemLRElementInfo" id="xsltStyleItemLRElementInfo">Structure xsltStyleItemLRElementInfo</a></h3><pre class="programlisting">Structure xsltStyleItemLRElementInfo<br />struct _xsltStyleItemLRElementInfo {
+ <a href="libxslt-xsltInternals.html#xsltEffectiveNsPtr">xsltEffectiveNsPtr</a> effectiveNs
+}</pre><h3><a name="xsltStyleItemMessage" id="xsltStyleItemMessage">Structure xsltStyleItemMessage</a></h3><pre class="programlisting">Structure xsltStyleItemMessage<br />struct _xsltStyleItemMessage {
+ int terminate
+}</pre><h3><a name="xsltStyleItemNumber" id="xsltStyleItemNumber">Structure xsltStyleItemNumber</a></h3><pre class="programlisting">Structure xsltStyleItemNumber<br />struct _xsltStyleItemNumber {
+ <a href="libxslt-numbersInternals.html#xsltNumberData">xsltNumberData</a> numdata : number
+}</pre><h3><a name="xsltStyleItemOtherwise" id="xsltStyleItemOtherwise">Structure xsltStyleItemOtherwise</a></h3><pre class="programlisting">Structure xsltStyleItemOtherwise<br />struct _xsltStyleItemOtherwise {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xsltStyleItemPI" id="xsltStyleItemPI">Structure xsltStyleItemPI</a></h3><pre class="programlisting">Structure xsltStyleItemPI<br />struct _xsltStyleItemPI {
+ const xmlChar * name
+ int has_name
+}</pre><h3><a name="xsltStyleItemParam" id="xsltStyleItemParam">Structure xsltStyleItemParam</a></h3><pre class="programlisting">Structure xsltStyleItemParam<br />struct _xsltStyleItemParam {
+ const xmlChar * select
+ xmlXPathCompExprPtr comp
+ const xmlChar * name
+ int has_name
+ const xmlChar * ns
+ int has_ns
+}</pre><h3><a name="xsltStyleItemSort" id="xsltStyleItemSort">Structure xsltStyleItemSort</a></h3><pre class="programlisting">Structure xsltStyleItemSort<br />struct _xsltStyleItemSort {
+ const xmlChar * stype : sort
+ int has_stype : sort
+ int number : sort
+ const xmlChar * order : sort
+ int has_order : sort
+ int descending : sort
+ const xmlChar * lang : sort
+ int has_lang : sort
+ <a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> locale : sort
+ const xmlChar * case_order : sort
+ int lower_first : sort
+ const xmlChar * use
+ int has_use
+ const xmlChar * select : sort, copy-of, value-of, apply-template
+ xmlXPathCompExprPtr comp : a precompiled XPath expression
+}</pre><h3><a name="xsltStyleItemText" id="xsltStyleItemText">Structure xsltStyleItemText</a></h3><pre class="programlisting">Structure xsltStyleItemText<br />struct _xsltStyleItemText {
+ int noescape : text
+}</pre><h3><a name="xsltStyleItemUknown" id="xsltStyleItemUknown">Structure xsltStyleItemUknown</a></h3><pre class="programlisting">Structure xsltStyleItemUknown<br />struct _xsltStyleItemUknown {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xsltStyleItemValueOf" id="xsltStyleItemValueOf">Structure xsltStyleItemValueOf</a></h3><pre class="programlisting">Structure xsltStyleItemValueOf<br />struct _xsltStyleItemValueOf {
+ const xmlChar * select
+ xmlXPathCompExprPtr comp : a precompiled XPath expression
+ int noescape
+}</pre><h3><a name="xsltStyleItemWhen" id="xsltStyleItemWhen">Structure xsltStyleItemWhen</a></h3><pre class="programlisting">Structure xsltStyleItemWhen<br />struct _xsltStyleItemWhen {
+ const xmlChar * test
+ xmlXPathCompExprPtr comp
+}</pre><h3><a name="xsltStylePreComp" id="xsltStylePreComp">Structure xsltStylePreComp</a></h3><pre class="programlisting">Structure xsltStylePreComp<br />struct _xsltStylePreComp {
+ <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> next : chained list
+ <a href="libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a> type : type of the element
+ <a href="libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a> func : handling function
+ xmlNodePtr inst : * Pre computed values. *
+ const xmlChar * stype : sort
+ int has_stype : sort
+ int number : sort
+ const xmlChar * order : sort
+ int has_order : sort
+ int descending : sort
+ const xmlChar * lang : sort
+ int has_lang : sort
+ <a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> locale : sort
+ const xmlChar * case_order : sort
+ int lower_first : sort
+ const xmlChar * use : copy, element
+ int has_use : copy, element
+ int noescape : text
+ const xmlChar * name : element, attribute, pi
+ int has_name : element, attribute, pi
+ const xmlChar * ns : element
+ int has_ns : element
+ const xmlChar * mode : apply-templates
+ const xmlChar * modeURI : apply-templates
+ const xmlChar * test : if
+ <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ : call-template
+ const xmlChar * select : sort, copy-of, value-of, apply-template
+ int ver11 : document
+ const xmlChar * filename : document URL
+ int has_filename : document
+ <a href="libxslt-numbersInternals.html#xsltNumberData">xsltNumberData</a> numdata : number
+ xmlXPathCompExprPtr comp : a precompiled XPath expression
+ xmlNsPtr * nsList : the namespaces in scope
+ int nsNr : the number of namespaces in scope
+}</pre><h3>Enum <a name="xsltStyleType" id="xsltStyleType">xsltStyleType</a></h3><pre class="programlisting">Enum xsltStyleType {
+ <a name="XSLT_FUNC_COPY" id="XSLT_FUNC_COPY">XSLT_FUNC_COPY</a> = 1
+ <a name="XSLT_FUNC_SORT" id="XSLT_FUNC_SORT">XSLT_FUNC_SORT</a> = 2
+ <a name="XSLT_FUNC_TEXT" id="XSLT_FUNC_TEXT">XSLT_FUNC_TEXT</a> = 3
+ <a name="XSLT_FUNC_ELEMENT" id="XSLT_FUNC_ELEMENT">XSLT_FUNC_ELEMENT</a> = 4
+ <a name="XSLT_FUNC_ATTRIBUTE" id="XSLT_FUNC_ATTRIBUTE">XSLT_FUNC_ATTRIBUTE</a> = 5
+ <a name="XSLT_FUNC_COMMENT" id="XSLT_FUNC_COMMENT">XSLT_FUNC_COMMENT</a> = 6
+ <a name="XSLT_FUNC_PI" id="XSLT_FUNC_PI">XSLT_FUNC_PI</a> = 7
+ <a name="XSLT_FUNC_COPYOF" id="XSLT_FUNC_COPYOF">XSLT_FUNC_COPYOF</a> = 8
+ <a name="XSLT_FUNC_VALUEOF" id="XSLT_FUNC_VALUEOF">XSLT_FUNC_VALUEOF</a> = 9
+ <a name="XSLT_FUNC_NUMBER" id="XSLT_FUNC_NUMBER">XSLT_FUNC_NUMBER</a> = 10
+ <a name="XSLT_FUNC_APPLYIMPORTS" id="XSLT_FUNC_APPLYIMPORTS">XSLT_FUNC_APPLYIMPORTS</a> = 11
+ <a name="XSLT_FUNC_CALLTEMPLATE" id="XSLT_FUNC_CALLTEMPLATE">XSLT_FUNC_CALLTEMPLATE</a> = 12
+ <a name="XSLT_FUNC_APPLYTEMPLATES" id="XSLT_FUNC_APPLYTEMPLATES">XSLT_FUNC_APPLYTEMPLATES</a> = 13
+ <a name="XSLT_FUNC_CHOOSE" id="XSLT_FUNC_CHOOSE">XSLT_FUNC_CHOOSE</a> = 14
+ <a name="XSLT_FUNC_IF" id="XSLT_FUNC_IF">XSLT_FUNC_IF</a> = 15
+ <a name="XSLT_FUNC_FOREACH" id="XSLT_FUNC_FOREACH">XSLT_FUNC_FOREACH</a> = 16
+ <a name="XSLT_FUNC_DOCUMENT" id="XSLT_FUNC_DOCUMENT">XSLT_FUNC_DOCUMENT</a> = 17
+ <a name="XSLT_FUNC_WITHPARAM" id="XSLT_FUNC_WITHPARAM">XSLT_FUNC_WITHPARAM</a> = 18
+ <a name="XSLT_FUNC_PARAM" id="XSLT_FUNC_PARAM">XSLT_FUNC_PARAM</a> = 19
+ <a name="XSLT_FUNC_VARIABLE" id="XSLT_FUNC_VARIABLE">XSLT_FUNC_VARIABLE</a> = 20
+ <a name="XSLT_FUNC_WHEN" id="XSLT_FUNC_WHEN">XSLT_FUNC_WHEN</a> = 21
+ <a name="XSLT_FUNC_EXTENSION" id="XSLT_FUNC_EXTENSION">XSLT_FUNC_EXTENSION</a> = 22
+ <a name="XSLT_FUNC_OTHERWISE" id="XSLT_FUNC_OTHERWISE">XSLT_FUNC_OTHERWISE</a> = 23
+ <a name="XSLT_FUNC_FALLBACK" id="XSLT_FUNC_FALLBACK">XSLT_FUNC_FALLBACK</a> = 24
+ <a name="XSLT_FUNC_MESSAGE" id="XSLT_FUNC_MESSAGE">XSLT_FUNC_MESSAGE</a> = 25
+ <a name="XSLT_FUNC_INCLUDE" id="XSLT_FUNC_INCLUDE">XSLT_FUNC_INCLUDE</a> = 26
+ <a name="XSLT_FUNC_ATTRSET" id="XSLT_FUNC_ATTRSET">XSLT_FUNC_ATTRSET</a> = 27
+ <a name="XSLT_FUNC_LITERAL_RESULT_ELEMENT" id="XSLT_FUNC_LITERAL_RESULT_ELEMENT">XSLT_FUNC_LITERAL_RESULT_ELEMENT</a> = 28
+ <a name="XSLT_FUNC_UNKOWN_FORWARDS_COMPAT" id="XSLT_FUNC_UNKOWN_FORWARDS_COMPAT">XSLT_FUNC_UNKOWN_FORWARDS_COMPAT</a> = 29
+}
+</pre><h3><a name="xsltStylesheet" id="xsltStylesheet">Structure xsltStylesheet</a></h3><pre class="programlisting">Structure xsltStylesheet<br />struct _xsltStylesheet {
+ struct _xsltStylesheet * parent
+ struct _xsltStylesheet * next
+ struct _xsltStylesheet * imports
+ <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> docList : * General data on the style sheet docume
+ xmlDocPtr doc : the parsed XML stylesheet
+ xmlHashTablePtr stripSpaces : the hash table of the strip-space and p
+ int stripAll : strip-space * (1) preserve-space * (-1)
+ xmlHashTablePtr cdataSection : * Global variable or parameters. *
+ <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> variables : * Template descriptions. *
+ <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templates : the ordered list of templates
+ void * templatesHash : hash table or wherever compiled templat
+ void * rootMatch : template based on /
+ void * keyMatch : template based on key()
+ void * elemMatch : template based on *
+ void * attrMatch : template based on @*
+ void * parentMatch : template based on ..
+ void * textMatch : template based on text()
+ void * piMatch : template based on processing-instructio
+ void * commentMatch : * Namespace aliases. * NOTE: Not used in
+ xmlHashTablePtr nsAliases : * Attribute sets. *
+ xmlHashTablePtr attributeSets : * Namespaces. * TODO: Eliminate this. *
+ xmlHashTablePtr nsHash : the set of namespaces in use: ATTENTION
+ void * nsDefs : * Key definitions. *
+ void * keys : * Output related stuff. *
+ xmlChar * method : the output method
+ xmlChar * methodURI : associated namespace if any
+ xmlChar * version : version string
+ xmlChar * encoding : encoding string
+ int omitXmlDeclaration : * Number formatting. *
+ <a href="libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a> decimalFormat
+ int standalone : standalone = "yes" | "no"
+ xmlChar * doctypePublic : doctype-public string
+ xmlChar * doctypeSystem : doctype-system string
+ int indent : should output being indented
+ xmlChar * mediaType : * Precomputed blocks. *
+ <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> preComps : list of precomputed blocks
+ int warnings : number of warnings found at compilation
+ int errors : number of errors found at compilation
+ xmlChar * exclPrefix : last excluded prefixes
+ xmlChar ** exclPrefixTab : array of excluded prefixes
+ int exclPrefixNr : number of excluded prefixes in scope
+ int exclPrefixMax : size of the array
+ void * _private : * Extensions. *
+ xmlHashTablePtr extInfos : the extension data
+ int extrasNr : * For keeping track of nested includes *
+ <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> includes : * dictionary: shared between stylesheet,
+ xmlDictPtr dict : * precompiled attribute value templates.
+ void * attVTs : * if namespace-alias has an alias for th
+ const xmlChar * defaultAlias : * bypass pre-processing (already done) (
+ int nopreproc : * all document text strings were interna
+ int internalized : * Literal Result Element as Stylesheet c
+ int literal_result : * The principal stylesheet *
+ <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> principal : * Compilation context used during compil
+ <a href="libxslt-xsltInternals.html#xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a> compCtxt : TODO: Change this to (void *).
+ <a href="libxslt-xsltInternals.html#xsltPrincipalStylesheetDataPtr">xsltPrincipalStylesheetDataPtr</a> principalData : * Forwards-compatible processing *
+ int forwards_compatible
+}</pre><h3><a name="xsltTemplate" id="xsltTemplate">Structure xsltTemplate</a></h3><pre class="programlisting">Structure xsltTemplate<br />struct _xsltTemplate {
+ struct _xsltTemplate * next : chained list sorted by priority
+ struct _xsltStylesheet * style : the containing stylesheet
+ xmlChar * match : the matching string
+ float priority : as given from the stylesheet, not compu
+ const xmlChar * name : the local part of the name QName
+ const xmlChar * nameURI : the URI part of the name QName
+ const xmlChar * mode : the local part of the mode QName
+ const xmlChar * modeURI : the URI part of the mode QName
+ xmlNodePtr content : the template replacement value
+ xmlNodePtr elem : * TODO: @inheritedNsNr and @inheritedNs
+ int inheritedNsNr : number of inherited namespaces
+ xmlNsPtr * inheritedNs : inherited non-excluded namespaces Profi
+ int nbCalls : the number of time the template was cal
+ unsigned long time : the time spent in this template
+ void * params : xsl:param instructions
+ int templNr : Nb of templates in the stack
+ int templMax : Size of the templtes stack
+ <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> * templCalledTab : templates called
+ int * templCountTab : .. and how often
+}</pre><h3><a name="xsltTransformCache" id="xsltTransformCache">Structure xsltTransformCache</a></h3><pre class="programlisting">Structure xsltTransformCache<br />struct _xsltTransformCache {
+ xmlDocPtr RVT
+ int nbRVT
+ <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> stackItems
+ int nbStackItems
+ int dbgCachedRVTs
+ int dbgReusedRVTs
+ int dbgCachedVars
+ int dbgReusedVars
+}</pre><h3><a name="xsltTransformContext" id="xsltTransformContext">Structure xsltTransformContext</a></h3><pre class="programlisting">Structure xsltTransformContext<br />struct _xsltTransformContext {
+ <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style : the stylesheet used
+ <a href="libxslt-xsltInternals.html#xsltOutputType">xsltOutputType</a> type : the type of output
+ <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ : the current template
+ int templNr : Nb of templates in the stack
+ int templMax : Size of the templtes stack
+ <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> * templTab : the template stack
+ <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> vars : the current variable list
+ int varsNr : Nb of variable list in the stack
+ int varsMax : Size of the variable list stack
+ <a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> * varsTab : the variable list stack
+ int varsBase : * Extensions *
+ xmlHashTablePtr extFunctions : the extension functions
+ xmlHashTablePtr extElements : the extension elements
+ xmlHashTablePtr extInfos : the extension data
+ const xmlChar * mode : the current mode
+ const xmlChar * modeURI : the current mode URI
+ <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> docList : the document list
+ <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> document : the current source document; can be NUL
+ xmlNodePtr node : the current node being processed
+ xmlNodeSetPtr nodeList : the current node list xmlNodePtr curren
+ xmlDocPtr output : the resulting document
+ xmlNodePtr insert : the insertion node
+ xmlXPathContextPtr xpathCtxt : the XPath context
+ <a href="libxslt-xsltInternals.html#xsltTransformState">xsltTransformState</a> state : * Global variables *
+ xmlHashTablePtr globalVars : the global variables and params
+ xmlNodePtr inst : the instruction in the stylesheet
+ int xinclude : should XInclude be processed
+ const char * outputFile : the output URI if known
+ int profile : is this run profiled
+ long prof : the current profiled value
+ int profNr : Nb of templates in the stack
+ int profMax : Size of the templtaes stack
+ long * profTab : the profile template stack
+ void * _private : user defined data
+ int extrasNr : the number of extras used
+ int extrasMax : the number of extras allocated
+ <a href="libxslt-xsltInternals.html#xsltRuntimeExtraPtr">xsltRuntimeExtraPtr</a> extras : extra per runtime informations
+ <a href="libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a> styleList : the stylesheet docs list
+ void * sec : the security preferences if any
+ xmlGenericErrorFunc error : a specific error handler
+ void * errctx : context for the error handler
+ <a href="libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a> sortfunc : * handling of temporary Result Value Tre
+ xmlDocPtr tmpRVT : list of RVT without persistance
+ xmlDocPtr persistRVT : list of persistant RVTs
+ int ctxtflags : * Speed optimization when coalescing tex
+ const xmlChar * lasttext : last text node content
+ unsigned int lasttsize : last text node size
+ unsigned int lasttuse : * Per Context Debugging *
+ int debugStatus : the context level debug status
+ unsigned long * traceCode : pointer to the variable holding the mas
+ int parserOptions : * dictionary: shared between stylesheet,
+ xmlDictPtr dict
+ xmlDocPtr tmpDoc : * all document text strings are internal
+ int internalized
+ int nbKeys
+ int hasTemplKeyPatterns
+ <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> currentTemplateRule : the Current Template Rule
+ xmlNodePtr initialContextNode
+ xmlDocPtr initialContextDoc
+ <a href="libxslt-xsltInternals.html#xsltTransformCachePtr">xsltTransformCachePtr</a> cache
+ void * contextVariable : the current variable item
+ xmlDocPtr localRVT : list of local tree fragments; will be f
+ xmlDocPtr localRVTBase
+ int keyInitLevel : Needed to catch recursive keys issues
+ int funcLevel : Needed to catch recursive functions iss
+ int maxTemplateDepth
+ int maxTemplateVars
+}</pre><h3>Enum <a name="xsltTransformState" id="xsltTransformState">xsltTransformState</a></h3><pre class="programlisting">Enum xsltTransformState {
+ <a name="XSLT_STATE_OK" id="XSLT_STATE_OK">XSLT_STATE_OK</a> = 0
+ <a name="XSLT_STATE_ERROR" id="XSLT_STATE_ERROR">XSLT_STATE_ERROR</a> = 1
+ <a name="XSLT_STATE_STOPPED" id="XSLT_STATE_STOPPED">XSLT_STATE_STOPPED</a> = 2
+}
+</pre><h3><a name="xsltVarInfo" id="xsltVarInfo">Structure xsltVarInfo</a></h3><pre class="programlisting">Structure xsltVarInfo<br />struct _xsltVarInfo {
+ <a href="libxslt-xsltInternals.html#xsltVarInfoPtr">xsltVarInfoPtr</a> next : next in the list
+ <a href="libxslt-xsltInternals.html#xsltVarInfoPtr">xsltVarInfoPtr</a> prev
+ int depth : the depth in the tree
+ const xmlChar * name
+ const xmlChar * nsName
+}</pre><h3><a name="xsltAllocateExtra" id="xsltAllocateExtra"></a>Function: xsltAllocateExtra</h3><pre class="programlisting">int xsltAllocateExtra (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Allocate an extra runtime information slot statically while compiling the stylesheet and return its number</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of the slot</td></tr></tbody></table></div><h3><a name="xsltAllocateExtraCtxt" id="xsltAllocateExtraCtxt"></a>Function: xsltAllocateExtraCtxt</h3><pre class="programlisting">int xsltAllocateExtraCtxt (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Allocate an extra runtime information slot at run-time and return its number This make sure there is a slot ready in the transformation context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of the slot</td></tr></tbody></table></div><h3><a name="xsltCompileAttr" id="xsltCompileAttr"></a>Function: xsltCompileAttr</h3><pre class="programlisting">void xsltCompileAttr (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlAttrPtr attr)<br />
+</pre><p>Precompile an attribute in a stylesheet, basically it checks if it is an attrubute value template, and if yes establish some structures needed to process it at transformation time.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>a XSLT process context</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the attribute coming from the stylesheet.</td></tr></tbody></table></div><h3><a name="xsltCreateRVT" id="xsltCreateRVT"></a>Function: xsltCreateRVT</h3><pre class="programlisting">xmlDocPtr xsltCreateRVT (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Creates a Result Value Tree (the XSLT 1.0 term for this is "Result Tree Fragment")</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the result value tree or NULL in case of 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 />
+</pre><p>Find decimal-format by name</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>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
+void xsltElemPreCompDeallocator (<a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp)
+</pre><p>Deallocates an #xsltElemPreComp structure.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the #xsltElemPreComp to free up</td></tr></tbody></table></div><br />
+<h3><a name="xsltEvalAVT" id="xsltEvalAVT"></a>Function: xsltEvalAVT</h3><pre class="programlisting">xmlChar * xsltEvalAVT (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> void * avt, <br /> xmlNodePtr node)<br />
+</pre><p>Process the given AVT, and return the new string value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>avt</tt></i>:</span></td><td>the prevompiled attribute value template info</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node hosting the attribute</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the computed string value or NULL, must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xsltExtensionInstructionResultFinalize" id="xsltExtensionInstructionResultFinalize"></a>Function: xsltExtensionInstructionResultFinalize</h3><pre class="programlisting">int xsltExtensionInstructionResultFinalize (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</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>
+<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 />
+</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>
+<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 />
+</pre><p>format-number() uses the JDK 1.1 DecimalFormat class: http://java.sun.com/products/jdk/1.1/docs/api/java.text.DecimalFormat.html Structure: pattern := subpattern{;subpattern} subpattern := {prefix}integer{.fraction}{suffix} prefix := '\\u0000'..'\\uFFFD' - specialCharacters suffix := '\\u0000'..'\\uFFFD' - specialCharacters integer := '#'* '0'* '0' fraction := '0'* '#'* Notation: X* 0 or more instances of X (X | Y) either X or Y. X..Y any character from X up to Y, inclusive. S - T characters in S, except those in T Special Characters: Symbol Meaning 0 a digit # a digit, zero shows as absent . placeholder for decimal separator , placeholder for grouping separator. ; separates formats. - default negative prefix. % multiply by 100 and show as percentage ? multiply by 1000 and show as per mille X any other characters can be used in the prefix or suffix ' used to quote special characters in a prefix or suffix.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>self</tt></i>:</span></td><td>the decimal format</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>the format requested</td></tr><tr><td><span class="term"><i><tt>number</tt></i>:</span></td><td>the value to format</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>the place to ouput the result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a possible XPath error</td></tr></tbody></table></div><h3><a name="xsltFreeAVTList" id="xsltFreeAVTList"></a>Function: xsltFreeAVTList</h3><pre class="programlisting">void xsltFreeAVTList (void * avt)<br />
+</pre><p>Free up the memory associated to the attribute value templates</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>avt</tt></i>:</span></td><td>pointer to an list of AVT structures</td></tr></tbody></table></div><h3><a name="xsltFreeRVTs" id="xsltFreeRVTs"></a>Function: xsltFreeRVTs</h3><pre class="programlisting">void xsltFreeRVTs (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>Frees all registered result value trees (Result Tree Fragments) of the transformation. Internal function; should not be called by user-code.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr></tbody></table></div><h3><a name="xsltFreeStackElemList" id="xsltFreeStackElemList"></a>Function: xsltFreeStackElemList</h3><pre class="programlisting">void xsltFreeStackElemList (<a href="libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a> elem)<br />
+</pre><p>Free up the memory allocated by @elem</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an XSLT stack element</td></tr></tbody></table></div><h3><a name="xsltFreeStylesheet" id="xsltFreeStylesheet"></a>Function: xsltFreeStylesheet</h3><pre class="programlisting">void xsltFreeStylesheet (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Free up the memory allocated by @style</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>an XSLT stylesheet</td></tr></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 />
+</pre><p>INTERNAL ROUTINE ONLY Check if any keys on the current document need to be computed</p>
+<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 />
+</pre><p>Computes the key tables this key and for the current input document.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>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 />
+</pre><p>Check if a string is ignorable</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>a string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the string is NULL or made of blanks chars, 0 otherwise</td></tr></tbody></table></div><h3><a name="xsltLoadStylesheetPI" id="xsltLoadStylesheetPI"></a>Function: xsltLoadStylesheetPI</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> xsltLoadStylesheetPI (xmlDocPtr doc)<br />
+</pre><p>This function tries to locate the stylesheet PI in the given document If found, and if contained within the document, it will extract that subtree to build the stylesheet to process @doc (doc itself will be modified). If found but referencing an external document it will attempt to load it and generate a stylesheet from it. In both cases, the resulting stylesheet and the document need to be freed once the transformation is done.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document to process</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new XSLT stylesheet structure or NULL if not found.</td></tr></tbody></table></div><h3><a name="xsltNewStylesheet" id="xsltNewStylesheet"></a>Function: xsltNewStylesheet</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> xsltNewStylesheet (void)<br />
+</pre><p>Create a new XSLT Stylesheet</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly allocated <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xsltNumberFormat" id="xsltNumberFormat"></a>Function: xsltNumberFormat</h3><pre class="programlisting">void xsltNumberFormat (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-numbersInternals.html#xsltNumberDataPtr">xsltNumberDataPtr</a> data, <br /> xmlNodePtr node)<br />
+</pre><p>Convert one number.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the formatting informations</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the data to format</td></tr></tbody></table></div><h3><a name="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 />
+</pre><p>Parses, validates the content models and compiles XSLT instructions.</p>
+<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 />
+</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>
+<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 />
+</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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>and xmlDoc parsed XML</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new XSLT stylesheet structure.</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetFile" id="xsltParseStylesheetFile"></a>Function: xsltParseStylesheetFile</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> xsltParseStylesheetFile (const xmlChar * filename)<br />
+</pre><p>Load and parse an XSLT stylesheet</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename/URL to the stylesheet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new XSLT stylesheet structure.</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetImportedDoc" id="xsltParseStylesheetImportedDoc"></a>Function: xsltParseStylesheetImportedDoc</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> xsltParseStylesheetImportedDoc (xmlDocPtr doc, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> parentStyle)<br />
+</pre><p>parse an XSLT stylesheet building the associated structures except the processing not needed for imported documents.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>an xmlDoc parsed XML</td></tr><tr><td><span class="term"><i><tt>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 />
+</pre><p>parse an XSLT stylesheet output element and record information related to the stylesheet output</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the "output" element</td></tr></tbody></table></div><h3><a name="xsltParseStylesheetProcess" id="xsltParseStylesheetProcess"></a>Function: xsltParseStylesheetProcess</h3><pre class="programlisting"><a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> xsltParseStylesheetProcess (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> ret, <br /> xmlDocPtr doc)<br />
+</pre><p>Parses an XSLT stylesheet, adding the associated structures. Called by: xsltParseStylesheetImportedDoc() (xslt.c) xsltParseStylesheetInclude() (imports.c)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ret</tt></i>:</span></td><td>the XSLT stylesheet (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 />
+</pre><p>parse a template content-model Clean-up the template content from unwanted ignorable blank nodes and process xslt:text</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet</td></tr><tr><td><span class="term"><i><tt>templ</tt></i>:</span></td><td>the container node (can be a document for literal results)</td></tr></tbody></table></div><h3><a name="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 />
+</pre><p>Adds an item to the list.</p>
+<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 />
+</pre><p>Resets the list, but does not free the allocated array and does not free the content of the list.</p>
+<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 />
+</pre><p>Creates an <a href="libxslt-xsltInternals.html#xsltPointerList">xsltPointerList</a> structure.</p>
+<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 />
+</pre><p>Frees the <a href="libxslt-xsltInternals.html#xsltPointerList">xsltPointerList</a> structure. This does not free the content of the list.</p>
+<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 />
+</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>
+<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 />
+</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>
+<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 />
+</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>
+<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 />
+</pre><p>Either frees the RVT (which is an xmlDoc) or stores it in the context's cache for later reuse.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>RVT</tt></i>:</span></td><td>a result value tree (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 />
+</pre><p>Restore the namespaces for the document</p>
+<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
+void xsltSortFunc (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr * sorts, <br /> int nbsorts)
+</pre><p>Signature of the function to use during sorting</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a transformation context</td></tr><tr><td><span class="term"><i><tt>sorts</tt></i>:</span></td><td>the node-set to sort</td></tr><tr><td><span class="term"><i><tt>nbsorts</tt></i>:</span></td><td>the number of sorts</td></tr></tbody></table></div><br />
+<h3><a name="xsltTransformFunction" id="xsltTransformFunction"></a>Function type: xsltTransformFunction</h3><pre class="programlisting">Function type: xsltTransformFunction
+void xsltTransformFunction (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst, <br /> <a href="libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a> comp)
+</pre><p>Signature of the function associated to elements part of the stylesheet language like xsl:if or xsl:apply-templates.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the input node</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>the stylesheet node</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled information from the stylesheet</td></tr></tbody></table></div><br />
+<h3><a name="xsltUninit" id="xsltUninit"></a>Function: xsltUninit</h3><pre class="programlisting">void xsltUninit (void)<br />
+</pre><p>Uninitializes the processor.</p>
+<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>
diff --git a/libxslt/doc/html/libxslt-xsltexports.html b/libxslt/doc/html/libxslt-xsltexports.html
new file mode 100644
index 0000000..19fdb41
--- /dev/null
+++ b/libxslt/doc/html/libxslt-xsltexports.html
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module xsltexports 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 xsltexports 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-xsltInternals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-xsltInternals.html">xsltInternals</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-xsltlocale.html">xsltlocale</a></th><td><a accesskey="n" href="libxslt-xsltlocale.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>macros for marking symbols as exportable/importable. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#LIBXSLT_PUBLIC">LIBXSLT_PUBLIC</a></pre><pre class="programlisting">#define <a href="#XSLTCALL">XSLTCALL</a></pre><pre class="programlisting">#define <a href="#XSLTPUBFUN">XSLTPUBFUN</a></pre><pre class="programlisting">#define <a href="#XSLTPUBVAR">XSLTPUBVAR</a></pre><pre class="programlisting">#define <a href="#_REENTRANT">_REENTRANT</a></pre><h2>Description</h2>
+<h3><a name="LIBXSLT_PUBLIC" id="LIBXSLT_PUBLIC"></a>Macro: LIBXSLT_PUBLIC</h3><pre>#define LIBXSLT_PUBLIC</pre><p></p>
+<h3><a name="XSLTCALL" id="XSLTCALL"></a>Macro: XSLTCALL</h3><pre>#define XSLTCALL</pre><p></p>
+<h3><a name="XSLTPUBFUN" id="XSLTPUBFUN"></a>Macro: XSLTPUBFUN</h3><pre>#define XSLTPUBFUN</pre><p></p>
+<h3><a name="XSLTPUBVAR" id="XSLTPUBVAR"></a>Macro: XSLTPUBVAR</h3><pre>#define XSLTPUBVAR</pre><p></p>
+<h3><a name="_REENTRANT" id="_REENTRANT"></a>Macro: _REENTRANT</h3><pre>#define _REENTRANT</pre><p></p>
+<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>
diff --git a/libxslt/doc/html/libxslt-xsltlocale.html b/libxslt/doc/html/libxslt-xsltlocale.html
new file mode 100644
index 0000000..01bb5f2
--- /dev/null
+++ b/libxslt/doc/html/libxslt-xsltlocale.html
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module xsltlocale 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 xsltlocale 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-xsltexports.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-xsltexports.html">xsltexports</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-xsltutils.html">xsltutils</a></th><td><a accesskey="n" href="libxslt-xsltutils.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>Interfaces for locale handling. Needed for language dependent sorting. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XSLT_LOCALE_NONE">XSLT_LOCALE_NONE</a></pre><pre class="programlisting">Typedef void * <a name="xsltLocale" id="xsltLocale">xsltLocale</a>
+</pre><pre class="programlisting">Typedef xmlChar <a name="xsltLocaleChar" id="xsltLocaleChar">xsltLocaleChar</a>
+</pre><pre class="programlisting">void <a href="#xsltFreeLocale">xsltFreeLocale</a> (<a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> locale)</pre>
+<pre class="programlisting">void <a href="#xsltFreeLocales">xsltFreeLocales</a> (void)</pre>
+<pre class="programlisting">int <a href="#xsltLocaleStrcmp">xsltLocaleStrcmp</a> (<a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> locale, <br /> const <a href="libxslt-xsltlocale.html#xsltLocaleChar">xsltLocaleChar</a> * str1, <br /> const <a href="libxslt-xsltlocale.html#xsltLocaleChar">xsltLocaleChar</a> * str2)</pre>
+<pre class="programlisting"><a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> <a href="#xsltNewLocale">xsltNewLocale</a> (const xmlChar * languageTag)</pre>
+<pre class="programlisting"><a href="libxslt-xsltlocale.html#xsltLocaleChar">xsltLocaleChar</a> * <a href="#xsltStrxfrm">xsltStrxfrm</a> (<a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> locale, <br /> const xmlChar * string)</pre>
+<h2>Description</h2>
+<h3><a name="XSLT_LOCALE_NONE" id="XSLT_LOCALE_NONE"></a>Macro: XSLT_LOCALE_NONE</h3><pre>#define XSLT_LOCALE_NONE</pre><p>Macro indicating that locale are not supported</p>
+<h3><a name="xsltFreeLocale" id="xsltFreeLocale"></a>Function: xsltFreeLocale</h3><pre class="programlisting">void xsltFreeLocale (<a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> locale)<br />
+</pre><p>Frees a locale created with <a href="libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>locale</tt></i>:</span></td><td>the locale to free</td></tr></tbody></table></div><h3><a name="xsltFreeLocales" id="xsltFreeLocales"></a>Function: xsltFreeLocales</h3><pre class="programlisting">void xsltFreeLocales (void)<br />
+</pre><p>Cleanup function for the locale support on shutdown</p>
+<h3><a name="xsltLocaleStrcmp" id="xsltLocaleStrcmp"></a>Function: xsltLocaleStrcmp</h3><pre class="programlisting">int xsltLocaleStrcmp (<a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> locale, <br /> const <a href="libxslt-xsltlocale.html#xsltLocaleChar">xsltLocaleChar</a> * str1, <br /> const <a href="libxslt-xsltlocale.html#xsltLocaleChar">xsltLocaleChar</a> * str2)<br />
+</pre><p>Compares two strings transformed with <a href="libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>locale</tt></i>:</span></td><td>a locale identifier</td></tr><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>a string transformed with <a href="libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a></td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>a string transformed with <a href="libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a value &lt; 0 if str1 sorts before str2, a value &gt; 0 if str1 sorts after str2, 0 if str1 and str2 are equal wrt sorting</td></tr></tbody></table></div><h3><a name="xsltNewLocale" id="xsltNewLocale"></a>Function: xsltNewLocale</h3><pre class="programlisting"><a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> xsltNewLocale (const xmlChar * languageTag)<br />
+</pre><p>Creates a new locale of an opaque system dependent type based on the language tag.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>languageTag</tt></i>:</span></td><td>RFC 3066 language tag</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the locale or NULL on error or if no matching locale was found</td></tr></tbody></table></div><h3><a name="xsltStrxfrm" id="xsltStrxfrm"></a>Function: xsltStrxfrm</h3><pre class="programlisting"><a href="libxslt-xsltlocale.html#xsltLocaleChar">xsltLocaleChar</a> * xsltStrxfrm (<a href="libxslt-xsltlocale.html#xsltLocale">xsltLocale</a> locale, <br /> const xmlChar * string)<br />
+</pre><p>Transforms a string according to locale. The transformed string must then be compared with <a href="libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a> and freed with xmlFree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>locale</tt></i>:</span></td><td>locale created with <a href="libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a></td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>UTF-8 string to transform</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the transformed string or NULL on error</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/libxslt-xsltutils.html b/libxslt/doc/html/libxslt-xsltutils.html
new file mode 100644
index 0000000..155f050
--- /dev/null
+++ b/libxslt/doc/html/libxslt-xsltutils.html
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /><style type="text/css">
+TD {font-family: Verdana,Arial,Helvetica}
+BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
+H1 {font-family: Verdana,Arial,Helvetica}
+H2 {font-family: Verdana,Arial,Helvetica}
+H3 {font-family: Verdana,Arial,Helvetica}
+A:link, A:visited, A:active { text-decoration: underline }
+ </style><title>Module xsltutils 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 xsltutils 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-xsltlocale.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxslt-xsltlocale.html">xsltlocale</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></tr></table><p>interfaces for the utilities module of the XSLT engine. things like message handling, profiling, and other generally useful routines. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#IS_XSLT_ELEM">IS_XSLT_ELEM</a></pre><pre class="programlisting">#define <a href="#IS_XSLT_NAME">IS_XSLT_NAME</a></pre><pre class="programlisting">#define <a href="#IS_XSLT_REAL_NODE">IS_XSLT_REAL_NODE</a></pre><pre class="programlisting">#define <a href="#XSLT_STRANGE">XSLT_STRANGE</a></pre><pre class="programlisting">#define <a href="#XSLT_TIMESTAMP_TICS_PER_SEC">XSLT_TIMESTAMP_TICS_PER_SEC</a></pre><pre class="programlisting">#define <a href="#XSLT_TODO">XSLT_TODO</a></pre><pre class="programlisting">#define <a href="#XSLT_TRACE">XSLT_TRACE</a></pre><pre class="programlisting">Enum <a href="#xsltDebugStatusCodes">xsltDebugStatusCodes</a>
+</pre><pre class="programlisting">Enum <a href="#xsltDebugTraceCodes">xsltDebugTraceCodes</a>
+</pre><pre class="programlisting">int <a href="#xslAddCall">xslAddCall</a> (<a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ, <br /> xmlNodePtr source)</pre>
+<pre class="programlisting">void <a href="#xslDropCall">xslDropCall</a> (void)</pre>
+<pre class="programlisting">Function type: <a href="#xsltAddCallCallback">xsltAddCallCallback</a>
+int <a href="#xsltAddCallCallback">xsltAddCallCallback</a> (<a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ, <br /> xmlNodePtr source)
+</pre>
+<pre class="programlisting">void <a href="#xsltCalibrateAdjust">xsltCalibrateAdjust</a> (long delta)</pre>
+<pre class="programlisting">xmlXPathObjectPtr * <a href="#xsltComputeSortResult">xsltComputeSortResult</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr sort)</pre>
+<pre class="programlisting"><a href="libxslt-xsltutils.html#xsltDebugTraceCodes">xsltDebugTraceCodes</a> <a href="#xsltDebugGetDefaultTrace">xsltDebugGetDefaultTrace</a> (void)</pre>
+<pre class="programlisting">void <a href="#xsltDebugSetDefaultTrace">xsltDebugSetDefaultTrace</a> (<a href="libxslt-xsltutils.html#xsltDebugTraceCodes">xsltDebugTraceCodes</a> val)</pre>
+<pre class="programlisting">void <a href="#xsltDefaultSortFunction">xsltDefaultSortFunction</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr * sorts, <br /> int nbsorts)</pre>
+<pre class="programlisting">void <a href="#xsltDoSortFunction">xsltDoSortFunction</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr * sorts, <br /> int nbsorts)</pre>
+<pre class="programlisting">void <a href="#xsltDocumentSortFunction">xsltDocumentSortFunction</a> (xmlNodeSetPtr list)</pre>
+<pre class="programlisting">Function type: <a href="#xsltDropCallCallback">xsltDropCallCallback</a>
+void <a href="#xsltDropCallCallback">xsltDropCallCallback</a> (void)
+</pre>
+<pre class="programlisting">const xmlChar * <a href="#xsltGetCNsProp">xsltGetCNsProp</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr node, <br /> const xmlChar * name, <br /> const xmlChar * nameSpace)</pre>
+<pre class="programlisting">int <a href="#xsltGetDebuggerStatus">xsltGetDebuggerStatus</a> (void)</pre>
+<pre class="programlisting">xmlChar * <a href="#xsltGetNsProp">xsltGetNsProp</a> (xmlNodePtr node, <br /> const xmlChar * name, <br /> const xmlChar * nameSpace)</pre>
+<pre class="programlisting">xmlDocPtr <a href="#xsltGetProfileInformation">xsltGetProfileInformation</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)</pre>
+<pre class="programlisting">const xmlChar * <a href="#xsltGetQNameURI">xsltGetQNameURI</a> (xmlNodePtr node, <br /> xmlChar ** name)</pre>
+<pre class="programlisting">const xmlChar * <a href="#xsltGetQNameURI2">xsltGetQNameURI2</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr node, <br /> const xmlChar ** name)</pre>
+<pre class="programlisting">int <a href="#xsltGetUTF8Char">xsltGetUTF8Char</a> (const unsigned char * utf, <br /> int * len)</pre>
+<pre class="programlisting">Function type: <a href="#xsltHandleDebuggerCallback">xsltHandleDebuggerCallback</a>
+void <a href="#xsltHandleDebuggerCallback">xsltHandleDebuggerCallback</a> (xmlNodePtr cur, <br /> xmlNodePtr node, <br /> <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)
+</pre>
+<pre class="programlisting">void <a href="#xsltMessage">xsltMessage</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst)</pre>
+<pre class="programlisting">void <a href="#xsltPrintErrorContext">xsltPrintErrorContext</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr node)</pre>
+<pre class="programlisting">void <a href="#xsltSaveProfiling">xsltSaveProfiling</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> FILE * output)</pre>
+<pre class="programlisting">int <a href="#xsltSaveResultTo">xsltSaveResultTo</a> (xmlOutputBufferPtr buf, <br /> xmlDocPtr result, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">int <a href="#xsltSaveResultToFd">xsltSaveResultToFd</a> (int fd, <br /> xmlDocPtr result, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">int <a href="#xsltSaveResultToFile">xsltSaveResultToFile</a> (FILE * file, <br /> xmlDocPtr result, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">int <a href="#xsltSaveResultToFilename">xsltSaveResultToFilename</a> (const char * URL, <br /> xmlDocPtr result, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> int compression)</pre>
+<pre class="programlisting">int <a href="#xsltSaveResultToString">xsltSaveResultToString</a> (xmlChar ** doc_txt_ptr, <br /> int * doc_txt_len, <br /> xmlDocPtr result, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)</pre>
+<pre class="programlisting">int <a href="#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> int options)</pre>
+<pre class="programlisting">void <a href="#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a> handler)</pre>
+<pre class="programlisting">int <a href="#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a> (int no, <br /> void * block)</pre>
+<pre class="programlisting">void <a href="#xsltSetDebuggerStatus">xsltSetDebuggerStatus</a> (int value)</pre>
+<pre class="programlisting">void <a href="#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a> (void * ctx, <br /> xmlGenericErrorFunc handler)</pre>
+<pre class="programlisting">void <a href="#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a> (void * ctx, <br /> xmlGenericErrorFunc handler)</pre>
+<pre class="programlisting">void <a href="#xsltSetSortFunc">xsltSetSortFunc</a> (<a href="libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a> handler)</pre>
+<pre class="programlisting">void <a href="#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> void * ctx, <br /> xmlGenericErrorFunc handler)</pre>
+<pre class="programlisting">const xmlChar * <a href="#xsltSplitQName">xsltSplitQName</a> (xmlDictPtr dict, <br /> const xmlChar * name, <br /> const xmlChar ** prefix)</pre>
+<pre class="programlisting">long <a href="#xsltTimestamp">xsltTimestamp</a> (void)</pre>
+<pre class="programlisting">void <a href="#xsltTransformError">xsltTransformError</a> (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr node, <br /> const char * msg, <br /> ... ...)</pre>
+<pre class="programlisting">xmlXPathCompExprPtr <a href="#xsltXPathCompile">xsltXPathCompile</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * str)</pre>
+<pre class="programlisting">xmlXPathCompExprPtr <a href="#xsltXPathCompileFlags">xsltXPathCompileFlags</a> (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * str, <br /> int flags)</pre>
+<h2>Description</h2>
+<h3><a name="IS_XSLT_ELEM" id="IS_XSLT_ELEM"></a>Macro: IS_XSLT_ELEM</h3><pre>#define IS_XSLT_ELEM</pre><p>Checks that the element pertains to XSLT namespace.</p>
+<h3><a name="IS_XSLT_NAME" id="IS_XSLT_NAME"></a>Macro: IS_XSLT_NAME</h3><pre>#define IS_XSLT_NAME</pre><p>Checks the value of an element in XSLT namespace.</p>
+<h3><a name="IS_XSLT_REAL_NODE" id="IS_XSLT_REAL_NODE"></a>Macro: IS_XSLT_REAL_NODE</h3><pre>#define IS_XSLT_REAL_NODE</pre><p>Check that a node is a 'real' one: document, element, text or attribute.</p>
+<h3><a name="XSLT_STRANGE" id="XSLT_STRANGE"></a>Macro: XSLT_STRANGE</h3><pre>#define XSLT_STRANGE</pre><p>Macro to flag that a problem was detected internally.</p>
+<h3><a name="XSLT_TIMESTAMP_TICS_PER_SEC" id="XSLT_TIMESTAMP_TICS_PER_SEC"></a>Macro: XSLT_TIMESTAMP_TICS_PER_SEC</h3><pre>#define XSLT_TIMESTAMP_TICS_PER_SEC</pre><p>Sampling precision for profiling</p>
+<h3><a name="XSLT_TODO" id="XSLT_TODO"></a>Macro: XSLT_TODO</h3><pre>#define XSLT_TODO</pre><p>Macro to flag unimplemented blocks.</p>
+<h3><a name="XSLT_TRACE" id="XSLT_TRACE"></a>Macro: XSLT_TRACE</h3><pre>#define XSLT_TRACE</pre><p>Control the type of xsl debugtrace messages emitted.</p>
+<h3>Enum <a name="xsltDebugStatusCodes" id="xsltDebugStatusCodes">xsltDebugStatusCodes</a></h3><pre class="programlisting">Enum xsltDebugStatusCodes {
+ <a name="XSLT_DEBUG_NONE" id="XSLT_DEBUG_NONE">XSLT_DEBUG_NONE</a> = 0 : no debugging allowed
+ <a name="XSLT_DEBUG_INIT" id="XSLT_DEBUG_INIT">XSLT_DEBUG_INIT</a> = 1
+ <a name="XSLT_DEBUG_STEP" id="XSLT_DEBUG_STEP">XSLT_DEBUG_STEP</a> = 2
+ <a name="XSLT_DEBUG_STEPOUT" id="XSLT_DEBUG_STEPOUT">XSLT_DEBUG_STEPOUT</a> = 3
+ <a name="XSLT_DEBUG_NEXT" id="XSLT_DEBUG_NEXT">XSLT_DEBUG_NEXT</a> = 4
+ <a name="XSLT_DEBUG_STOP" id="XSLT_DEBUG_STOP">XSLT_DEBUG_STOP</a> = 5
+ <a name="XSLT_DEBUG_CONT" id="XSLT_DEBUG_CONT">XSLT_DEBUG_CONT</a> = 6
+ <a name="XSLT_DEBUG_RUN" id="XSLT_DEBUG_RUN">XSLT_DEBUG_RUN</a> = 7
+ <a name="XSLT_DEBUG_RUN_RESTART" id="XSLT_DEBUG_RUN_RESTART">XSLT_DEBUG_RUN_RESTART</a> = 8
+ <a name="XSLT_DEBUG_QUIT" id="XSLT_DEBUG_QUIT">XSLT_DEBUG_QUIT</a> = 9
+}
+</pre><h3>Enum <a name="xsltDebugTraceCodes" id="xsltDebugTraceCodes">xsltDebugTraceCodes</a></h3><pre class="programlisting">Enum xsltDebugTraceCodes {
+ <a name="XSLT_TRACE_ALL" id="XSLT_TRACE_ALL">XSLT_TRACE_ALL</a> = -1
+ <a name="XSLT_TRACE_NONE" id="XSLT_TRACE_NONE">XSLT_TRACE_NONE</a> = 0
+ <a name="XSLT_TRACE_COPY_TEXT" id="XSLT_TRACE_COPY_TEXT">XSLT_TRACE_COPY_TEXT</a> = 1
+ <a name="XSLT_TRACE_PROCESS_NODE" id="XSLT_TRACE_PROCESS_NODE">XSLT_TRACE_PROCESS_NODE</a> = 2
+ <a name="XSLT_TRACE_APPLY_TEMPLATE" id="XSLT_TRACE_APPLY_TEMPLATE">XSLT_TRACE_APPLY_TEMPLATE</a> = 4
+ <a name="XSLT_TRACE_COPY" id="XSLT_TRACE_COPY">XSLT_TRACE_COPY</a> = 8
+ <a name="XSLT_TRACE_COMMENT" id="XSLT_TRACE_COMMENT">XSLT_TRACE_COMMENT</a> = 16
+ <a name="XSLT_TRACE_PI" id="XSLT_TRACE_PI">XSLT_TRACE_PI</a> = 32
+ <a name="XSLT_TRACE_COPY_OF" id="XSLT_TRACE_COPY_OF">XSLT_TRACE_COPY_OF</a> = 64
+ <a name="XSLT_TRACE_VALUE_OF" id="XSLT_TRACE_VALUE_OF">XSLT_TRACE_VALUE_OF</a> = 128
+ <a name="XSLT_TRACE_CALL_TEMPLATE" id="XSLT_TRACE_CALL_TEMPLATE">XSLT_TRACE_CALL_TEMPLATE</a> = 256
+ <a name="XSLT_TRACE_APPLY_TEMPLATES" id="XSLT_TRACE_APPLY_TEMPLATES">XSLT_TRACE_APPLY_TEMPLATES</a> = 512
+ <a name="XSLT_TRACE_CHOOSE" id="XSLT_TRACE_CHOOSE">XSLT_TRACE_CHOOSE</a> = 1024
+ <a name="XSLT_TRACE_IF" id="XSLT_TRACE_IF">XSLT_TRACE_IF</a> = 2048
+ <a name="XSLT_TRACE_FOR_EACH" id="XSLT_TRACE_FOR_EACH">XSLT_TRACE_FOR_EACH</a> = 4096
+ <a name="XSLT_TRACE_STRIP_SPACES" id="XSLT_TRACE_STRIP_SPACES">XSLT_TRACE_STRIP_SPACES</a> = 8192
+ <a name="XSLT_TRACE_TEMPLATES" id="XSLT_TRACE_TEMPLATES">XSLT_TRACE_TEMPLATES</a> = 16384
+ <a name="XSLT_TRACE_KEYS" id="XSLT_TRACE_KEYS">XSLT_TRACE_KEYS</a> = 32768
+ <a name="XSLT_TRACE_VARIABLES" id="XSLT_TRACE_VARIABLES">XSLT_TRACE_VARIABLES</a> = 65536
+}
+</pre><h3><a name="xslAddCall" id="xslAddCall"></a>Function: xslAddCall</h3><pre class="programlisting">int xslAddCall (<a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ, <br /> xmlNodePtr source)<br />
+</pre><p>Add template "call" to call stack</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>templ</tt></i>:</span></td><td>current template being applied</td></tr><tr><td><span class="term"><i><tt>source</tt></i>:</span></td><td>the source node being processed</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>: 1 on sucess 0 otherwise an error may be printed if WITH_XSLT_DEBUG_BREAKPOINTS is defined</td></tr></tbody></table></div><h3><a name="xslDropCall" id="xslDropCall"></a>Function: xslDropCall</h3><pre class="programlisting">void xslDropCall (void)<br />
+</pre><p>Drop the topmost item off the call stack</p>
+<h3><a name="xsltAddCallCallback" id="xsltAddCallCallback"></a>Function type: xsltAddCallCallback</h3><pre class="programlisting">Function type: xsltAddCallCallback
+int xsltAddCallCallback (<a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ, <br /> xmlNodePtr source)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>templ</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>source</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xsltCalibrateAdjust" id="xsltCalibrateAdjust"></a>Function: xsltCalibrateAdjust</h3><pre class="programlisting">void xsltCalibrateAdjust (long delta)<br />
+</pre><p>Used for to correct the calibration for xsltTimestamp()</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>delta</tt></i>:</span></td><td>a negative dealy value found</td></tr></tbody></table></div><h3><a name="xsltComputeSortResult" id="xsltComputeSortResult"></a>Function: xsltComputeSortResult</h3><pre class="programlisting">xmlXPathObjectPtr * xsltComputeSortResult (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr sort)<br />
+</pre><p>reorder the current node list accordingly to the set of sorting requirement provided by the array of nodes.</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>sort</tt></i>:</span></td><td>node list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a ordered XPath nodeset or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xsltDebugGetDefaultTrace" id="xsltDebugGetDefaultTrace"></a>Function: xsltDebugGetDefaultTrace</h3><pre class="programlisting"><a href="libxslt-xsltutils.html#xsltDebugTraceCodes">xsltDebugTraceCodes</a> xsltDebugGetDefaultTrace (void)<br />
+</pre><p>Get the current default debug tracing level mask</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current default debug tracing level mask</td></tr></tbody></table></div><h3><a name="xsltDebugSetDefaultTrace" id="xsltDebugSetDefaultTrace"></a>Function: xsltDebugSetDefaultTrace</h3><pre class="programlisting">void xsltDebugSetDefaultTrace (<a href="libxslt-xsltutils.html#xsltDebugTraceCodes">xsltDebugTraceCodes</a> val)<br />
+</pre><p>Set the default debug tracing level mask</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>tracing level mask</td></tr></tbody></table></div><h3><a name="xsltDefaultSortFunction" id="xsltDefaultSortFunction"></a>Function: xsltDefaultSortFunction</h3><pre class="programlisting">void xsltDefaultSortFunction (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr * sorts, <br /> int nbsorts)<br />
+</pre><p>reorder the current node list accordingly to the set of sorting requirement provided by the arry of nodes.</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>sorts</tt></i>:</span></td><td>array of sort nodes</td></tr><tr><td><span class="term"><i><tt>nbsorts</tt></i>:</span></td><td>the number of sorts in the array</td></tr></tbody></table></div><h3><a name="xsltDoSortFunction" id="xsltDoSortFunction"></a>Function: xsltDoSortFunction</h3><pre class="programlisting">void xsltDoSortFunction (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr * sorts, <br /> int nbsorts)<br />
+</pre><p>reorder the current node list accordingly to the set of sorting requirement provided by the arry of nodes. This is a wrapper function, the actual function used is specified using xsltSetCtxtSortFunc() to set the context specific sort function, or xsltSetSortFunc() to set the global sort function. If a sort function is set on the context, this will get called. Otherwise the global sort function is called.</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>sorts</tt></i>:</span></td><td>array of sort nodes</td></tr><tr><td><span class="term"><i><tt>nbsorts</tt></i>:</span></td><td>the number of sorts in the array</td></tr></tbody></table></div><h3><a name="xsltDocumentSortFunction" id="xsltDocumentSortFunction"></a>Function: xsltDocumentSortFunction</h3><pre class="programlisting">void xsltDocumentSortFunction (xmlNodeSetPtr list)<br />
+</pre><p>reorder the current node list @list accordingly to the document order This function is slow, obsolete and should not be used anymore.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>the node set</td></tr></tbody></table></div><h3><a name="xsltDropCallCallback" id="xsltDropCallCallback"></a>Function type: xsltDropCallCallback</h3><pre class="programlisting">Function type: xsltDropCallCallback
+void xsltDropCallCallback (void)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody></tbody></table></div><br />
+<h3><a name="xsltGetCNsProp" id="xsltGetCNsProp"></a>Function: xsltGetCNsProp</h3><pre class="programlisting">const xmlChar * xsltGetCNsProp (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr node, <br /> const xmlChar * name, <br /> const xmlChar * nameSpace)<br />
+</pre><p>Similar to xmlGetNsProp() but with a slightly different semantic Search and get the value of an attribute associated to a node This attribute has to be anchored in the namespace specified, or has no namespace and the element is in that namespace. This does the entity substitution. This function looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the attribute name</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i>:</span></td><td>the URI of the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the attribute value or NULL if not found. The string is allocated in the stylesheet dictionary.</td></tr></tbody></table></div><h3><a name="xsltGetDebuggerStatus" id="xsltGetDebuggerStatus"></a>Function: xsltGetDebuggerStatus</h3><pre class="programlisting">int xsltGetDebuggerStatus (void)<br />
+</pre><p>Get xslDebugStatus.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value of xslDebugStatus.</td></tr></tbody></table></div><h3><a name="xsltGetNsProp" id="xsltGetNsProp"></a>Function: xsltGetNsProp</h3><pre class="programlisting">xmlChar * xsltGetNsProp (xmlNodePtr node, <br /> const xmlChar * name, <br /> const xmlChar * nameSpace)<br />
+</pre><p>Similar to xmlGetNsProp() but with a slightly different semantic Search and get the value of an attribute associated to a node This attribute has to be anchored in the namespace specified, or has no namespace and the element is in that namespace. This does the entity substitution. This function looks in DTD attribute declaration for #FIXED or default declaration values unless DTD use has been turned off.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the attribute name</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i>:</span></td><td>the URI of the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the attribute value or NULL if not found. It's up to the caller to free the memory.</td></tr></tbody></table></div><h3><a name="xsltGetProfileInformation" id="xsltGetProfileInformation"></a>Function: xsltGetProfileInformation</h3><pre class="programlisting">xmlDocPtr xsltGetProfileInformation (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)<br />
+</pre><p>This function should be called after the transformation completed to extract template processing profiling informations if availble. The informations are returned as an XML document tree like &lt;?xml version="1.0"?&gt; &lt;profile&gt; &lt;template rank="1" match="*" name="" mode="" calls="6" time="48" average="8"/&gt; &lt;template rank="2" match="item2|item3" name="" mode="" calls="10" time="30" average="3"/&gt; &lt;template rank="3" match="item1" name="" mode="" calls="5" time="17" average="3"/&gt; &lt;/profile&gt; The caller will need to free up the returned tree with xmlFreeDoc()</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>Returns</tt></i>:</span></td><td>the xmlDocPtr corresponding to the result or NULL if not available.</td></tr></tbody></table></div><h3><a name="xsltGetQNameURI" id="xsltGetQNameURI"></a>Function: xsltGetQNameURI</h3><pre class="programlisting">const xmlChar * xsltGetQNameURI (xmlNodePtr node, <br /> xmlChar ** name)<br />
+</pre><p>This function analyzes @name, if the name contains a prefix, the function seaches the associated namespace in scope for it. It will also replace @name value with the NCName, the old value being freed. Errors in the prefix lookup are signalled by setting @name to NULL. NOTE: the namespace returned is a pointer to the place where it is defined and hence has the same lifespan as the document holding it.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node holding the QName</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>pointer to the initial QName value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace URI if there is a prefix, or NULL if @name is not prefixed.</td></tr></tbody></table></div><h3><a name="xsltGetQNameURI2" id="xsltGetQNameURI2"></a>Function: xsltGetQNameURI2</h3><pre class="programlisting">const xmlChar * xsltGetQNameURI2 (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr node, <br /> const xmlChar ** name)<br />
+</pre><p>This function is similar to xsltGetQNameURI, but is used when @name is a dictionary entry.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>stylesheet pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node holding the QName</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>pointer to the initial QName value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace URI if there is a prefix, or NULL if @name is not prefixed.</td></tr></tbody></table></div><h3><a name="xsltGetUTF8Char" id="xsltGetUTF8Char"></a>Function: xsltGetUTF8Char</h3><pre class="programlisting">int xsltGetUTF8Char (const unsigned char * utf, <br /> int * len)<br />
+</pre><p>Read one UTF8 Char from @utf Function copied from libxml2 xmlGetUTF8Char() ... to discard ultimately and use the original API</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>a pointer to @bytes len</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the char value or -1 in case of error and update @len with the number of bytes used</td></tr></tbody></table></div><h3><a name="xsltHandleDebuggerCallback" id="xsltHandleDebuggerCallback"></a>Function type: xsltHandleDebuggerCallback</h3><pre class="programlisting">Function type: xsltHandleDebuggerCallback
+void xsltHandleDebuggerCallback (xmlNodePtr cur, <br /> xmlNodePtr node, <br /> <a href="libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a> templ, <br /> <a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>templ</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xsltMessage" id="xsltMessage"></a>Function: xsltMessage</h3><pre class="programlisting">void xsltMessage (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> xmlNodePtr node, <br /> xmlNodePtr inst)<br />
+</pre><p>Process and xsl:message construct</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT processing context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>The current node</td></tr><tr><td><span class="term"><i><tt>inst</tt></i>:</span></td><td>The node containing the message instruction</td></tr></tbody></table></div><h3><a name="xsltPrintErrorContext" id="xsltPrintErrorContext"></a>Function: xsltPrintErrorContext</h3><pre class="programlisting">void xsltPrintErrorContext (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr node)<br />
+</pre><p>Display the context of an error.</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 transformation context</td></tr><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node being processed</td></tr></tbody></table></div><h3><a name="xsltSaveProfiling" id="xsltSaveProfiling"></a>Function: xsltSaveProfiling</h3><pre class="programlisting">void xsltSaveProfiling (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> FILE * output)<br />
+</pre><p>Save the profiling informations on @output</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT context</td></tr><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>a FILE * for saving the informations</td></tr></tbody></table></div><h3><a name="xsltSaveResultTo" id="xsltSaveResultTo"></a>Function: xsltSaveResultTo</h3><pre class="programlisting">int xsltSaveResultTo (xmlOutputBufferPtr buf, <br /> xmlDocPtr result, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Save the result @result obtained by applying the @style stylesheet to an I/O output channel @buf</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an output buffer</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>the result xmlDocPtr</td></tr><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xsltSaveResultToFd" id="xsltSaveResultToFd"></a>Function: xsltSaveResultToFd</h3><pre class="programlisting">int xsltSaveResultToFd (int fd, <br /> xmlDocPtr result, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Save the result @result obtained by applying the @style stylesheet to an open file descriptor This does not close the descriptor.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>a file descriptor</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>the result xmlDocPtr</td></tr><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xsltSaveResultToFile" id="xsltSaveResultToFile"></a>Function: xsltSaveResultToFile</h3><pre class="programlisting">int xsltSaveResultToFile (FILE * file, <br /> xmlDocPtr result, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Save the result @result obtained by applying the @style stylesheet to an open FILE * I/O. This does not close the FILE @file</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>a FILE * I/O</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>the result xmlDocPtr</td></tr><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xsltSaveResultToFilename" id="xsltSaveResultToFilename"></a>Function: xsltSaveResultToFilename</h3><pre class="programlisting">int xsltSaveResultToFilename (const char * URL, <br /> xmlDocPtr result, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> int compression)<br />
+</pre><p>Save the result @result obtained by applying the @style stylesheet to a file or @URL</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>a filename or URL</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>the result xmlDocPtr</td></tr><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>compression</tt></i>:</span></td><td>the compression factor (0 - 9 included)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xsltSaveResultToString" id="xsltSaveResultToString"></a>Function: xsltSaveResultToString</h3><pre class="programlisting">int xsltSaveResultToString (xmlChar ** doc_txt_ptr, <br /> int * doc_txt_len, <br /> xmlDocPtr result, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style)<br />
+</pre><p>Save the result @result obtained by applying the @style stylesheet to a new allocated string.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc_txt_ptr</tt></i>:</span></td><td>Memory pointer for allocated XML text</td></tr><tr><td><span class="term"><i><tt>doc_txt_len</tt></i>:</span></td><td>Length of the generated XML text</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>the result xmlDocPtr</td></tr><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</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="xsltSetCtxtParseOptions" id="xsltSetCtxtParseOptions"></a>Function: xsltSetCtxtParseOptions</h3><pre class="programlisting">int xsltSetCtxtParseOptions (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> int options)<br />
+</pre><p>Change the default parser option passed by the XSLT engine to the parser when using document() loading.</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of libxml2 xmlParserOption</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous options or -1 in case of error</td></tr></tbody></table></div><h3><a name="xsltSetCtxtSortFunc" id="xsltSetCtxtSortFunc"></a>Function: xsltSetCtxtSortFunc</h3><pre class="programlisting">void xsltSetCtxtSortFunc (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a> handler)<br />
+</pre><p>Function to set the handler for XSLT sorting for the specified context. If the handler is NULL, then the global sort function will be called</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 XSLT process context</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new handler function</td></tr></tbody></table></div><h3><a name="xsltSetDebuggerCallbacks" id="xsltSetDebuggerCallbacks"></a>Function: xsltSetDebuggerCallbacks</h3><pre class="programlisting">int xsltSetDebuggerCallbacks (int no, <br /> void * block)<br />
+</pre><p>This function allow to plug a debugger into the XSLT library @block points to a block of memory containing the address of @no callback routines.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>no</tt></i>:</span></td><td>number of callbacks</td></tr><tr><td><span class="term"><i><tt>block</tt></i>:</span></td><td>the block of callbacks</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="xsltSetDebuggerStatus" id="xsltSetDebuggerStatus"></a>Function: xsltSetDebuggerStatus</h3><pre class="programlisting">void xsltSetDebuggerStatus (int value)<br />
+</pre><p>This function sets the value of xslDebugStatus.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to be set</td></tr></tbody></table></div><h3><a name="xsltSetGenericDebugFunc" id="xsltSetGenericDebugFunc"></a>Function: xsltSetGenericDebugFunc</h3><pre class="programlisting">void xsltSetGenericDebugFunc (void * ctx, <br /> xmlGenericErrorFunc handler)<br />
+</pre><p>Function to reset the handler and the error context for out of context error messages. This simply means that @handler will be called for subsequent error messages while not parsing or validating. And @ctx will be passed as first argument to @handler One can simply force messages to be emitted to another FILE * than stderr by setting @ctx to this file handle and @handler to NULL.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the new error handling context</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new handler function</td></tr></tbody></table></div><h3><a name="xsltSetGenericErrorFunc" id="xsltSetGenericErrorFunc"></a>Function: xsltSetGenericErrorFunc</h3><pre class="programlisting">void xsltSetGenericErrorFunc (void * ctx, <br /> xmlGenericErrorFunc handler)<br />
+</pre><p>Function to reset the handler and the error context for out of context error messages. This simply means that @handler will be called for subsequent error messages while not parsing nor validating. And @ctx will be passed as first argument to @handler One can simply force messages to be emitted to another FILE * than stderr by setting @ctx to this file handle and @handler to NULL.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the new error handling context</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new handler function</td></tr></tbody></table></div><h3><a name="xsltSetSortFunc" id="xsltSetSortFunc"></a>Function: xsltSetSortFunc</h3><pre class="programlisting">void xsltSetSortFunc (<a href="libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a> handler)<br />
+</pre><p>Function to reset the global handler for XSLT sorting. If the handler is NULL, the default sort function will be used.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new handler function</td></tr></tbody></table></div><h3><a name="xsltSetTransformErrorFunc" id="xsltSetTransformErrorFunc"></a>Function: xsltSetTransformErrorFunc</h3><pre class="programlisting">void xsltSetTransformErrorFunc (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> void * ctx, <br /> xmlGenericErrorFunc handler)<br />
+</pre><p>Function to reset the handler and the error context for out of context error messages specific to a given XSLT transromation. This simply means that @handler will be called for subsequent error messages while running the transformation.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the new error handling context</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new handler function</td></tr></tbody></table></div><h3><a name="xsltSplitQName" id="xsltSplitQName"></a>Function: xsltSplitQName</h3><pre class="programlisting">const xmlChar * xsltSplitQName (xmlDictPtr dict, <br /> const xmlChar * name, <br /> const xmlChar ** prefix)<br />
+</pre><p>Split QNames into prefix and local names, both allocated from a dictionary.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>a dictionary</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the full QName</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the return value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the localname or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xsltTimestamp" id="xsltTimestamp"></a>Function: xsltTimestamp</h3><pre class="programlisting">long xsltTimestamp (void)<br />
+</pre><p>Used for gathering profiling data</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of tenth of milliseconds since the beginning of the profiling</td></tr></tbody></table></div><h3><a name="xsltTransformError" id="xsltTransformError"></a>Function: xsltTransformError</h3><pre class="programlisting">void xsltTransformError (<a href="libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a> ctxt, <br /> <a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> xmlNodePtr node, <br /> const char * msg, <br /> ... ...)<br />
+</pre><p>Display and format an error messages, gives file, line, position and extra parameters, will use the specific transformation context if available</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XSLT transformation context</td></tr><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the XSLT stylesheet used</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node in the stylesheet</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><h3><a name="xsltXPathCompile" id="xsltXPathCompile"></a>Function: xsltXPathCompile</h3><pre class="programlisting">xmlXPathCompExprPtr xsltXPathCompile (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * str)<br />
+</pre><p>Compile an XPath expression</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the xmlXPathCompExprPtr resulting from the compilation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xsltXPathCompileFlags" id="xsltXPathCompileFlags"></a>Function: xsltXPathCompileFlags</h3><pre class="programlisting">xmlXPathCompExprPtr xsltXPathCompileFlags (<a href="libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a> style, <br /> const xmlChar * str, <br /> int flags)<br />
+</pre><p>Compile an XPath expression</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>style</tt></i>:</span></td><td>the stylesheet</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>flags</tt></i>:</span></td><td>extra compilation flags to pass down to libxml2 XPath</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the xmlXPathCompExprPtr resulting from the compilation or NULL. the caller has to free the object.</td></tr></tbody></table></div><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>
diff --git a/libxslt/doc/html/right.png b/libxslt/doc/html/right.png
new file mode 100644
index 0000000..92832e3
--- /dev/null
+++ b/libxslt/doc/html/right.png
Binary files differ
diff --git a/libxslt/doc/html/up.png b/libxslt/doc/html/up.png
new file mode 100644
index 0000000..85b3e2a
--- /dev/null
+++ b/libxslt/doc/html/up.png
Binary files differ