summaryrefslogtreecommitdiffstats
path: root/libxslt/doc
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2017-05-03 15:29:42 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2017-05-03 15:29:42 (GMT)
commit937cfaf1a06a4a9d0c8ba119d7ce820878ff9058 (patch)
treef7b0b1bcce9ae963a0a069eafa552350eb4ee391 /libxslt/doc
parent4b8453f0303492a1de2dcf854555f6429fac550e (diff)
downloadblt-937cfaf1a06a4a9d0c8ba119d7ce820878ff9058.zip
blt-937cfaf1a06a4a9d0c8ba119d7ce820878ff9058.tar.gz
blt-937cfaf1a06a4a9d0c8ba119d7ce820878ff9058.tar.bz2
inital commit
Diffstat (limited to 'libxslt/doc')
-rw-r--r--libxslt/doc/API.html27
-rw-r--r--libxslt/doc/APIchunk0.html251
-rw-r--r--libxslt/doc/APIchunk1.html276
-rw-r--r--libxslt/doc/APIchunk10.html468
-rw-r--r--libxslt/doc/APIchunk11.html262
-rw-r--r--libxslt/doc/APIchunk12.html337
-rw-r--r--libxslt/doc/APIchunk13.html47
-rw-r--r--libxslt/doc/APIchunk2.html359
-rw-r--r--libxslt/doc/APIchunk3.html387
-rw-r--r--libxslt/doc/APIchunk4.html342
-rw-r--r--libxslt/doc/APIchunk5.html250
-rw-r--r--libxslt/doc/APIchunk6.html254
-rw-r--r--libxslt/doc/APIchunk7.html255
-rw-r--r--libxslt/doc/APIchunk8.html262
-rw-r--r--libxslt/doc/APIchunk9.html275
-rw-r--r--libxslt/doc/APIconstructors.html89
-rw-r--r--libxslt/doc/APIfiles.html581
-rw-r--r--libxslt/doc/APIfunctions.html511
-rw-r--r--libxslt/doc/APIsymbols.html581
-rw-r--r--libxslt/doc/ChangeLog.xsl113
-rw-r--r--libxslt/doc/EXSLT/APIchunk0.html132
-rw-r--r--libxslt/doc/EXSLT/APIconstructors.html10
-rw-r--r--libxslt/doc/EXSLT/APIfiles.html42
-rw-r--r--libxslt/doc/EXSLT/APIfunctions.html18
-rw-r--r--libxslt/doc/EXSLT/APIsymbols.html42
-rw-r--r--libxslt/doc/EXSLT/bugs.html62
-rw-r--r--libxslt/doc/EXSLT/docs.html18
-rw-r--r--libxslt/doc/EXSLT/downloads.html29
-rw-r--r--libxslt/doc/EXSLT/exslt.html214
-rw-r--r--libxslt/doc/EXSLT/help.html24
-rw-r--r--libxslt/doc/EXSLT/html/book1.html10
-rw-r--r--libxslt/doc/EXSLT/html/home.pngbin0 -> 654 bytes
-rw-r--r--libxslt/doc/EXSLT/html/index.html10
-rw-r--r--libxslt/doc/EXSLT/html/left.pngbin0 -> 459 bytes
-rw-r--r--libxslt/doc/EXSLT/html/libexslt-exslt.html62
-rw-r--r--libxslt/doc/EXSLT/html/libexslt-exsltexports.html16
-rw-r--r--libxslt/doc/EXSLT/html/libexslt-lib.html10
-rw-r--r--libxslt/doc/EXSLT/html/right.pngbin0 -> 472 bytes
-rw-r--r--libxslt/doc/EXSLT/html/up.pngbin0 -> 406 bytes
-rw-r--r--libxslt/doc/EXSLT/index.html16
-rw-r--r--libxslt/doc/EXSLT/intro.html22
-rw-r--r--libxslt/doc/EXSLT/libexslt-api.xml148
-rw-r--r--libxslt/doc/EXSLT/libexslt-refs.xml360
-rw-r--r--libxslt/doc/FAQ.html44
-rw-r--r--libxslt/doc/Libxslt-Logo-180x168.gifbin0 -> 8193 bytes
-rw-r--r--libxslt/doc/Libxslt-Logo-90x34.gifbin0 -> 3035 bytes
-rw-r--r--libxslt/doc/Makefile.am328
-rw-r--r--libxslt/doc/api.xsl201
-rwxr-xr-xlibxslt/doc/apibuild.py1914
-rw-r--r--libxslt/doc/bugs.html96
-rw-r--r--libxslt/doc/checkapisym.xsl48
-rw-r--r--libxslt/doc/contexts.fig175
-rw-r--r--libxslt/doc/contexts.gifbin0 -> 10326 bytes
-rw-r--r--libxslt/doc/contribs.html42
-rw-r--r--libxslt/doc/docbook.html65
-rw-r--r--libxslt/doc/docs.html20
-rw-r--r--libxslt/doc/downloads.html31
-rw-r--r--libxslt/doc/duck.pngbin0 -> 10795 bytes
-rw-r--r--libxslt/doc/epatents.pngbin0 -> 1901 bytes
-rw-r--r--libxslt/doc/extensions.html287
-rw-r--r--libxslt/doc/gnome2.pngbin0 -> 3802 bytes
-rw-r--r--libxslt/doc/help.html26
-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
-rw-r--r--libxslt/doc/images/callouts/1.pngbin0 -> 329 bytes
-rw-r--r--libxslt/doc/images/callouts/10.pngbin0 -> 361 bytes
-rw-r--r--libxslt/doc/images/callouts/2.pngbin0 -> 353 bytes
-rw-r--r--libxslt/doc/images/callouts/3.pngbin0 -> 350 bytes
-rw-r--r--libxslt/doc/images/callouts/4.pngbin0 -> 345 bytes
-rw-r--r--libxslt/doc/images/callouts/5.pngbin0 -> 348 bytes
-rw-r--r--libxslt/doc/images/callouts/6.pngbin0 -> 355 bytes
-rw-r--r--libxslt/doc/images/callouts/7.pngbin0 -> 344 bytes
-rw-r--r--libxslt/doc/images/callouts/8.pngbin0 -> 357 bytes
-rw-r--r--libxslt/doc/images/callouts/9.pngbin0 -> 357 bytes
-rw-r--r--libxslt/doc/index.html26
-rwxr-xr-xlibxslt/doc/index.py1248
-rw-r--r--libxslt/doc/internals.html312
-rw-r--r--libxslt/doc/intro.html24
-rw-r--r--libxslt/doc/libxslt-api.xml3201
-rw-r--r--libxslt/doc/libxslt-decl.txt1449
-rw-r--r--libxslt/doc/libxslt-refs.xml8634
-rw-r--r--libxslt/doc/libxslt.xml92
-rw-r--r--libxslt/doc/libxslt.xsa37
-rw-r--r--libxslt/doc/newapi.xsl700
-rw-r--r--libxslt/doc/news.html923
-rw-r--r--libxslt/doc/news.xsl44
-rw-r--r--libxslt/doc/node.fig91
-rw-r--r--libxslt/doc/node.gifbin0 -> 4928 bytes
-rw-r--r--libxslt/doc/object.fig90
-rw-r--r--libxslt/doc/object.gifbin0 -> 4575 bytes
-rw-r--r--libxslt/doc/processing.fig137
-rw-r--r--libxslt/doc/processing.gifbin0 -> 9209 bytes
-rw-r--r--libxslt/doc/python.html173
-rw-r--r--libxslt/doc/redhat.gifbin0 -> 697 bytes
-rw-r--r--libxslt/doc/search.php346
-rw-r--r--libxslt/doc/search.php.inc333
-rw-r--r--libxslt/doc/search.templ11
-rw-r--r--libxslt/doc/search.xml48
-rw-r--r--libxslt/doc/site.xsl464
-rw-r--r--libxslt/doc/smallfootonly.gifbin0 -> 2772 bytes
-rw-r--r--libxslt/doc/stylesheet.fig104
-rw-r--r--libxslt/doc/stylesheet.gifbin0 -> 7050 bytes
-rw-r--r--libxslt/doc/symbols.xml317
-rw-r--r--libxslt/doc/syms.xsl99
-rw-r--r--libxslt/doc/templates.fig138
-rw-r--r--libxslt/doc/templates.gifbin0 -> 8995 bytes
-rw-r--r--libxslt/doc/tutorial/libxslt_tutorial.c84
-rw-r--r--libxslt/doc/tutorial/libxslttutorial.html425
-rw-r--r--libxslt/doc/tutorial/libxslttutorial.xml288
-rw-r--r--libxslt/doc/tutorial2/libxslt_pipes.c127
-rw-r--r--libxslt/doc/tutorial2/libxslt_pipes.html612
-rw-r--r--libxslt/doc/tutorial2/libxslt_pipes.xml661
-rw-r--r--libxslt/doc/w3c.pngbin0 -> 2028 bytes
-rw-r--r--libxslt/doc/xsa.xsl54
-rw-r--r--libxslt/doc/xslt.html2771
-rw-r--r--libxslt/doc/xsltproc.1361
-rw-r--r--libxslt/doc/xsltproc.html101
-rw-r--r--libxslt/doc/xsltproc.xml573
-rw-r--r--libxslt/doc/xsltproc2.html35
144 files changed, 37374 insertions, 0 deletions
diff --git a/libxslt/doc/API.html b/libxslt/doc/API.html
new file mode 100644
index 0000000..bedb6fe
--- /dev/null
+++ b/libxslt/doc/API.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>The programming API</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>The programming API</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p>Okay this section is clearly incomplete. But integrating libxslt into your
+application should be relatively easy. First check the few steps described
+below, then for more detailed information, look at the<a href="html/libxslt-lib.html"> generated pages</a> for the API and the source
+of libxslt/xsltproc.c and the <a href="tutorial/libxslttutorial.html">tutorial</a>.</p><p>Basically doing an XSLT transformation can be done in a few steps:</p><ol>
+ <li>configure the parser for XSLT:
+ <p>xmlSubstituteEntitiesDefault(1);</p>
+ <p>xmlLoadExtDtdDefaultValue = 1;</p>
+ </li>
+ <li>parse the stylesheet with xsltParseStylesheetFile()</li>
+ <li>parse the document with xmlParseFile()</li>
+ <li>apply the stylesheet using xsltApplyStylesheet()</li>
+ <li>save the result using xsltSaveResultToFile() if needed set
+ xmlIndentTreeOutput to 1</li>
+</ol><p>Steps 2,3, and 5 will probably need to be changed depending on you
+processing needs and environment for example if reading/saving from/to
+memory, or if you want to apply XInclude processing to the stylesheet or
+input documents.</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/APIchunk0.html b/libxslt/doc/APIchunk0.html
new file mode 100644
index 0000000..7d21d79
--- /dev/null
+++ b/libxslt/doc/APIchunk0.html
@@ -0,0 +1,251 @@
+<?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>API Alphabetic Index A-I 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>API Alphabetic Index A-I 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter A:</h2><dl><dt>API</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>ATTENTION:</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>AVT</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeAVTList">xsltFreeAVTList</a><br />
+</dd><dt>Add</dt><dd><a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+</dd><dt>Adds</dt><dd><a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+</dd><dt>Allocate</dt><dd><a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+</dd><dt>Apache</dt><dd><a href="html/libxslt-extra.html#XSLT_XALAN_NAMESPACE">XSLT_XALAN_NAMESPACE</a><br />
+</dd><dt>Apply</dt><dd><a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>Attribute</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+</dd></dl><h2>Letter B:</h2><dl><dt>BIG</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd></dl><h2>Letter C:</h2><dl><dt>CDTATA</dt><dd><a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+</dd><dt>Called</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+</dd><dt>Change</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleBasicExpressionItem">_xsltStyleBasicExpressionItem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+</dd><dt>Char</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+</dd><dt>Characters:</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>Check</dt><dd><a href="html/libxslt-xsltutils.html#IS_XSLT_REAL_NODE">IS_XSLT_REAL_NODE</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemDocument">_xsltStyleItemDocument</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltIsBlank">xsltIsBlank</a><br />
+</dd><dt>Checks</dt><dd><a href="html/libxslt-xsltutils.html#IS_XSLT_ELEM">IS_XSLT_ELEM</a><br />
+<a href="html/libxslt-xsltutils.html#IS_XSLT_NAME">IS_XSLT_NAME</a><br />
+<a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+</dd><dt>Clark</dt><dd><a href="html/libxslt-extra.html#XSLT_XT_NAMESPACE">XSLT_XT_NAMESPACE</a><br />
+</dd><dt>Clean-up</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+</dd><dt>Cleanup</dt><dd><a href="html/libxslt-pattern.html#xsltCleanupTemplates">xsltCleanupTemplates</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocales">xsltFreeLocales</a><br />
+</dd><dt>Common</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMMON_FIELDS">XSLT_ITEM_COMMON_FIELDS</a><br />
+</dd><dt>Compares</dt><dd><a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+</dd><dt>Compilation</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>Compile</dt><dd><a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>Computes</dt><dd><a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</dd><dt>Context</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>Control</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TRACE">XSLT_TRACE</a><br />
+</dd><dt>Convert</dt><dd><a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+</dd><dt>Copies</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+</dd><dt>Create</dt><dd><a href="html/libxslt-security.html#xsltNewSecurityPrefs">xsltNewSecurityPrefs</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNewStylesheet">xsltNewStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+</dd><dt>Creates</dt><dd><a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListCreate">xsltPointerListCreate</a><br />
+</dd><dt>Current</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>Currently</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a><br />
+</dd></dl><h2>Letter D:</h2><dl><dt>DTD</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>Deallocates</dt><dd><a href="html/libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a><br />
+</dd><dt>Debugging</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>DecimalFormat</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>Display</dt><dd><a href="html/libxslt-xsltutils.html#xsltPrintErrorContext">xsltPrintErrorContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>Don</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltTemplateProcess">xsltTemplateProcess</a><br />
+</dd><dt>Drop</dt><dd><a href="html/libxslt-xsltutils.html#xslDropCall">xslDropCall</a><br />
+</dd><dt>Dumps</dt><dd><a href="html/libxslt-extensions.html#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a><br />
+</dd></dl><h2>Letter E:</h2><dl><dt>EXSLT</dt><dd><a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+</dd><dt>Each</dt><dd><a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+</dd><dt>Either</dt><dd><a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>Element</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+</dd><dt>Elements</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>Eliminate</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>Errors</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>Evaluate</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+</dd><dt>Evaluates</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+</dd><dt>Exaclty</dt><dd><a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+</dd><dt>Execute</dt><dd><a href="html/libxslt-transform.html#xsltCopy">xsltCopy</a><br />
+</dd><dt>Extensions</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd></dl><h2>Letter F:</h2><dl><dt>FILE</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-extensions.html#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveProfiling">xsltSaveProfiling</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>FIXED</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>Fields</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+</dd><dt>Finalizes</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+</dd><dt>Find</dt><dd><a href="html/libxslt-xsltInternals.html#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+</dd><dt>Finds</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+</dd><dt>Flag</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+</dd><dt>For</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+</dd><dt>Forwards-compatible</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>Fragment</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>Fragments</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+</dd><dt>Free</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFreeAVTList">xsltFreeAVTList</a><br />
+<a href="html/libxslt-attributes.html#xsltFreeAttributeSetsHashes">xsltFreeAttributeSetsHashes</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeCompMatchList">xsltFreeCompMatchList</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeCtxtExts">xsltFreeCtxtExts</a><br />
+<a href="html/libxslt-keys.html#xsltFreeDocumentKeys">xsltFreeDocumentKeys</a><br />
+<a href="html/libxslt-documents.html#xsltFreeDocuments">xsltFreeDocuments</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeExts">xsltFreeExts</a><br />
+<a href="html/libxslt-variables.html#xsltFreeGlobalVariables">xsltFreeGlobalVariables</a><br />
+<a href="html/libxslt-keys.html#xsltFreeKeys">xsltFreeKeys</a><br />
+<a href="html/libxslt-namespaces.html#xsltFreeNamespaceAliasHashes">xsltFreeNamespaceAliasHashes</a><br />
+<a href="html/libxslt-security.html#xsltFreeSecurityPrefs">xsltFreeSecurityPrefs</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStackElemList">xsltFreeStackElemList</a><br />
+<a href="html/libxslt-preproc.html#xsltFreeStylePreComps">xsltFreeStylePreComps</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStylesheet">xsltFreeStylesheet</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeTemplateHashes">xsltFreeTemplateHashes</a><br />
+<a href="html/libxslt-transform.html#xsltFreeTransformContext">xsltFreeTransformContext</a><br />
+</dd><dt>Frees</dt><dd><a href="html/libxslt-xsltlocale.html#xsltFreeLocale">xsltFreeLocale</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+<a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListFree">xsltPointerListFree</a><br />
+</dd><dt>Function</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetSortFunc">xsltSetSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd></dl><h2>Letter G:</h2><dl><dt>General</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>Get</dt><dd><a href="html/libxslt-xsltutils.html#xsltDebugGetDefaultTrace">xsltDebugGetDefaultTrace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetDebuggerStatus">xsltGetDebuggerStatus</a><br />
+<a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+</dd><dt>Global</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd></dl><h2>Letter I:</h2><dl><dt>INTERNAL</dt><dd><a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+</dd><dt>IObuf</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>ISO</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>Implement</dt><dd><a href="html/libxslt-functions.html#xsltDocumentFunction">xsltDocumentFunction</a><br />
+<a href="html/libxslt-functions.html#xsltElementAvailableFunction">xsltElementAvailableFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFormatNumberFunction">xsltFormatNumberFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFunctionAvailableFunction">xsltFunctionAvailableFunction</a><br />
+<a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+<a href="html/libxslt-functions.html#xsltGenerateIdFunction">xsltGenerateIdFunction</a><br />
+<a href="html/libxslt-functions.html#xsltKeyFunction">xsltKeyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltSystemPropertyFunction">xsltSystemPropertyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltUnparsedEntityURIFunction">xsltUnparsedEntityURIFunction</a><br />
+</dd><dt>Indicates</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+</dd><dt>Indicator</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>Initialize</dt><dd><a href="html/libxslt-extensions.html#xsltInitCtxtExts">xsltInitCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltInitGlobals">xsltInitGlobals</a><br />
+</dd><dt>Initializes</dt><dd><a href="html/libxslt-xslt.html#xsltInit">xsltInit</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</dd><dt>Internal</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_VARS">XSLT_REFACTORED_VARS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_XPATHCOMP">XSLT_REFACTORED_XPATHCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk1.html b/libxslt/doc/APIchunk1.html
new file mode 100644
index 0000000..cbe3138
--- /dev/null
+++ b/libxslt/doc/APIchunk1.html
@@ -0,0 +1,276 @@
+<?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>API Alphabetic Index J-S 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>API Alphabetic Index J-S 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter J:</h2><dl><dt>JDK</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>James</dt><dd><a href="html/libxslt-extra.html#XSLT_XT_NAMESPACE">XSLT_XT_NAMESPACE</a><br />
+</dd></dl><h2>Letter K:</h2><dl><dt>Kay</dt><dd><a href="html/libxslt-extra.html#XSLT_SAXON_NAMESPACE">XSLT_SAXON_NAMESPACE</a><br />
+</dd><dt>Key</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd></dl><h2>Letter L:</h2><dl><dt>LR-element</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+</dd><dt>LRE</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+</dd><dt>Length</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</dd><dt>Libexslt</dt><dd><a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+</dd><dt>Libxslt</dt><dd><a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+</dd><dt>Literal</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>Load</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetFile">xsltParseStylesheetFile</a><br />
+</dd><dt>LocationPathPattern</dt><dd><a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+</dd><dt>Looks</dt><dd><a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementLookup">xsltExtModuleElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementPreComputeLookup">xsltExtModuleElementPreComputeLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleFunctionLookup">xsltExtModuleFunctionLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleTopLevelLookup">xsltExtModuleTopLevelLookup</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+</dd><dt>Lookup</dt><dd><a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+</dd></dl><h2>Letter M:</h2><dl><dt>MUST</dt><dd><a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</dd><dt>Macro</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPED">CHECK_STOPPED</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPED0">CHECK_STOPPED0</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+<a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-xsltlocale.html#XSLT_LOCALE_NONE">XSLT_LOCALE_NONE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA">XSLT_RUNTIME_EXTRA</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_FREE">XSLT_RUNTIME_EXTRA_FREE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_LST">XSLT_RUNTIME_EXTRA_LST</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_STRANGE">XSLT_STRANGE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TODO">XSLT_TODO</a><br />
+</dd><dt>Marks</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</dd><dt>Max</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_MAX_SORT">XSLT_MAX_SORT</a><br />
+</dd><dt>May</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDecimalFormat">_xsltDecimalFormat</a><br />
+</dd><dt>Maybe</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>Meaning</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>Memory</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</dd><dt>Michael</dt><dd><a href="html/libxslt-extra.html#XSLT_SAXON_NAMESPACE">XSLT_SAXON_NAMESPACE</a><br />
+</dd></dl><h2>Letter N:</h2><dl><dt>NCName</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>NOTE</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+</dd><dt>NOTE:</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>Name</dt><dd><a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+</dd><dt>Namespace</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>Namespaces</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>Needed</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>Norm</dt><dd><a href="html/libxslt-extra.html#XSLT_NORM_SAXON_NAMESPACE">XSLT_NORM_SAXON_NAMESPACE</a><br />
+</dd><dt>Not</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</dd><dt>Not-a-number</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDecimalFormat">_xsltDecimalFormat</a><br />
+</dd><dt>Notation:</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>Note</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>Number</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd></dl><h2>Letter O:</h2><dl><dt>ONLY</dt><dd><a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+</dd><dt>Obsolete</dt><dd><a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-templates.html#xsltTemplateProcess">xsltTemplateProcess</a><br />
+</dd><dt>One</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>Otherwise</dt><dd><a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+</dd><dt>Output</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd></dl><h2>Letter P:</h2><dl><dt>Parser</dt><dd><a href="html/libxslt-functions.html#xsltDocumentFunction">xsltDocumentFunction</a><br />
+<a href="html/libxslt-functions.html#xsltElementAvailableFunction">xsltElementAvailableFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFormatNumberFunction">xsltFormatNumberFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFunctionAvailableFunction">xsltFunctionAvailableFunction</a><br />
+<a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+<a href="html/libxslt-functions.html#xsltGenerateIdFunction">xsltGenerateIdFunction</a><br />
+<a href="html/libxslt-functions.html#xsltKeyFunction">xsltKeyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltSystemPropertyFunction">xsltSystemPropertyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltUnparsedEntityURIFunction">xsltUnparsedEntityURIFunction</a><br />
+</dd><dt>Parses</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalVariable">xsltParseGlobalVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>Pattern</dt><dd><a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+</dd><dt>Per</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>Places</dt><dd><a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+</dd><dt>Pops</dt><dd><a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+</dd><dt>Pre</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+</dd><dt>Precompile</dt><dd><a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+</dd><dt>Precompute</dt><dd><a href="html/libxslt-preproc.html#xsltStylePreCompute">xsltStylePreCompute</a><br />
+</dd><dt>Precomputed</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>Precomputes</dt><dd><a href="html/libxslt-extensions.html#xsltPreComputeExtModuleElement">xsltPreComputeExtModuleElement</a><br />
+</dd><dt>Process</dt><dd><a href="html/libxslt-transform.html#xsltApplyImports">xsltApplyImports</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-transform.html#xsltAttribute">xsltAttribute</a><br />
+<a href="html/libxslt-transform.html#xsltComment">xsltComment</a><br />
+<a href="html/libxslt-transform.html#xsltCopyOf">xsltCopyOf</a><br />
+<a href="html/libxslt-extra.html#xsltDebug">xsltDebug</a><br />
+<a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+<a href="html/libxslt-transform.html#xsltElement">xsltElement</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+<a href="html/libxslt-xsltutils.html#xsltMessage">xsltMessage</a><br />
+<a href="html/libxslt-transform.html#xsltNumber">xsltNumber</a><br />
+<a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+<a href="html/libxslt-transform.html#xsltProcessingInstruction">xsltProcessingInstruction</a><br />
+<a href="html/libxslt-transform.html#xsltText">xsltText</a><br />
+<a href="html/libxslt-transform.html#xsltValueOf">xsltValueOf</a><br />
+</dd><dt>Processes</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyTemplates">xsltApplyTemplates</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-transform.html#xsltCallTemplate">xsltCallTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltChoose">xsltChoose</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-transform.html#xsltIf">xsltIf</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+</dd><dt>Profiling</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+</dd><dt>Provides</dt><dd><a href="html/libxslt-transform.html#xsltGetXIncludeDefault">xsltGetXIncludeDefault</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</dd><dt>Push</dt><dd><a href="html/libxslt-variables.html#xsltAddStackElemList">xsltAddStackElemList</a><br />
+</dd></dl><h2>Letter Q:</h2><dl><dt>QName</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>QNames</dt><dd><a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>QUESTION:</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+</dd></dl><h2>Letter R:</h2><dl><dt>REVISIT</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>REVISIT:</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>RFC</dt><dd><a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+</dd><dt>ROUTINE</dt><dd><a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+</dd><dt>RTF</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>RVT</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>RVTs</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>Read</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+</dd><dt>Register</dt><dd><a href="html/libxslt-pattern.html#xsltAddTemplate">xsltAddTemplate</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+</dd><dt>Registering</dt><dd><a href="html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a><br />
+<a href="html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a><br />
+</dd><dt>Registers</dt><dd><a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a><br />
+<a href="html/libxslt-transform.html#xsltRegisterAllElement">xsltRegisterAllElement</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterAllExtras">xsltRegisterAllExtras</a><br />
+<a href="html/libxslt-functions.html#xsltRegisterAllFunctions">xsltRegisterAllFunctions</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleElement">xsltRegisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFunction">xsltRegisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleTopLevel">xsltRegisterExtModuleTopLevel</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterExtras">xsltRegisterExtras</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterTestModule">xsltRegisterTestModule</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>Resets</dt><dd><a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+</dd><dt>Restore</dt><dd><a href="html/libxslt-xsltInternals.html#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a><br />
+</dd><dt>Result</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>Retrieve</dt><dd><a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+</dd><dt>Rule</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd></dl><h2>Letter S:</h2><dl><dt>SAX</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>SAXON</dt><dd><a href="html/libxslt-extra.html#XSLT_NORM_SAXON_NAMESPACE">XSLT_NORM_SAXON_NAMESPACE</a><br />
+</dd><dt>Sampling</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TIMESTAMP_TICS_PER_SEC">XSLT_TIMESTAMP_TICS_PER_SEC</a><br />
+</dd><dt>Save</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveProfiling">xsltSaveProfiling</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</dd><dt>Saxon</dt><dd><a href="html/libxslt-extra.html#XSLT_SAXON_NAMESPACE">XSLT_SAXON_NAMESPACE</a><br />
+</dd><dt>Scaling</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+</dd><dt>Search</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-variables.html#xsltVariableLookup">xsltVariableLookup</a><br />
+</dd><dt>Set</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugSetDefaultTrace">xsltDebugSetDefaultTrace</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-documents.html#xsltSetLoaderFunc">xsltSetLoaderFunc</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+</dd><dt>Should</dt><dd><a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</dd><dt>Shutdown</dt><dd><a href="html/libxslt-extensions.html#xsltShutdownCtxtExts">xsltShutdownCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownExts">xsltShutdownExts</a><br />
+</dd><dt>Signature</dt><dd><a href="html/libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+</dd><dt>Similar</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>Size</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>Special</dt><dd><a href="html/libxslt-namespaces.html#UNDEFINED_DEFAULT_NS">UNDEFINED_DEFAULT_NS</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>Specific</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_PAT_NO_PRIORITY">XSLT_PAT_NO_PRIORITY</a><br />
+</dd><dt>Speed</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>Split</dt><dd><a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>Storage</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>Strip</dt><dd><a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+</dd><dt>Structure:</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>Stylesheet</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNewStylesheet">xsltNewStylesheet</a><br />
+</dd><dt>Symbol</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk10.html b/libxslt/doc/APIchunk10.html
new file mode 100644
index 0000000..5bae01f
--- /dev/null
+++ b/libxslt/doc/APIchunk10.html
@@ -0,0 +1,468 @@
+<?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>API Alphabetic Index q-s 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>API Alphabetic Index q-s 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter q:</h2><dl><dt>query</dt><dd><a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+</dd><dt>quick</dt><dd><a href="html/libxslt-xsltInternals.html#IS_XSLT_ATTR_FAST">IS_XSLT_ATTR_FAST</a><br />
+<a href="html/libxslt-xsltInternals.html#IS_XSLT_ELEM_FAST">IS_XSLT_ELEM_FAST</a><br />
+</dd><dt>quote</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd></dl><h2>Letter r:</h2><dl><dt>raise</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>rank=</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>read</dt><dd><a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>read:</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemDocument">_xsltStyleItemDocument</a><br />
+</dd><dt>ready</dt><dd><a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+</dd><dt>real</dt><dd><a href="html/libxslt-xsltutils.html#IS_XSLT_REAL_NODE">IS_XSLT_REAL_NODE</a><br />
+</dd><dt>really</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+</dd><dt>record</dt><dd><a href="html/libxslt-variables.html#xsltParseGlobalParam">xsltParseGlobalParam</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a><br />
+</dd><dt>recorded</dt><dd><a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+</dd><dt>recursive</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>refactored</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_VARS">XSLT_REFACTORED_VARS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</dd><dt>reference</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>references</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-attributes.html#xsltResolveStylesheetAttributeSet">xsltResolveStylesheetAttributeSet</a><br />
+</dd><dt>referencing</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>reflect</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+</dd><dt>reflected</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>register</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+</dd><dt>registered</dt><dd><a href="html/libxslt-extensions.html#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+<a href="html/libxslt-extensions.html#xsltInitCtxtExts">xsltInitCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+</dd><dt>registers</dt><dd><a href="html/libxslt-xslt.html#xsltInit">xsltInit</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalVariable">xsltParseGlobalVariable</a><br />
+</dd><dt>related</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a><br />
+</dd><dt>remain</dt><dd><a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+</dd><dt>remove</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+</dd><dt>reorder</dt><dd><a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+</dd><dt>replace</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>replacement</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+</dd><dt>report</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>reports</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>represented</dt><dd><a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+</dd><dt>representing</dt><dd><a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+</dd><dt>requested</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>required</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd><dt>requirement</dt><dd><a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+</dd><dt>requires</dt><dd><a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+</dd><dt>reset</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetSortFunc">xsltSetSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd><dt>resets</dt><dd><a href="html/libxslt-documents.html#xsltSetLoaderFunc">xsltSetLoaderFunc</a><br />
+</dd><dt>resolve</dt><dd><a href="html/libxslt-attributes.html#xsltResolveStylesheetAttributeSet">xsltResolveStylesheetAttributeSet</a><br />
+</dd><dt>resource</dt><dd><a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>respect</dt><dd><a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+</dd><dt>restored</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>restricts</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>result-prefix</dt><dd><a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+</dd><dt>result-tree</dt><dd><a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+</dd><dt>resulting</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>results</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+</dd><dt>retrieve</dt><dd><a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</dd><dt>return</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPED">CHECK_STOPPED</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPED0">CHECK_STOPPED0</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>returned</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>reuse</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>rid</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>right</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>root</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+</dd><dt>routine</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltRuntimeExtra">_xsltRuntimeExtra</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+</dd><dt>routines</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+</dd><dt>rule</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>rules</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>run</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>run-time</dt><dd><a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+</dd><dt>running</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd><dt>runtime</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd></dl><h2>Letter s:</h2><dl><dt>s390</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>same</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>sane</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>saving</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveProfiling">xsltSaveProfiling</a><br />
+</dd><dt>saxon</dt><dd><a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+</dd><dt>scanner</dt><dd><a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+</dd><dt>scope</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltKeyDef">_xsltKeyDef</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+</dd><dt>seaches</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>search</dt><dd><a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+</dd><dt>section</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>security</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-security.html#xsltFreeSecurityPrefs">xsltFreeSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltNewSecurityPrefs">xsltNewSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</dd><dt>see</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+</dd><dt>semantic</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>separates</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>separator</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>sequence</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+</dd><dt>set</dt><dd><a href="html/libxslt-keys.html#NODE_IS_KEYED">NODE_IS_KEYED</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_MARK_RES_TREE_FRAG">XSLT_MARK_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-xslt.html#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xslt.html#xsltCleanupGlobals">xsltCleanupGlobals</a><br />
+<a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-extensions.html#xsltInitCtxtExts">xsltInitCtxtExts</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerStatus">xsltSetDebuggerStatus</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownCtxtExts">xsltShutdownCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownExts">xsltShutdownExts</a><br />
+</dd><dt>sets</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-attributes.html#xsltFreeAttributeSetsHashes">xsltFreeAttributeSetsHashes</a><br />
+<a href="html/libxslt-attributes.html#xsltResolveStylesheetAttributeSet">xsltResolveStylesheetAttributeSet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerStatus">xsltSetDebuggerStatus</a><br />
+</dd><dt>setting</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>shared</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>sheet</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+</dd><dt>should</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPED">CHECK_STOPPED</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPED0">CHECK_STOPPED0</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+</dd><dt>show</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>shows</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>shutdown</dt><dd><a href="html/libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocales">xsltFreeLocales</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a><br />
+</dd><dt>sibling</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+</dd><dt>side</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>signalled</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>signature</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd><dt>similar</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+</dd><dt>simplified</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>simply</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd><dt>since</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+</dd><dt>single</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+</dd><dt>size</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListCreate">xsltPointerListCreate</a><br />
+</dd><dt>slightly</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>slot</dt><dd><a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+</dd><dt>slow</dt><dd><a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+</dd><dt>some</dt><dd><a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+</dd><dt>something</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>sorted</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+</dd><dt>sorting</dt><dd><a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetSortFunc">xsltSetSortFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a><br />
+</dd><dt>sorts</dt><dd><a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a><br />
+</dd><dt>space</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-documents.html#xsltFreeDocuments">xsltFreeDocuments</a><br />
+<a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+</dd><dt>spaces</dt><dd><a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+</dd><dt>spec</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>special</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>specialCharacters</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>specific</dt><dd><a href="html/libxslt-extra.html#XSLT_LIBXSLT_NAMESPACE">XSLT_LIBXSLT_NAMESPACE</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>specification</dt><dd><a href="html/libxslt-xslt.html#XSLT_NAMESPACE">XSLT_NAMESPACE</a><br />
+</dd><dt>specified</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_MAX_SORT">XSLT_MAX_SORT</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+</dd><dt>specify</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>spent</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+</dd><dt>stack</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-xsltutils.html#xslDropCall">xslDropCall</a><br />
+<a href="html/libxslt-variables.html#xsltAddStackElemList">xsltAddStackElemList</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStackElemList">xsltFreeStackElemList</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+</dd><dt>standalone</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>start</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+</dd><dt>start-node</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+</dd><dt>starting</dt><dd><a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>state</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-pattern.html#xsltCleanupTemplates">xsltCleanupTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-transform.html#xsltGetXIncludeDefault">xsltGetXIncludeDefault</a><br />
+</dd><dt>states</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>static</dt><dd><a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+</dd><dt>statically</dt><dd><a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+</dd><dt>status</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>stderr</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>stdout</dt><dd><a href="html/libxslt-extensions.html#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a><br />
+</dd><dt>steps</dt><dd><a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+</dd><dt>still</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</dd><dt>stopped</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPED">CHECK_STOPPED</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPED0">CHECK_STOPPED0</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+</dd><dt>storage</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+</dd><dt>store</dt><dd><a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</dd><dt>stored</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA">XSLT_RUNTIME_EXTRA</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_FREE">XSLT_RUNTIME_EXTRA_FREE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_LST">XSLT_RUNTIME_EXTRA_LST</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+</dd><dt>stores</dt><dd><a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>str1</dt><dd><a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+</dd><dt>str2</dt><dd><a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+</dd><dt>strict</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>string?</dt><dd><a href="html/libxslt-functions.html#xsltFormatNumberFunction">xsltFormatNumberFunction</a><br />
+</dd><dt>strings</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+</dd><dt>strip-space</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+</dd><dt>stripped</dt><dd><a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+</dd><dt>stripping</dt><dd><a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+</dd><dt>struct</dt><dd><a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</dd><dt>structure</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsMap">_xsltNsMap</a><br />
+<a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetFile">xsltParseStylesheetFile</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListCreate">xsltPointerListCreate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListFree">xsltPointerListFree</a><br />
+</dd><dt>structured</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>structures</dt><dd><a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeAVTList">xsltFreeAVTList</a><br />
+<a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>stuff</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>style</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>stylesheet-level</dt><dd><a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>stylesheet-modules</dt><dd><a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+</dd><dt>stylesheet-prefix</dt><dd><a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+</dd><dt>stylesheets</dt><dd><a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>subpattern</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>subpattern{</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>subpattern}</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>subsequent</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd><dt>subsidiary</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+</dd><dt>substituted</dt><dd><a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+</dd><dt>substitution</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>subtree</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>success</dt><dd><a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-variables.html#xsltAddStackElemList">xsltAddStackElemList</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetImport">xsltParseStylesheetImport</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetInclude">xsltParseStylesheetInclude</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+</dd><dt>successful</dt><dd><a href="html/libxslt-extensions.html#xsltRegisterExtModuleElement">xsltRegisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFunction">xsltRegisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleTopLevel">xsltRegisterExtModuleTopLevel</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleElement">xsltUnregisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleFunction">xsltUnregisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleTopLevel">xsltUnregisterExtModuleTopLevel</a><br />
+</dd><dt>sucess</dt><dd><a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+</dd><dt>sucessful</dt><dd><a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModule">xsltUnregisterExtModule</a><br />
+</dd><dt>such</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+</dd><dt>suffix</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>suggested</dt><dd><a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>suitable</dt><dd><a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+</dd><dt>sun</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>support</dt><dd><a href="html/libxslt-xsltlocale.html#xsltFreeLocales">xsltFreeLocales</a><br />
+</dd><dt>supported</dt><dd><a href="html/libxslt-xslt.html#XSLT_DEFAULT_VERSION">XSLT_DEFAULT_VERSION</a><br />
+<a href="html/libxslt-xsltlocale.html#XSLT_LOCALE_NONE">XSLT_LOCALE_NONE</a><br />
+</dd><dt>sure</dt><dd><a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+</dd><dt>system</dt><dd><a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+</dd><dt>system-property</dt><dd><a href="html/libxslt-functions.html#xsltSystemPropertyFunction">xsltSystemPropertyFunction</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk11.html b/libxslt/doc/APIchunk11.html
new file mode 100644
index 0000000..eea7cc8
--- /dev/null
+++ b/libxslt/doc/APIchunk11.html
@@ -0,0 +1,262 @@
+<?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>API Alphabetic Index t-u 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>API Alphabetic Index t-u 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter t:</h2><dl><dt>table</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+<a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+</dd><dt>tables</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</dd><dt>tag</dt><dd><a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+</dd><dt>target</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>targetted</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+</dd><dt>temlate</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+</dd><dt>templates</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-pattern.html#xsltCleanupTemplates">xsltCleanupTemplates</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeAVTList">xsltFreeAVTList</a><br />
+</dd><dt>templtaes</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>templtes</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>temporary</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+</dd><dt>tenth</dt><dd><a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+</dd><dt>term</dt><dd><a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+</dd><dt>term:</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>terminated</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>terms</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+</dd><dt>test</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_IS_RES_TREE_FRAG">XSLT_IS_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterTestModule">xsltRegisterTestModule</a><br />
+</dd><dt>test=</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+</dd><dt>tests</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+</dd><dt>text</dt><dd><a href="html/libxslt-xsltutils.html#IS_XSLT_REAL_NODE">IS_XSLT_REAL_NODE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_IS_TEXT_NODE">XSLT_IS_TEXT_NODE</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemText">_xsltStyleItemText</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+<a href="html/libxslt-transform.html#xsltText">xsltText</a><br />
+</dd><dt>than</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>that</dt><dd><a href="html/libxslt-xsltutils.html#IS_XSLT_ELEM">IS_XSLT_ELEM</a><br />
+<a href="html/libxslt-xsltutils.html#IS_XSLT_REAL_NODE">IS_XSLT_REAL_NODE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltlocale.html#XSLT_LOCALE_NONE">XSLT_LOCALE_NONE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_STRANGE">XSLT_STRANGE</a><br />
+<a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</dd><dt>them</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+</dd><dt>themselve</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd><dt>then</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>there</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-transform.html#xsltGetXIncludeDefault">xsltGetXIncludeDefault</a><br />
+</dd><dt>they</dt><dd><a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+</dd><dt>those</dt><dd><a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>time</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalVariable">xsltParseGlobalVariable</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a><br />
+</dd><dt>time=</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>top-level</dt><dd><a href="html/libxslt-extensions.html#xsltExtModuleTopLevelLookup">xsltExtModuleTopLevelLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleTopLevel">xsltRegisterExtModuleTopLevel</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleTopLevel">xsltUnregisterExtModuleTopLevel</a><br />
+</dd><dt>topmost</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltutils.html#xslDropCall">xslDropCall</a><br />
+</dd><dt>tracing</dt><dd><a href="html/libxslt-xsltutils.html#xsltDebugGetDefaultTrace">xsltDebugGetDefaultTrace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugSetDefaultTrace">xsltDebugSetDefaultTrace</a><br />
+</dd><dt>track</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>transfer</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+</dd><dt>transform</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>transformation-time</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>transformations</dt><dd><a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>transformed</dt><dd><a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>transmit</dt><dd><a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>transromation</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd><dt>treated</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>trees</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+</dd><dt>tries</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>trigger</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+</dd><dt>true</dt><dd><a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+</dd><dt>try</dt><dd><a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>tuples</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>turned</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>two</dt><dd><a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+</dd><dt>type</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TRACE">XSLT_TRACE</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+</dd></dl><h2>Letter u:</h2><dl><dt>ultimately</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+</dd><dt>undeclare</dt><dd><a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>undefined</dt><dd><a href="html/libxslt-namespaces.html#UNDEFINED_DEFAULT_NS">UNDEFINED_DEFAULT_NS</a><br />
+</dd><dt>unfortunately</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>unimplemented</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TODO">XSLT_TODO</a><br />
+</dd><dt>unless</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>unparsed-entity-uri</dt><dd><a href="html/libxslt-functions.html#xsltUnparsedEntityURIFunction">xsltUnparsedEntityURIFunction</a><br />
+</dd><dt>unstructured</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>unused</dt><dd><a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+</dd><dt>unwanted</dt><dd><a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+</dd><dt>update</dt><dd><a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</dd><dt>usage</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+</dd><dt>use</dt><dd><a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterExtras">xsltRegisterExtras</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a><br />
+<a href="html/libxslt-templates.html#xsltTemplateProcess">xsltTemplateProcess</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>use:</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>useful</dt><dd><a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</dd><dt>usefull</dt><dd><a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</dd><dt>user</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</dd><dt>user-code</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+</dd><dt>users!</dt><dd><a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+</dd><dt>uses</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>using</dt><dd><a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk12.html b/libxslt/doc/APIchunk12.html
new file mode 100644
index 0000000..0bc524b
--- /dev/null
+++ b/libxslt/doc/APIchunk12.html
@@ -0,0 +1,337 @@
+<?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>API Alphabetic Index v-x 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>API Alphabetic Index v-x 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter v:</h2><dl><dt>validates</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+</dd><dt>validating</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>value-of</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemApplyTemplates">_xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemSort">_xsltStyleItemSort</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-transform.html#xsltValueOf">xsltValueOf</a><br />
+</dd><dt>value-returning</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</dd><dt>values</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>variables</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xslt.html#xsltCleanupGlobals">xsltCleanupGlobals</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-variables.html#xsltFreeGlobalVariables">xsltFreeGlobalVariables</a><br />
+<a href="html/libxslt-extensions.html#xsltInitGlobals">xsltInitGlobals</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+</dd><dt>varibale</dt><dd><a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</dd><dt>varibales</dt><dd><a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</dd><dt>vendor</dt><dd><a href="html/libxslt-xslt.html#XSLT_DEFAULT_URL">XSLT_DEFAULT_URL</a><br />
+<a href="html/libxslt-xslt.html#XSLT_DEFAULT_VENDOR">XSLT_DEFAULT_VENDOR</a><br />
+</dd><dt>version</dt><dd><a href="html/libxslt-xslt.html#XSLT_DEFAULT_VERSION">XSLT_DEFAULT_VERSION</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>version=</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>via</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</dd><dt>violated</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>visible</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>void</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</dd></dl><h2>Letter w:</h2><dl><dt>want</dt><dd><a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+</dd><dt>warning</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>warnings</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>was</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_STRANGE">XSLT_STRANGE</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+</dd><dt>way</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>well</dt><dd><a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+</dd><dt>went</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>were</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>when</dt><dd><a href="html/libxslt-xslt.html#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</dd><dt>where</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>wherever</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>whether</dt><dd><a href="html/libxslt-xsltInternals.html#IS_XSLT_ELEM_FAST">IS_XSLT_ELEM_FAST</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+<a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</dd><dt>which</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>while</dt><dd><a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd><dt>white-space</dt><dd><a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+</dd><dt>whitespace-stripping</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>wildcards</dt><dd><a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+</dd><dt>wise</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>with</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPED0">CHECK_STOPPED0</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocale">xsltFreeLocale</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-extensions.html#xsltInitCtxtExts">xsltInitCtxtExts</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>with-params</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemApplyTemplates">_xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemCallTemplate">_xsltStyleItemCallTemplate</a><br />
+</dd><dt>within</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadDocument">xsltLoadDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>without</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_PAT_NO_PRIORITY">XSLT_PAT_NO_PRIORITY</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>won</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>work</dt><dd><a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+</dd><dt>wrapped</dt><dd><a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+</dd><dt>wrapper</dt><dd><a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+</dd><dt>write</dt><dd><a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+</dd><dt>written</dt><dd><a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+</dd><dt>wrt</dt><dd><a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+</dd></dl><h2>Letter x:</h2><dl><dt>xmlDoc</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>xmlDocPtr</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</dd><dt>xmlFree</dt><dd><a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>xmlFreeDoc</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>xmlGetNsProp</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>xmlGetUTF8Char</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+</dd><dt>xmlNodePtr</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>xmlNs</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltNsMap">_xsltNsMap</a><br />
+</dd><dt>xmlNsPtr</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>xmlParserOption</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+</dd><dt>xmlReadxxx</dt><dd><a href="html/libxslt-xslt.html#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a><br />
+</dd><dt>xmlXPathCompExprPtr</dt><dd><a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>xmlXPathCompiledEvalToBoolean</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+</dd><dt>xmlns=</dt><dd><a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>xsl</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TRACE">XSLT_TRACE</a><br />
+</dd><dt>xsl:</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+</dd><dt>xsl:apply-templates</dt><dd><a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+</dd><dt>xsl:choose</dt><dd><a href="html/libxslt-transform.html#xsltChoose">xsltChoose</a><br />
+</dd><dt>xsl:comment</dt><dd><a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+</dd><dt>xsl:for-each</dt><dd><a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+</dd><dt>xsl:if</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+<a href="html/libxslt-transform.html#xsltIf">xsltIf</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+</dd><dt>xsl:import</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd><dt>xsl:include</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd><dt>xsl:key</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+</dd><dt>xsl:message</dt><dd><a href="html/libxslt-xsltutils.html#xsltMessage">xsltMessage</a><br />
+</dd><dt>xsl:namespace-alias</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+</dd><dt>xsl:param</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+</dd><dt>xsl:processing-instruction</dt><dd><a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+</dd><dt>xsl:sort</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_MAX_SORT">XSLT_MAX_SORT</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+</dd><dt>xsl:template</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>xsl:text</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+</dd><dt>xsl:use-attribute-set</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+</dd><dt>xsl:use-attribute-sets</dt><dd><a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+</dd><dt>xsl:variable</dt><dd><a href="html/libxslt-variables.html#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a><br />
+</dd><dt>xsl:with-param</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+</dd><dt>xslDebugBreak</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+</dd><dt>xslDebugStatus</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetDebuggerStatus">xsltGetDebuggerStatus</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerStatus">xsltSetDebuggerStatus</a><br />
+</dd><dt>xslt</dt><dd><a href="html/libxslt-xsltInternals.html#IS_XSLT_ATTR_FAST">IS_XSLT_ATTR_FAST</a><br />
+<a href="html/libxslt-xsltInternals.html#IS_XSLT_ELEM_FAST">IS_XSLT_ELEM_FAST</a><br />
+<a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-transform.html#xsltAttribute">xsltAttribute</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-transform.html#xsltComment">xsltComment</a><br />
+<a href="html/libxslt-transform.html#xsltElement">xsltElement</a><br />
+<a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+<a href="html/libxslt-transform.html#xsltNumber">xsltNumber</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-transform.html#xsltProcessingInstruction">xsltProcessingInstruction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+<a href="html/libxslt-transform.html#xsltText">xsltText</a><br />
+<a href="html/libxslt-transform.html#xsltValueOf">xsltValueOf</a><br />
+</dd><dt>xslt:text</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+</dd><dt>xsltAddTemplate</dt><dd><a href="html/libxslt-pattern.html#xsltFreeTemplateHashes">xsltFreeTemplateHashes</a><br />
+</dd><dt>xsltApplySequenceConstructor</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+</dd><dt>xsltAttrTemplateValueProcess</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+</dd><dt>xsltCopyPropList</dt><dd><a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+</dd><dt>xsltCopyTreeInternal</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+</dd><dt>xsltCreateRVT</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</dd><dt>xsltDecimalFormatPtr</dt><dd><a href="html/libxslt-xsltInternals.html#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a><br />
+</dd><dt>xsltDocLoaderFunc</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd><dt>xsltDocument</dt><dd><a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+</dd><dt>xsltDocumentComp</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemDocument">_xsltStyleItemDocument</a><br />
+</dd><dt>xsltDocumentPtr</dt><dd><a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadDocument">xsltLoadDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+</dd><dt>xsltElemPreComp</dt><dd><a href="html/libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+</dd><dt>xsltElement</dt><dd><a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+</dd><dt>xsltEvalAttrValueTemplate</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+</dd><dt>xsltEvalUserParams</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>xsltEvalVariable</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>xsltExtElementPreCompTest</dt><dd><a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+</dd><dt>xsltExtInitTest</dt><dd><a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+</dd><dt>xsltGetInheritedNsList</dt><dd><a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+</dd><dt>xsltGetNamespace</dt><dd><a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+</dd><dt>xsltGetQNameURI</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+</dd><dt>xsltGetTemplate</dt><dd><a href="html/libxslt-pattern.html#xsltFreeTemplateHashes">xsltFreeTemplateHashes</a><br />
+</dd><dt>xsltLoadType</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd><dt>xsltLocaleStrcmp</dt><dd><a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>xsltNewLocale</dt><dd><a href="html/libxslt-xsltlocale.html#xsltFreeLocale">xsltFreeLocale</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>xsltParseExtElemPrefixes</dt><dd><a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+</dd><dt>xsltParseStylesheetImportedDoc</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>xsltParseStylesheetInclude</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>xsltParseTemplateContent</dt><dd><a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+</dd><dt>xsltPointerList</dt><dd><a href="html/libxslt-xsltInternals.html#xsltPointerListCreate">xsltPointerListCreate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListFree">xsltPointerListFree</a><br />
+</dd><dt>xsltPrecomputeStylesheet</dt><dd><a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+</dd><dt>xsltProcessOneUserParamInternal</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+</dd><dt>xsltQuoteOneUserParam</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+</dd><dt>xsltQuoteUserParams</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+</dd><dt>xsltRegisterAllExtras</dt><dd><a href="html/libxslt-extra.html#xsltRegisterExtras">xsltRegisterExtras</a><br />
+</dd><dt>xsltRegisterExtPrefix</dt><dd><a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+</dd><dt>xsltRegisterLocalRVT</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>xsltSecurityPrefsPtr</dt><dd><a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+</dd><dt>xsltSetCtxtSortFunc</dt><dd><a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+</dd><dt>xsltSetSortFunc</dt><dd><a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+</dd><dt>xsltShallowCopyElem</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>xsltShallowCopyElement</dt><dd><a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+</dd><dt>xsltStackElemPtr</dt><dd><a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+</dd><dt>xsltStrxfrm</dt><dd><a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+</dd><dt>xsltStylesheet</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+</dd><dt>xsltStylesheetPtr</dt><dd><a href="html/libxslt-xsltInternals.html#xsltNewStylesheet">xsltNewStylesheet</a><br />
+</dd><dt>xsltTemplatePtr</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+</dd><dt>xsltTimestamp</dt><dd><a href="html/libxslt-xsltutils.html#xsltCalibrateAdjust">xsltCalibrateAdjust</a><br />
+</dd><dt>xsltTransformContextPtr</dt><dd><a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk13.html b/libxslt/doc/APIchunk13.html
new file mode 100644
index 0000000..5388c24
--- /dev/null
+++ b/libxslt/doc/APIchunk13.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>API Alphabetic Index y-z 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>API Alphabetic Index y-z 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter y:</h2><dl><dt>yes</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+</dd><dt>yet</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>you</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+</dd><dt>your</dt><dd><a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+</dd></dl><h2>Letter z:</h2><dl><dt>zero</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk2.html b/libxslt/doc/APIchunk2.html
new file mode 100644
index 0000000..00a8a0c
--- /dev/null
+++ b/libxslt/doc/APIchunk2.html
@@ -0,0 +1,359 @@
+<?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>API Alphabetic Index T-a 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>API Alphabetic Index T-a 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter T:</h2><dl><dt>TEMP</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>TODO:</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleBasicExpressionItem">_xsltStyleBasicExpressionItem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemApplyTemplates">_xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemCallTemplate">_xsltStyleItemCallTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemDocument">_xsltStyleItemDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>Template</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>Templates</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+</dd><dt>Test</dt><dd><a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</dd><dt>That</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+</dd><dt>TransformContext</dt><dd><a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+</dd><dt>Transforms</dt><dd><a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>Tree</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>Try</dt><dd><a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadDocument">xsltLoadDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+</dd></dl><h2>Letter U:</h2><dl><dt>URL</dt><dd><a href="html/libxslt-xslt.html#XSLT_DEFAULT_URL">XSLT_DEFAULT_URL</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemDocument">_xsltStyleItemDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetFile">xsltParseStylesheetFile</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+</dd><dt>UTF-8</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>UTF8</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>Uninitializes</dt><dd><a href="html/libxslt-xsltInternals.html#xsltUninit">xsltUninit</a><br />
+</dd><dt>Unregister</dt><dd><a href="html/libxslt-xslt.html#xsltCleanupGlobals">xsltCleanupGlobals</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModule">xsltUnregisterExtModule</a><br />
+</dd><dt>Unregisters</dt><dd><a href="html/libxslt-extensions.html#xsltUnregisterExtModuleElement">xsltUnregisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleFunction">xsltUnregisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleTopLevel">xsltUnregisterExtModuleTopLevel</a><br />
+</dd><dt>Update</dt><dd><a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</dd><dt>Use</dt><dd><a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>Used</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDecimalFormat">_xsltDecimalFormat</a><br />
+<a href="html/libxslt-xsltutils.html#xsltCalibrateAdjust">xsltCalibrateAdjust</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+</dd><dt>User</dt><dd><a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+</dd></dl><h2>Letter V:</h2><dl><dt>Value</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+</dd><dt>Variable</dt><dd><a href="html/libxslt-variables.html#xsltVariableLookup">xsltVariableLookup</a><br />
+</dd></dl><h2>Letter W:</h2><dl><dt>WITH_XSLT_DEBUG_BREAKPOINTS</dt><dd><a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+</dd><dt>Why</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+</dd><dt>Will</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPED">CHECK_STOPPED</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPED0">CHECK_STOPPED0</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+</dd></dl><h2>Letter X:</h2><dl><dt>XALAN</dt><dd><a href="html/libxslt-extra.html#XSLT_XALAN_NAMESPACE">XSLT_XALAN_NAMESPACE</a><br />
+</dd><dt>XInclude</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltGetXIncludeDefault">xsltGetXIncludeDefault</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+</dd><dt>XML</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltNsMap">_xsltNsMap</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</dd><dt>XML_CAST_FPTR</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>XSLT-1</dt><dd><a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+</dd><dt>XSLT-attributes</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+</dd><dt>XSLT-copy</dt><dd><a href="html/libxslt-transform.html#xsltCopy">xsltCopy</a><br />
+</dd><dt>XSLT_ERROR_SEVERITY_WARNING</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>XSLT_GET_IMPORT_PTR</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd></dl><h2>Letter a:</h2><dl><dt>absent</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>accelerators</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltNumberData">_xsltNumberData</a><br />
+</dd><dt>access</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_LST">XSLT_RUNTIME_EXTRA_LST</a><br />
+</dd><dt>according</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>accordingly</dt><dd><a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+</dd><dt>activated</dt><dd><a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+</dd><dt>actual</dt><dd><a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+</dd><dt>actually</dt><dd><a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</dd><dt>add</dt><dd><a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+</dd><dt>added</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+</dd><dt>adding</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>additionally</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+</dd><dt>address</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+</dd><dt>after</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>afterwards</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>alias</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>aliases</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-namespaces.html#xsltFreeNamespaceAliasHashes">xsltFreeNamespaceAliasHashes</a><br />
+</dd><dt>aliasing</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>all</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMMON_FIELDS">XSLT_ITEM_COMMON_FIELDS</a><br />
+<a href="html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a><br />
+<a href="html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-xslt.html#xsltCleanupGlobals">xsltCleanupGlobals</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeCompMatchList">xsltFreeCompMatchList</a><br />
+<a href="html/libxslt-documents.html#xsltFreeDocuments">xsltFreeDocuments</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+<a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+<a href="html/libxslt-preproc.html#xsltFreeStylePreComps">xsltFreeStylePreComps</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+<a href="html/libxslt-transform.html#xsltRegisterAllElement">xsltRegisterAllElement</a><br />
+<a href="html/libxslt-functions.html#xsltRegisterAllFunctions">xsltRegisterAllFunctions</a><br />
+</dd><dt>allocated</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeCompMatchList">xsltFreeCompMatchList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStackElemList">xsltFreeStackElemList</a><br />
+<a href="html/libxslt-preproc.html#xsltFreeStylePreComps">xsltFreeStylePreComps</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStylesheet">xsltFreeStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltFreeTransformContext">xsltFreeTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNewStylesheet">xsltNewStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>allow</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+</dd><dt>allowed</dt><dd><a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+</dd><dt>allowing</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+</dd><dt>already</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+</dd><dt>also</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>always</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+</dd><dt>amiss</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>analyzes</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>anchor</dt><dd><a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>anchored</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>another</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>any</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>anymore</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</dd><dt>api</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>appear</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDecimalFormat">_xsltDecimalFormat</a><br />
+</dd><dt>appears</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+</dd><dt>application-wide</dt><dd><a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a><br />
+</dd><dt>applied</dt><dd><a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>applies</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+</dd><dt>apply</dt><dd><a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>apply-imports</dt><dd><a href="html/libxslt-transform.html#xsltApplyImports">xsltApplyImports</a><br />
+</dd><dt>apply-templates</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemApplyTemplates">_xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemSort">_xsltStyleItemSort</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-transform.html#xsltApplyTemplates">xsltApplyTemplates</a><br />
+</dd><dt>applying</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</dd><dt>are</dt><dd><a href="html/libxslt-xsltlocale.html#XSLT_LOCALE_NONE">XSLT_LOCALE_NONE</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>argument</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_IS_TEXT_NODE">XSLT_IS_TEXT_NODE</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>arguments</dt><dd><a href="html/libxslt-functions.html#xsltDocumentFunction">xsltDocumentFunction</a><br />
+<a href="html/libxslt-functions.html#xsltElementAvailableFunction">xsltElementAvailableFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFormatNumberFunction">xsltFormatNumberFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFunctionAvailableFunction">xsltFunctionAvailableFunction</a><br />
+<a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+<a href="html/libxslt-functions.html#xsltGenerateIdFunction">xsltGenerateIdFunction</a><br />
+<a href="html/libxslt-functions.html#xsltKeyFunction">xsltKeyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltSystemPropertyFunction">xsltSystemPropertyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltUnparsedEntityURIFunction">xsltUnparsedEntityURIFunction</a><br />
+</dd><dt>array</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-variables.html#xsltVariableLookup">xsltVariableLookup</a><br />
+</dd><dt>arry</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>assign</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+</dd><dt>assigned:</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemDocument">_xsltStyleItemDocument</a><br />
+</dd><dt>associated</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-pattern.html#xsltAddTemplate">xsltAddTemplate</a><br />
+<a href="html/libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeAVTList">xsltFreeAVTList</a><br />
+<a href="html/libxslt-keys.html#xsltFreeDocumentKeys">xsltFreeDocumentKeys</a><br />
+<a href="html/libxslt-variables.html#xsltFreeGlobalVariables">xsltFreeGlobalVariables</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModule">xsltUnregisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</dd><dt>attached</dt><dd><a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+</dd><dt>attempt</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>attr</dt><dd><a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>attribute-set</dt><dd><a href="html/libxslt-attributes.html#xsltParseStylesheetAttributeSet">xsltParseStylesheetAttributeSet</a><br />
+</dd><dt>attribute-sets</dt><dd><a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+</dd><dt>attributes</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+</dd><dt>attrubute</dt><dd><a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+</dd><dt>automatically</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>available</dt><dd><a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>availble</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>average=</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>avoid</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk3.html b/libxslt/doc/APIchunk3.html
new file mode 100644
index 0000000..98b7586
--- /dev/null
+++ b/libxslt/doc/APIchunk3.html
@@ -0,0 +1,387 @@
+<?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>API Alphabetic Index b-c 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>API Alphabetic Index b-c 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter b:</h2><dl><dt>bar</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+</dd><dt>based</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+</dd><dt>basically</dt><dd><a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+</dd><dt>been</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>before</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>beginning</dt><dd><a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+</dd><dt>behaviour</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>being</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltPrintErrorContext">xsltPrintErrorContext</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+</dd><dt>between</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-attributes.html#xsltResolveStylesheetAttributeSet">xsltResolveStylesheetAttributeSet</a><br />
+</dd><dt>bit</dt><dd><a href="html/libxslt-keys.html#NODE_IS_KEYED">NODE_IS_KEYED</a><br />
+</dd><dt>blank</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+</dd><dt>blanks</dt><dd><a href="html/libxslt-xsltInternals.html#xsltIsBlank">xsltIsBlank</a><br />
+</dd><dt>block</dt><dd><a href="html/libxslt-security.html#xsltFreeSecurityPrefs">xsltFreeSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltNewSecurityPrefs">xsltNewSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+<a href="html/libxslt-security.html#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</dd><dt>blocks</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TODO">XSLT_TODO</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-preproc.html#xsltFreeStylePreComps">xsltFreeStylePreComps</a><br />
+</dd><dt>boolean</dt><dd><a href="html/libxslt-functions.html#xsltElementAvailableFunction">xsltElementAvailableFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFunctionAvailableFunction">xsltFunctionAvailableFunction</a><br />
+</dd><dt>both</dt><dd><a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>bound</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+</dd><dt>braces</dt><dd><a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+</dd><dt>breakpoint</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+</dd><dt>broke</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>buffer</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+</dd><dt>build</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>building</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+</dd><dt>built-in</dt><dd><a href="html/libxslt-xslt.html#xsltInit">xsltInit</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterAllExtras">xsltRegisterAllExtras</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterExtras">xsltRegisterExtras</a><br />
+</dd><dt>but</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+<a href="html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a><br />
+<a href="html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</dd><dt>by:</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+</dd><dt>bypass</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>byte</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+</dd><dt>bytes</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+</dd></dl><h2>Letter c:</h2><dl><dt>cache</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>calibration</dt><dd><a href="html/libxslt-xsltutils.html#xsltCalibrateAdjust">xsltCalibrateAdjust</a><br />
+</dd><dt>call</dt><dd><a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-xsltutils.html#xslDropCall">xslDropCall</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd><dt>call-template</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemCallTemplate">_xsltStyleItemCallTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-transform.html#xsltCallTemplate">xsltCallTemplate</a><br />
+</dd><dt>callback</dt><dd><a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementLookup">xsltExtModuleElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementPreComputeLookup">xsltExtModuleElementPreComputeLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleTopLevelLookup">xsltExtModuleTopLevelLookup</a><br />
+<a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleElement">xsltRegisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFunction">xsltRegisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleTopLevel">xsltRegisterExtModuleTopLevel</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+</dd><dt>callbacks</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+</dd><dt>called</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</dd><dt>caller</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>calls=</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>can</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>cascading</dt><dd><a href="html/libxslt-imports.html#XSLT_GET_IMPORT_INT">XSLT_GET_IMPORT_INT</a><br />
+<a href="html/libxslt-imports.html#XSLT_GET_IMPORT_PTR">XSLT_GET_IMPORT_PTR</a><br />
+</dd><dt>cases</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>casting</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>catch</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>chained</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDecimalFormat">_xsltDecimalFormat</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+</dd><dt>change</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>changed</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+</dd><dt>changes</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>channel</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+</dd><dt>char</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+</dd><dt>character</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>characters</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>chars</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltIsBlank">xsltIsBlank</a><br />
+</dd><dt>check</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPED">CHECK_STOPPED</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPED0">CHECK_STOPPED0</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+<a href="html/libxslt-xsltInternals.html#IS_XSLT_ATTR_FAST">IS_XSLT_ATTR_FAST</a><br />
+<a href="html/libxslt-xsltInternals.html#IS_XSLT_ELEM_FAST">IS_XSLT_ELEM_FAST</a><br />
+<a href="html/libxslt-keys.html#NODE_IS_KEYED">NODE_IS_KEYED</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_HAS_INTERNAL_NSMAP">XSLT_HAS_INTERNAL_NSMAP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_IS_TEXT_NODE">XSLT_IS_TEXT_NODE</a><br />
+<a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+</dd><dt>checking</dt><dd><a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</dd><dt>checks</dt><dd><a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+</dd><dt>child</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+</dd><dt>clash</dt><dd><a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>class:</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>cleared</dt><dd><a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+</dd><dt>close</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+</dd><dt>closed</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>coalescing</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>code</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</dd><dt>collected</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</dd><dt>collector</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>com</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>combination</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+</dd><dt>coming</dt><dd><a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+</dd><dt>comment</dt><dd><a href="html/libxslt-transform.html#xsltComment">xsltComment</a><br />
+</dd><dt>common</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+</dd><dt>comp</dt><dd><a href="html/libxslt-pattern.html#xsltFreeCompMatchList">xsltFreeCompMatchList</a><br />
+</dd><dt>compExpr</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleBasicExpressionItem">_xsltStyleBasicExpressionItem</a><br />
+</dd><dt>compared</dt><dd><a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>comparison</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>compatibility</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+</dd><dt>compilation</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_XPATHCOMP">XSLT_REFACTORED_XPATHCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalVariable">xsltParseGlobalVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>compile-time</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+</dd><dt>compiled</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyImports">xsltApplyImports</a><br />
+<a href="html/libxslt-transform.html#xsltApplyTemplates">xsltApplyTemplates</a><br />
+<a href="html/libxslt-transform.html#xsltCallTemplate">xsltCallTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltChoose">xsltChoose</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+<a href="html/libxslt-transform.html#xsltIf">xsltIf</a><br />
+<a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+</dd><dt>compiler</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_CCTXT">XSLT_CCTXT</a><br />
+</dd><dt>compiles</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+</dd><dt>compiling</dt><dd><a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+</dd><dt>completed</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>compression</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+</dd><dt>computation</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+</dd><dt>computations</dt><dd><a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+</dd><dt>compute</dt><dd><a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+</dd><dt>computed</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-transform.html#xsltCopy">xsltCopy</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+<a href="html/libxslt-documents.html#xsltLoadDocument">xsltLoadDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+</dd><dt>construct</dt><dd><a href="html/libxslt-xsltutils.html#xsltMessage">xsltMessage</a><br />
+</dd><dt>constructor</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+</dd><dt>consumption</dt><dd><a href="html/libxslt-xslt.html#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a><br />
+</dd><dt>contain</dt><dd><a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+</dd><dt>contained</dt><dd><a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>container</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+</dd><dt>containing</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-xsltutils.html#xsltMessage">xsltMessage</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+</dd><dt>contains</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>content</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListFree">xsltPointerListFree</a><br />
+</dd><dt>content-model</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+</dd><dt>contexts</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>control</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+</dd><dt>converts</dt><dd><a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+</dd><dt>copied</dt><dd><a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+</dd><dt>copies</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+</dd><dt>copy</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemCopy">_xsltStyleItemCopy</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>copy-of</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemApplyTemplates">_xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemSort">_xsltStyleItemSort</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-transform.html#xsltCopyOf">xsltCopyOf</a><br />
+</dd><dt>copying</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>correct</dt><dd><a href="html/libxslt-xsltutils.html#xsltCalibrateAdjust">xsltCalibrateAdjust</a><br />
+</dd><dt>corresponding</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+</dd><dt>created</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocale">xsltFreeLocale</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>creating</dt><dd><a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>creation</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+</dd><dt>cur</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+</dd><dt>curly</dt><dd><a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+</dd><dt>currently</dt><dd><a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk4.html b/libxslt/doc/APIchunk4.html
new file mode 100644
index 0000000..e914342
--- /dev/null
+++ b/libxslt/doc/APIchunk4.html
@@ -0,0 +1,342 @@
+<?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>API Alphabetic Index d-e 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>API Alphabetic Index d-e 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter d:</h2><dl><dt>data</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltRuntimeExtra">_xsltRuntimeExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeCtxtExts">xsltFreeCtxtExts</a><br />
+<a href="html/libxslt-variables.html#xsltFreeGlobalVariables">xsltFreeGlobalVariables</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltInitCtxtExts">xsltInitCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeExtModuleElement">xsltPreComputeExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</dd><dt>deallocated</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+</dd><dt>deallocation</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltRuntimeExtra">_xsltRuntimeExtra</a><br />
+</dd><dt>deallocator</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</dd><dt>dealy</dt><dd><a href="html/libxslt-xsltutils.html#xsltCalibrateAdjust">xsltCalibrateAdjust</a><br />
+</dd><dt>debug</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-extra.html#xsltDebug">xsltDebug</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugGetDefaultTrace">xsltDebugGetDefaultTrace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugSetDefaultTrace">xsltDebugSetDefaultTrace</a><br />
+</dd><dt>debugger</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+</dd><dt>debugging</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+</dd><dt>debugtrace</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TRACE">XSLT_TRACE</a><br />
+</dd><dt>decimal</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>decimal-format</dt><dd><a href="html/libxslt-xsltInternals.html#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a><br />
+</dd><dt>declaration</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalParam">xsltParseGlobalParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalVariable">xsltParseGlobalVariable</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+</dd><dt>declared</dt><dd><a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+</dd><dt>declaring</dt><dd><a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>default</dt><dd><a href="html/libxslt-xslt.html#XSLT_DEFAULT_VERSION">XSLT_DEFAULT_VERSION</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugGetDefaultTrace">xsltDebugGetDefaultTrace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugSetDefaultTrace">xsltDebugSetDefaultTrace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-transform.html#xsltGetXIncludeDefault">xsltGetXIncludeDefault</a><br />
+<a href="html/libxslt-transform.html#xsltRegisterAllElement">xsltRegisterAllElement</a><br />
+<a href="html/libxslt-functions.html#xsltRegisterAllFunctions">xsltRegisterAllFunctions</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+<a href="html/libxslt-security.html#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-documents.html#xsltSetLoaderFunc">xsltSetLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetSortFunc">xsltSetSortFunc</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+</dd><dt>define</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_VARS">XSLT_REFACTORED_VARS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_XPATHCOMP">XSLT_REFACTORED_XPATHCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA">XSLT_RUNTIME_EXTRA</a><br />
+</dd><dt>defined</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>definition</dt><dd><a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+</dd><dt>definitions</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>dependent</dt><dd><a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+</dd><dt>deprecated</dt><dd><a href="html/libxslt-extra.html#xsltRegisterExtras">xsltRegisterExtras</a><br />
+</dd><dt>depth</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltVarInfo">_xsltVarInfo</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+</dd><dt>derived</dt><dd><a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</dd><dt>description</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+</dd><dt>descriptions</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>descriptor</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+</dd><dt>desired</dt><dd><a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+</dd><dt>details</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+</dd><dt>detected</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_STRANGE">XSLT_STRANGE</a><br />
+</dd><dt>dict</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>dictionary</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>dictionary:</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>different</dt><dd><a href="html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a><br />
+<a href="html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>digit</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>directly</dt><dd><a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+</dd><dt>directories</dt><dd><a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+</dd><dt>disable-escaping</dt><dd><a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+</dd><dt>disabled</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>disattached</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+</dd><dt>discard</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+</dd><dt>display</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>distinct</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>doc</dt><dd><a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>docs</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>doctype-public</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>doctype-system</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>documents</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-documents.html#xsltFreeDocuments">xsltFreeDocuments</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+</dd><dt>does</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListFree">xsltPointerListFree</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+</dd><dt>doesn</dt><dd><a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</dd><dt>done</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>down</dt><dd><a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>dump</dt><dd><a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+</dd><dt>dunno</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+</dd><dt>during</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a><br />
+</dd></dl><h2>Letter e:</h2><dl><dt>eclared</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+</dd><dt>effect</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>either</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>element-available</dt><dd><a href="html/libxslt-functions.html#xsltElementAvailableFunction">xsltElementAvailableFunction</a><br />
+</dd><dt>elements</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-extensions.html#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a><br />
+<a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeCompMatchList">xsltFreeCompMatchList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+<a href="html/libxslt-transform.html#xsltRegisterAllElement">xsltRegisterAllElement</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+</dd><dt>else</dt><dd><a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+</dd><dt>emitted</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TRACE">XSLT_TRACE</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>empty</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a><br />
+</dd><dt>enable</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_VARS">XSLT_REFACTORED_VARS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_XPATHCOMP">XSLT_REFACTORED_XPATHCOMP</a><br />
+</dd><dt>enabled</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+</dd><dt>encoded</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+</dd><dt>encoding</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>encountering</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>end</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+</dd><dt>engine</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+</dd><dt>entity</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>entry</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</dd><dt>episode</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>equal</dt><dd><a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+</dd><dt>error:</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+</dd><dt>errors</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>establish</dt><dd><a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+</dd><dt>etc</dt><dd><a href="html/libxslt-xslt.html#xsltInit">xsltInit</a><br />
+</dd><dt>eval</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+</dd><dt>evaluate</dt><dd><a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+</dd><dt>evaluated</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>evaluates</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a><br />
+</dd><dt>evaluation</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+</dd><dt>everything</dt><dd><a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>example</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</dd><dt>except</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+</dd><dt>excluded</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>excluded-result-prefixes</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+</dd><dt>exctract</dt><dd><a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+</dd><dt>executed</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+</dd><dt>execution</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>exension</dt><dd><a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+</dd><dt>existent</dt><dd><a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+</dd><dt>existing</dt><dd><a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</dd><dt>exists</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+</dd><dt>exit</dt><dd><a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>exiting</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>exits</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>expect</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>expressed</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_PAT_NO_PRIORITY">XSLT_PAT_NO_PRIORITY</a><br />
+</dd><dt>expression</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleBasicExpressionItem">_xsltStyleBasicExpressionItem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemApplyTemplates">_xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemIf">_xsltStyleItemIf</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemSort">_xsltStyleItemSort</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemValueOf">_xsltStyleItemValueOf</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>expressions</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_XPATHCOMP">XSLT_REFACTORED_XPATHCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>exsl:function</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>exslt:function</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>exsltFuncFunctionFunction</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+</dd><dt>extInfos</dt><dd><a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+</dd><dt>extending</dt><dd><a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</dd><dt>extension-element-prefixes</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+</dd><dt>extensions</dt><dd><a href="html/libxslt-extra.html#XSLT_LIBXSLT_NAMESPACE">XSLT_LIBXSLT_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_NORM_SAXON_NAMESPACE">XSLT_NORM_SAXON_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_SAXON_NAMESPACE">XSLT_SAXON_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_XALAN_NAMESPACE">XSLT_XALAN_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_XT_NAMESPACE">XSLT_XT_NAMESPACE</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeExts">xsltFreeExts</a><br />
+<a href="html/libxslt-xslt.html#xsltInit">xsltInit</a><br />
+<a href="html/libxslt-extensions.html#xsltInitGlobals">xsltInitGlobals</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterAllExtras">xsltRegisterAllExtras</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterExtras">xsltRegisterExtras</a><br />
+</dd><dt>external</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>extra</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA">XSLT_RUNTIME_EXTRA</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_FREE">XSLT_RUNTIME_EXTRA_FREE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_LST">XSLT_RUNTIME_EXTRA_LST</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltRuntimeExtra">_xsltRuntimeExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+<a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>extract</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>extras</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk5.html b/libxslt/doc/APIchunk5.html
new file mode 100644
index 0000000..414ae5c
--- /dev/null
+++ b/libxslt/doc/APIchunk5.html
@@ -0,0 +1,250 @@
+<?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>API Alphabetic Index f-g 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>API Alphabetic Index f-g 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter f:</h2><dl><dt>factor</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+</dd><dt>failure</dt><dd><a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-variables.html#xsltAddStackElemList">xsltAddStackElemList</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetImport">xsltParseStylesheetImport</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetInclude">xsltParseStylesheetInclude</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</dd><dt>failures</dt><dd><a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+</dd><dt>fast</dt><dd><a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+</dd><dt>fields</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMMON_FIELDS">XSLT_ITEM_COMMON_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>file</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>filename</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseStylesheetFile">xsltParseStylesheetFile</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+</dd><dt>files</dt><dd><a href="html/libxslt-xslt.html#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>find</dt><dd><a href="html/libxslt-xsltInternals.html#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+</dd><dt>fine</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+</dd><dt>first</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>fixup</dt><dd><a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+</dd><dt>flag</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_STRANGE">XSLT_STRANGE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TODO">XSLT_TODO</a><br />
+</dd><dt>flags</dt><dd><a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>following</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>foo</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+</dd><dt>for-each</dt><dd><a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+</dd><dt>forbid</dt><dd><a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+</dd><dt>force</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>form</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+</dd><dt>format</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>format-number</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-functions.html#xsltFormatNumberFunction">xsltFormatNumberFunction</a><br />
+</dd><dt>formats</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>formatting</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+</dd><dt>forwards-compatible</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+</dd><dt>found</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltCalibrateAdjust">xsltCalibrateAdjust</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementLookup">xsltExtModuleElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementPreComputeLookup">xsltExtModuleElementPreComputeLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleFunctionLookup">xsltExtModuleFunctionLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleTopLevelLookup">xsltExtModuleTopLevelLookup</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+<a href="html/libxslt-variables.html#xsltVariableLookup">xsltVariableLookup</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</dd><dt>fptr</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>fraction</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>fractional</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+</dd><dt>fraction}{suffix}</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>fragment</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>fragments</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_IS_RES_TREE_FRAG">XSLT_IS_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_MARK_RES_TREE_FRAG">XSLT_MARK_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</dd><dt>free</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_FREE">XSLT_RUNTIME_EXTRA_FREE</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocale">xsltFreeLocale</a><br />
+<a href="html/libxslt-security.html#xsltFreeSecurityPrefs">xsltFreeSecurityPrefs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListFree">xsltPointerListFree</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>freed</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListFree">xsltPointerListFree</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>frees</dt><dd><a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>full</dt><dd><a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>function-available</dt><dd><a href="html/libxslt-functions.html#xsltFunctionAvailableFunction">xsltFunctionAvailableFunction</a><br />
+</dd><dt>function-calling</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+</dd><dt>functions</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-extensions.html#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a><br />
+<a href="html/libxslt-functions.html#xsltRegisterAllFunctions">xsltRegisterAllFunctions</a><br />
+</dd><dt>future</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd></dl><h2>Letter g:</h2><dl><dt>garbage</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>gathering</dt><dd><a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+</dd><dt>gcc</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>gcc4</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+</dd><dt>general</dt><dd><a href="html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a><br />
+<a href="html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a><br />
+</dd><dt>generally</dt><dd><a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</dd><dt>generate</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>generate-id</dt><dd><a href="html/libxslt-functions.html#xsltGenerateIdFunction">xsltGenerateIdFunction</a><br />
+</dd><dt>generated</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</dd><dt>generates</dt><dd><a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+</dd><dt>get</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_CCTXT">XSLT_CCTXT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_GET_INTERNAL_NSMAP">XSLT_GET_INTERNAL_NSMAP</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+</dd><dt>given</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+<a href="html/libxslt-variables.html#xsltVariableLookup">xsltVariableLookup</a><br />
+</dd><dt>gives</dt><dd><a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>giving</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+</dd><dt>global</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xslt.html#xsltCleanupGlobals">xsltCleanupGlobals</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-variables.html#xsltFreeGlobalVariables">xsltFreeGlobalVariables</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+<a href="html/libxslt-extensions.html#xsltInitGlobals">xsltInitGlobals</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalVariable">xsltParseGlobalVariable</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetSortFunc">xsltSetSortFunc</a><br />
+</dd><dt>goto</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+</dd><dt>grafted</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+</dd><dt>group</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+</dd><dt>grouping</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk6.html b/libxslt/doc/APIchunk6.html
new file mode 100644
index 0000000..3903db1
--- /dev/null
+++ b/libxslt/doc/APIchunk6.html
@@ -0,0 +1,254 @@
+<?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>API Alphabetic Index h-i 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>API Alphabetic Index h-i 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter h:</h2><dl><dt>handle</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-documents.html#xsltSetLoaderFunc">xsltSetLoaderFunc</a><br />
+</dd><dt>handler</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetSortFunc">xsltSetSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd><dt>handles</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>handling</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd><dt>hard-wire</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>has</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>hash</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+<a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+</dd><dt>hashtable</dt><dd><a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+</dd><dt>have</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+</dd><dt>hence</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>hold</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+</dd><dt>holding</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltNsMap">_xsltNsMap</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+</dd><dt>holds</dt><dd><a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+</dd><dt>hosting</dt><dd><a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+</dd><dt>how</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+</dd><dt>href</dt><dd><a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+</dd><dt>html</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>http:</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd></dl><h2>Letter i:</h2><dl><dt>identifier</dt><dd><a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+</dd><dt>ignorable</dt><dd><a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltIsBlank">xsltIsBlank</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+</dd><dt>implementation</dt><dd><a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+</dd><dt>implemented</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>import</dt><dd><a href="html/libxslt-imports.html#XSLT_GET_IMPORT_INT">XSLT_GET_IMPORT_INT</a><br />
+<a href="html/libxslt-imports.html#XSLT_GET_IMPORT_PTR">XSLT_GET_IMPORT_PTR</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetImport">xsltParseStylesheetImport</a><br />
+</dd><dt>imported</dt><dd><a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+</dd><dt>imports</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-pattern.html#xsltCleanupTemplates">xsltCleanupTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</dd><dt>in-scope</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NSINSCOPE_FIELDS">XSLT_ITEM_NSINSCOPE_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+</dd><dt>include</dt><dd><a href="html/libxslt-imports.html#xsltParseStylesheetInclude">xsltParseStylesheetInclude</a><br />
+</dd><dt>included</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+</dd><dt>includes</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>inclusive</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>indented</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>index</dt><dd><a href="">nr</a><br />
+</dd><dt>indicating</dt><dd><a href="html/libxslt-xsltlocale.html#XSLT_LOCALE_NONE">XSLT_LOCALE_NONE</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd><dt>indicator</dt><dd><a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+</dd><dt>info</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</dd><dt>information</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA">XSLT_RUNTIME_EXTRA</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_FREE">XSLT_RUNTIME_EXTRA_FREE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_LST">XSLT_RUNTIME_EXTRA_LST</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+<a href="html/libxslt-transform.html#xsltAttribute">xsltAttribute</a><br />
+<a href="html/libxslt-transform.html#xsltCallTemplate">xsltCallTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltChoose">xsltChoose</a><br />
+<a href="html/libxslt-transform.html#xsltComment">xsltComment</a><br />
+<a href="html/libxslt-transform.html#xsltCopy">xsltCopy</a><br />
+<a href="html/libxslt-transform.html#xsltCopyOf">xsltCopyOf</a><br />
+<a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+<a href="html/libxslt-transform.html#xsltElement">xsltElement</a><br />
+<a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+<a href="html/libxslt-transform.html#xsltIf">xsltIf</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-transform.html#xsltNumber">xsltNumber</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a><br />
+<a href="html/libxslt-transform.html#xsltProcessingInstruction">xsltProcessingInstruction</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+<a href="html/libxslt-transform.html#xsltText">xsltText</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+<a href="html/libxslt-transform.html#xsltValueOf">xsltValueOf</a><br />
+</dd><dt>informations</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-extra.html#xsltDebug">xsltDebug</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveProfiling">xsltSaveProfiling</a><br />
+</dd><dt>infos</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+</dd><dt>inherited</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+</dd><dt>initial</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListCreate">xsltPointerListCreate</a><br />
+</dd><dt>initialization</dt><dd><a href="html/libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a><br />
+</dd><dt>initialized</dt><dd><a href="html/libxslt-extensions.html#xsltInitCtxtExts">xsltInitCtxtExts</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+<a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+</dd><dt>initializes</dt><dd><a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+</dd><dt>initiate</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>input</dt><dd><a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+<a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+</dd><dt>insertion</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>inspected</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</dd><dt>instances</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>instantiated</dt><dd><a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>instead</dt><dd><a href="html/libxslt-extra.html#xsltRegisterExtras">xsltRegisterExtras</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>instructions</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+</dd><dt>integer</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>intended</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>interest</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>interface</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>intergers</dt><dd><a href="html/libxslt-imports.html#XSLT_GET_IMPORT_INT">XSLT_GET_IMPORT_INT</a><br />
+</dd><dt>internal</dt><dd><a href="html/libxslt-namespaces.html#UNDEFINED_DEFAULT_NS">UNDEFINED_DEFAULT_NS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_IS_RES_TREE_FRAG">XSLT_IS_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_MARK_RES_TREE_FRAG">XSLT_MARK_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>internalized</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>internally</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_STRANGE">XSLT_STRANGE</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>interpretation</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDecimalFormat">_xsltDecimalFormat</a><br />
+</dd><dt>interpreter</dt><dd><a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</dd><dt>interpretor</dt><dd><a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</dd><dt>into</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>invoking</dt><dd><a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>issues</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>item</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xslDropCall">xslDropCall</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+</dd><dt>item1</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>item2|item3</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>items</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMMON_FIELDS">XSLT_ITEM_COMMON_FIELDS</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>its</dt><dd><a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-variables.html#xsltFreeGlobalVariables">xsltFreeGlobalVariables</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalParam">xsltParseGlobalParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a><br />
+</dd><dt>itself</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk7.html b/libxslt/doc/APIchunk7.html
new file mode 100644
index 0000000..311581f
--- /dev/null
+++ b/libxslt/doc/APIchunk7.html
@@ -0,0 +1,255 @@
+<?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>API Alphabetic Index j-m 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>API Alphabetic Index j-m 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter j:</h2><dl><dt>java</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>jdk</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>just</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd></dl><h2>Letter k:</h2><dl><dt>keep</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>keeping</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>kept</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+</dd><dt>key</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-functions.html#xsltKeyFunction">xsltKeyFunction</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+</dd><dt>keys</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-keys.html#xsltFreeDocumentKeys">xsltFreeDocumentKeys</a><br />
+<a href="html/libxslt-keys.html#xsltFreeKeys">xsltFreeKeys</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</dd><dt>kind</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</dd><dt>known</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd></dl><h2>Letter l:</h2><dl><dt>label</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+</dd><dt>language</dt><dd><a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+</dd><dt>last</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+</dd><dt>later</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+</dd><dt>lead</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>leaks</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+</dd><dt>left</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>len</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+</dd><dt>level</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugGetDefaultTrace">xsltDebugGetDefaultTrace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugSetDefaultTrace">xsltDebugSetDefaultTrace</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+</dd><dt>libexsl</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>library</dt><dd><a href="html/libxslt-xslt.html#xsltCleanupGlobals">xsltCleanupGlobals</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModule">xsltUnregisterExtModule</a><br />
+</dd><dt>libxml2</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>libxslt</dt><dd><a href="html/libxslt-extra.html#XSLT_LIBXSLT_NAMESPACE">XSLT_LIBXSLT_NAMESPACE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_VARS">XSLT_REFACTORED_VARS</a><br />
+<a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+</dd><dt>lifespan</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>lifetime</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+</dd><dt>like</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+</dd><dt>line</dt><dd><a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>literal</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+</dd><dt>literally</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+</dd><dt>load</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-documents.html#xsltLoadDocument">xsltLoadDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-documents.html#xsltSetLoaderFunc">xsltSetLoaderFunc</a><br />
+</dd><dt>loaded</dt><dd><a href="html/libxslt-documents.html#xsltFreeDocuments">xsltFreeDocuments</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownCtxtExts">xsltShutdownCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownExts">xsltShutdownExts</a><br />
+</dd><dt>loading</dt><dd><a href="html/libxslt-xslt.html#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+<a href="html/libxslt-documents.html#xsltSetLoaderFunc">xsltSetLoaderFunc</a><br />
+</dd><dt>local</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>locale</dt><dd><a href="html/libxslt-xsltlocale.html#XSLT_LOCALE_NONE">XSLT_LOCALE_NONE</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocale">xsltFreeLocale</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocales">xsltFreeLocales</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd><dt>localname</dt><dd><a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>locate</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>location</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+</dd><dt>look</dt><dd><a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+</dd><dt>looks</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>lookup</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+</dd><dt>lost</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd></dl><h2>Letter m:</h2><dl><dt>macro</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-imports.html#XSLT_GET_IMPORT_INT">XSLT_GET_IMPORT_INT</a><br />
+<a href="html/libxslt-imports.html#XSLT_GET_IMPORT_PTR">XSLT_GET_IMPORT_PTR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_IS_RES_TREE_FRAG">XSLT_IS_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_MARK_RES_TREE_FRAG">XSLT_MARK_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a><br />
+<a href="html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>made</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltIsBlank">xsltIsBlank</a><br />
+</dd><dt>main</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>make</dt><dd><a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+</dd><dt>makes</dt><dd><a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+</dd><dt>map</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_GET_INTERNAL_NSMAP">XSLT_GET_INTERNAL_NSMAP</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a><br />
+</dd><dt>mapped</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltNsMap">_xsltNsMap</a><br />
+</dd><dt>mapping</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_HAS_INTERNAL_NSMAP">XSLT_HAS_INTERNAL_NSMAP</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+</dd><dt>marked</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+</dd><dt>mask</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugGetDefaultTrace">xsltDebugGetDefaultTrace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugSetDefaultTrace">xsltDebugSetDefaultTrace</a><br />
+</dd><dt>massive</dt><dd><a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>match</dt><dd><a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+</dd><dt>match=</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>matches</dt><dd><a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</dd><dt>matching</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+</dd><dt>may</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDecimalFormat">_xsltDecimalFormat</a><br />
+<a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>means</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd><dt>mechanism</dt><dd><a href="html/libxslt-pattern.html#xsltFreeTemplateHashes">xsltFreeTemplateHashes</a><br />
+</dd><dt>mechanisms</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+</dd><dt>memory</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeAVTList">xsltFreeAVTList</a><br />
+<a href="html/libxslt-attributes.html#xsltFreeAttributeSetsHashes">xsltFreeAttributeSetsHashes</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeCompMatchList">xsltFreeCompMatchList</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeExts">xsltFreeExts</a><br />
+<a href="html/libxslt-keys.html#xsltFreeKeys">xsltFreeKeys</a><br />
+<a href="html/libxslt-namespaces.html#xsltFreeNamespaceAliasHashes">xsltFreeNamespaceAliasHashes</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStackElemList">xsltFreeStackElemList</a><br />
+<a href="html/libxslt-preproc.html#xsltFreeStylePreComps">xsltFreeStylePreComps</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStylesheet">xsltFreeStylesheet</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeTemplateHashes">xsltFreeTemplateHashes</a><br />
+<a href="html/libxslt-transform.html#xsltFreeTransformContext">xsltFreeTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+</dd><dt>message</dt><dd><a href="html/libxslt-xsltutils.html#xsltMessage">xsltMessage</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>messages</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TRACE">XSLT_TRACE</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>method</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>might</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>mille</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>milliseconds</dt><dd><a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+</dd><dt>mode</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-pattern.html#xsltAddTemplate">xsltAddTemplate</a><br />
+</dd><dt>mode=</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>models</dt><dd><a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+</dd><dt>modified</dt><dd><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>modules</dt><dd><a href="html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a><br />
+<a href="html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a><br />
+<a href="html/libxslt-extensions.html#xsltInitCtxtExts">xsltInitCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownCtxtExts">xsltShutdownCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownExts">xsltShutdownExts</a><br />
+</dd><dt>more</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>multiple</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>multiply</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>must</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk8.html b/libxslt/doc/APIchunk8.html
new file mode 100644
index 0000000..741f7ea
--- /dev/null
+++ b/libxslt/doc/APIchunk8.html
@@ -0,0 +1,262 @@
+<?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>API Alphabetic Index n-o 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>API Alphabetic Index n-o 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter n:</h2><dl><dt>name=</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+</dd><dt>nameURI</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>named</dt><dd><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+</dd><dt>names</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>namespace-alias</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>namespaces</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NSINSCOPE_FIELDS">XSLT_ITEM_NSINSCOPE_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltKeyDef">_xsltKeyDef</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-namespaces.html#xsltFreeNamespaceAliasHashes">xsltFreeNamespaceAliasHashes</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a><br />
+</dd><dt>navigational</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a><br />
+</dd><dt>necessary</dt><dd><a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+</dd><dt>need</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemDocument">_xsltStyleItemDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>needed</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</dd><dt>needs</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+</dd><dt>negative</dt><dd><a href="html/libxslt-xsltutils.html#xsltCalibrateAdjust">xsltCalibrateAdjust</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>nested</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>newly</dt><dd><a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNewStylesheet">xsltNewStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+</dd><dt>next</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsAlias">_xsltNsAlias</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsList">_xsltNsList</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsMap">_xsltNsMap</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltVarInfo">_xsltVarInfo</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+</dd><dt>node-set</dt><dd><a href="html/libxslt-functions.html#xsltDocumentFunction">xsltDocumentFunction</a><br />
+<a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+<a href="html/libxslt-functions.html#xsltKeyFunction">xsltKeyFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a><br />
+</dd><dt>node-set?</dt><dd><a href="html/libxslt-functions.html#xsltDocumentFunction">xsltDocumentFunction</a><br />
+<a href="html/libxslt-functions.html#xsltGenerateIdFunction">xsltGenerateIdFunction</a><br />
+</dd><dt>node-trees</dt><dd><a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+</dd><dt>nodes</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+</dd><dt>nodeset</dt><dd><a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+</dd><dt>non</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+</dd><dt>non-NULL</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+</dd><dt>non-excluded</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+</dd><dt>non-wellformed</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>none</dt><dd><a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>nor</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>normal</dt><dd><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+</dd><dt>normalize</dt><dd><a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+</dd><dt>normally</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+</dd><dt>nothing</dt><dd><a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+</dd><dt>now</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+</dd><dt>nowhere</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemDocument">_xsltStyleItemDocument</a><br />
+</dd><dt>ns-decl</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltNsMap">_xsltNsMap</a><br />
+</dd><dt>ns-declaration</dt><dd><a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>ns-declarations</dt><dd><a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+</dd><dt>ns-name</dt><dd><a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>ns-prefix</dt><dd><a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>ns-prefixes</dt><dd><a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>null</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+</dd></dl><h2>Letter o:</h2><dl><dt>object</dt><dd><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-functions.html#xsltDocumentFunction">xsltDocumentFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-functions.html#xsltKeyFunction">xsltKeyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltSystemPropertyFunction">xsltSystemPropertyFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>obsolete</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+</dd><dt>obtained</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</dd><dt>occcur</dt><dd><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+</dd><dt>occurences</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+</dd><dt>off</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltutils.html#xslDropCall">xslDropCall</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</dd><dt>often</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+</dd><dt>old</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+</dd><dt>on-demand</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+</dd><dt>once</dt><dd><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+</dd><dt>one</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</dd><dt>one:</dt><dd><a href="html/libxslt-xsltutils.html#IS_XSLT_REAL_NODE">IS_XSLT_REAL_NODE</a><br />
+</dd><dt>ones</dt><dd><a href="html/libxslt-pattern.html#xsltCleanupTemplates">xsltCleanupTemplates</a><br />
+</dd><dt>only</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>onto</dt><dd><a href="html/libxslt-variables.html#xsltAddStackElemList">xsltAddStackElemList</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+</dd><dt>opaque</dt><dd><a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+</dd><dt>open</dt><dd><a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+</dd><dt>operation</dt><dd><a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+</dd><dt>optimization</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_XPATHCOMP">XSLT_REFACTORED_XPATHCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>option</dt><dd><a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</dd><dt>optional</dt><dd><a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+</dd><dt>options</dt><dd><a href="html/libxslt-xslt.html#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a><br />
+<a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+</dd><dt>order</dt><dd><a href="html/libxslt-imports.html#XSLT_GET_IMPORT_INT">XSLT_GET_IMPORT_INT</a><br />
+<a href="html/libxslt-imports.html#XSLT_GET_IMPORT_PTR">XSLT_GET_IMPORT_PTR</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</dd><dt>ordered</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+</dd><dt>original</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltNsMap">_xsltNsMap</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+</dd><dt>other</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>otherwise</dt><dd><a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-pattern.html#xsltAddTemplate">xsltAddTemplate</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementLookup">xsltExtModuleElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementPreComputeLookup">xsltExtModuleElementPreComputeLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleFunctionLookup">xsltExtModuleFunctionLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleTopLevelLookup">xsltExtModuleTopLevelLookup</a><br />
+<a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-transform.html#xsltGetXIncludeDefault">xsltGetXIncludeDefault</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltIsBlank">xsltIsBlank</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</dd><dt>ouput</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>out</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</dd><dt>output</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-extensions.html#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+</dd><dt>outside</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+</dd><dt>over</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+</dd><dt>overhead</dt><dd><a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>own</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+</dd><dt>owning</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIchunk9.html b/libxslt/doc/APIchunk9.html
new file mode 100644
index 0000000..ca83823
--- /dev/null
+++ b/libxslt/doc/APIchunk9.html
@@ -0,0 +1,275 @@
+<?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>API Alphabetic Index p-p 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>API Alphabetic Index p-p 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><h2>Letter p:</h2><dl><dt>param</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalParam">xsltParseGlobalParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+</dd><dt>parameter</dt><dd><a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+</dd><dt>parameters</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>params</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>parent</dt><dd><a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+</dd><dt>parse</dt><dd><a href="html/libxslt-variables.html#xsltParseGlobalParam">xsltParseGlobalParam</a><br />
+<a href="html/libxslt-attributes.html#xsltParseStylesheetAttributeSet">xsltParseStylesheetAttributeSet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetFile">xsltParseStylesheetFile</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetImport">xsltParseStylesheetImport</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetInclude">xsltParseStylesheetInclude</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+</dd><dt>parsed</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+<a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>parser</dt><dd><a href="html/libxslt-transform.html#xsltFreeTransformContext">xsltFreeTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+</dd><dt>parsing</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>part</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_VARS">XSLT_REFACTORED_VARS</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+</dd><dt>pass</dt><dd><a href="html/libxslt-xslt.html#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</dd><dt>passed</dt><dd><a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+</dd><dt>path</dt><dd><a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+</dd><dt>pattern</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_PAT_NO_PRIORITY">XSLT_PAT_NO_PRIORITY</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltDecimalFormat">_xsltDecimalFormat</a><br />
+<a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-pattern.html#xsltAddTemplate">xsltAddTemplate</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</dd><dt>patterns</dt><dd><a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</dd><dt>per</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>percent</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+</dd><dt>percentage</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>permille</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+</dd><dt>persistance</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>persistant</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>persistent</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+</dd><dt>pertaining</dt><dd><a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</dd><dt>pertains</dt><dd><a href="html/libxslt-xsltutils.html#IS_XSLT_ELEM">IS_XSLT_ELEM</a><br />
+</dd><dt>place</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+</dd><dt>placeholder</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>plug</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+</dd><dt>point</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</dd><dt>pointers</dt><dd><a href="html/libxslt-imports.html#XSLT_GET_IMPORT_PTR">XSLT_GET_IMPORT_PTR</a><br />
+</dd><dt>points</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+</dd><dt>pops</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd><dt>position</dt><dd><a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</dd><dt>possible</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>possibly</dt><dd><a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+</dd><dt>pre-computation</dt><dd><a href="html/libxslt-extensions.html#xsltExtModuleElementPreComputeLookup">xsltExtModuleElementPreComputeLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleElement">xsltRegisterExtModuleElement</a><br />
+</dd><dt>pre-processing</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>precedence</dt><dd><a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+</dd><dt>precision</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TIMESTAMP_TICS_PER_SEC">XSLT_TIMESTAMP_TICS_PER_SEC</a><br />
+</dd><dt>precompiled</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStyleItemApplyTemplates">_xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemIf">_xsltStyleItemIf</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemSort">_xsltStyleItemSort</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemValueOf">_xsltStyleItemValueOf</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</dd><dt>precomputed</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltAttribute">xsltAttribute</a><br />
+<a href="html/libxslt-transform.html#xsltComment">xsltComment</a><br />
+<a href="html/libxslt-transform.html#xsltCopyOf">xsltCopyOf</a><br />
+<a href="html/libxslt-extra.html#xsltDebug">xsltDebug</a><br />
+<a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+<a href="html/libxslt-transform.html#xsltElement">xsltElement</a><br />
+<a href="html/libxslt-preproc.html#xsltFreeStylePreComps">xsltFreeStylePreComps</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-transform.html#xsltNumber">xsltNumber</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeExtModuleElement">xsltPreComputeExtModuleElement</a><br />
+<a href="html/libxslt-transform.html#xsltProcessingInstruction">xsltProcessingInstruction</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+<a href="html/libxslt-transform.html#xsltText">xsltText</a><br />
+<a href="html/libxslt-transform.html#xsltValueOf">xsltValueOf</a><br />
+</dd><dt>predicate</dt><dd><a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+</dd><dt>preference</dt><dd><a href="html/libxslt-security.html#xsltFreeSecurityPrefs">xsltFreeSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltNewSecurityPrefs">xsltNewSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a><br />
+</dd><dt>preferences</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>prefix</dt><dd><a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</dd><dt>prefixed</dt><dd><a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+</dd><dt>prefixes</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>preliminary</dt><dd><a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+</dd><dt>present</dt><dd><a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+</dd><dt>preserve</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>preserve-space</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+</dd><dt>previous</dt><dd><a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+</dd><dt>prevompiled</dt><dd><a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+</dd><dt>principal</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+</dd><dt>printed</dt><dd><a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+</dd><dt>priority</dt><dd><a href="html/libxslt-xsltInternals.html#XSLT_PAT_NO_PRIORITY">XSLT_PAT_NO_PRIORITY</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</dd><dt>problem</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_STRANGE">XSLT_STRANGE</a><br />
+</dd><dt>processed</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltPrintErrorContext">xsltPrintErrorContext</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+</dd><dt>processing</dt><dd><a href="html/libxslt-xsltInternals.html#CHECK_STOPPED">CHECK_STOPPED</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPED0">CHECK_STOPPED0</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-extra.html#xsltDebug">xsltDebug</a><br />
+<a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-transform.html#xsltGetXIncludeDefault">xsltGetXIncludeDefault</a><br />
+<a href="html/libxslt-xsltutils.html#xsltMessage">xsltMessage</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+</dd><dt>processing-instruction</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltProcessingInstruction">xsltProcessingInstruction</a><br />
+</dd><dt>processor</dt><dd><a href="html/libxslt-xslt.html#XSLT_DEFAULT_URL">XSLT_DEFAULT_URL</a><br />
+<a href="html/libxslt-xslt.html#XSLT_DEFAULT_VENDOR">XSLT_DEFAULT_VENDOR</a><br />
+<a href="html/libxslt-extra.html#XSLT_SAXON_NAMESPACE">XSLT_SAXON_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_XALAN_NAMESPACE">XSLT_XALAN_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_XT_NAMESPACE">XSLT_XT_NAMESPACE</a><br />
+<a href="html/libxslt-xslt.html#xsltInit">xsltInit</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltUninit">xsltUninit</a><br />
+</dd><dt>produce</dt><dd><a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+</dd><dt>products</dt><dd><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</dd><dt>profile</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>profiled</dt><dd><a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+</dd><dt>profiling</dt><dd><a href="html/libxslt-xsltutils.html#XSLT_TIMESTAMP_TICS_PER_SEC">XSLT_TIMESTAMP_TICS_PER_SEC</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveProfiling">xsltSaveProfiling</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+</dd><dt>progressive</dt><dd><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</dd><dt>project</dt><dd><a href="html/libxslt-extra.html#XSLT_XALAN_NAMESPACE">XSLT_XALAN_NAMESPACE</a><br />
+</dd><dt>properties</dt><dd><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+</dd><dt>provide</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+</dd><dt>provided</dt><dd><a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+</dd><dt>public?</dt><dd><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+</dd><dt>purpose</dt><dd><a href="html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a><br />
+<a href="html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a><br />
+</dd><dt>pushed</dt><dd><a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+</dd><dt>pushes</dt><dd><a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">A-I</a>
+<a href="APIchunk1.html">J-S</a>
+<a href="APIchunk2.html">T-a</a>
+<a href="APIchunk3.html">b-c</a>
+<a href="APIchunk4.html">d-e</a>
+<a href="APIchunk5.html">f-g</a>
+<a href="APIchunk6.html">h-i</a>
+<a href="APIchunk7.html">j-m</a>
+<a href="APIchunk8.html">n-o</a>
+<a href="APIchunk9.html">p-p</a>
+<a href="APIchunk10.html">q-s</a>
+<a href="APIchunk11.html">t-u</a>
+<a href="APIchunk12.html">v-x</a>
+<a href="APIchunk13.html">y-z</a>
+</h2><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/APIconstructors.html b/libxslt/doc/APIconstructors.html
new file mode 100644
index 0000000..af1d285
--- /dev/null
+++ b/libxslt/doc/APIconstructors.html
@@ -0,0 +1,89 @@
+<?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>List of constructors 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>List of constructors 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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>Type const xmlChar *:</h2><p><a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</p><h2>Type long:</h2><p><a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+</p><h2>Type void *:</h2><p><a href="html/libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+</p><h2>Type xmlAttrPtr:</h2><p><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+</p><h2>Type xmlChar *:</h2><p><a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+</p><h2>Type xmlDocPtr:</h2><p><a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+</p><h2>Type xmlHashTablePtr:</h2><p><a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+</p><h2>Type xmlNodePtr:</h2><p><a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+</p><h2>Type xmlNodePtr *:</h2><p><a href="html/libxslt-templates.html#xsltTemplateProcess">xsltTemplateProcess</a><br />
+</p><h2>Type xmlNodeSetPtr:</h2><p><a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+</p><h2>Type xmlNsPtr:</h2><p><a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+</p><h2>Type xmlXPathCompExprPtr:</h2><p><a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</p><h2>Type xmlXPathError:</h2><p><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</p><h2>Type xmlXPathFunction:</h2><p><a href="html/libxslt-extensions.html#xsltExtModuleFunctionLookup">xsltExtModuleFunctionLookup</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+</p><h2>Type xmlXPathObjectPtr:</h2><p><a href="html/libxslt-variables.html#xsltVariableLookup">xsltVariableLookup</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</p><h2>Type xmlXPathObjectPtr *:</h2><p><a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+</p><h2>Type xsltCompMatchPtr:</h2><p><a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+</p><h2>Type xsltDebugTraceCodes:</h2><p><a href="html/libxslt-xsltutils.html#xsltDebugGetDefaultTrace">xsltDebugGetDefaultTrace</a><br />
+</p><h2>Type xsltDecimalFormatPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a><br />
+</p><h2>Type xsltDocumentPtr:</h2><p><a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadDocument">xsltLoadDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+</p><h2>Type xsltElemPreCompPtr:</h2><p><a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeExtModuleElement">xsltPreComputeExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeFunction">xsltPreComputeFunction</a><br />
+</p><h2>Type xsltLocale:</h2><p><a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+</p><h2>Type xsltLocaleChar *:</h2><p><a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</p><h2>Type xsltPointerListPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltPointerListCreate">xsltPointerListCreate</a><br />
+</p><h2>Type xsltPreComputeFunction:</h2><p><a href="html/libxslt-extensions.html#xsltExtModuleElementPreComputeLookup">xsltExtModuleElementPreComputeLookup</a><br />
+</p><h2>Type xsltSecurityCheck:</h2><p><a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+</p><h2>Type xsltSecurityPrefsPtr:</h2><p><a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltNewSecurityPrefs">xsltNewSecurityPrefs</a><br />
+</p><h2>Type xsltStackElemPtr:</h2><p><a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+</p><h2>Type xsltStylesheetPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNewStylesheet">xsltNewStylesheet</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetFile">xsltParseStylesheetFile</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+</p><h2>Type xsltTemplatePtr:</h2><p><a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+</p><h2>Type xsltTopLevelFunction:</h2><p><a href="html/libxslt-extensions.html#xsltExtModuleTopLevelLookup">xsltExtModuleTopLevelLookup</a><br />
+</p><h2>Type xsltTransformContextPtr:</h2><p><a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</p><h2>Type xsltTransformFunction:</h2><p><a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementLookup">xsltExtModuleElementLookup</a><br />
+</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/APIfiles.html b/libxslt/doc/APIfiles.html
new file mode 100644
index 0000000..9510623
--- /dev/null
+++ b/libxslt/doc/APIfiles.html
@@ -0,0 +1,581 @@
+<?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>List of Symbols per Module 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>List of Symbols per Module 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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><a name="attributes" id="attributes">Module attributes</a>:</h2><p><a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-attributes.html#xsltFreeAttributeSetsHashes">xsltFreeAttributeSetsHashes</a><br />
+<a href="html/libxslt-attributes.html#xsltParseStylesheetAttributeSet">xsltParseStylesheetAttributeSet</a><br />
+<a href="html/libxslt-attributes.html#xsltResolveStylesheetAttributeSet">xsltResolveStylesheetAttributeSet</a><br />
+</p><h2><a name="documents" id="documents">Module documents</a>:</h2><p><a href="html/libxslt-documents.html#XSLT_LOAD_DOCUMENT">XSLT_LOAD_DOCUMENT</a><br />
+<a href="html/libxslt-documents.html#XSLT_LOAD_START">XSLT_LOAD_START</a><br />
+<a href="html/libxslt-documents.html#XSLT_LOAD_STYLESHEET">XSLT_LOAD_STYLESHEET</a><br />
+<a href="html/libxslt-documents.html#xsltDocDefaultLoader">xsltDocDefaultLoader</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-documents.html#xsltFreeDocuments">xsltFreeDocuments</a><br />
+<a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+<a href="html/libxslt-documents.html#xsltLoadDocument">xsltLoadDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadType">xsltLoadType</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+<a href="html/libxslt-documents.html#xsltSetLoaderFunc">xsltSetLoaderFunc</a><br />
+</p><h2><a name="extensions" id="extensions">Module extensions</a>:</h2><p><a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-extensions.html#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a><br />
+<a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementLookup">xsltExtModuleElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementPreComputeLookup">xsltExtModuleElementPreComputeLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleFunctionLookup">xsltExtModuleFunctionLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleTopLevelLookup">xsltExtModuleTopLevelLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeCtxtExts">xsltFreeCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeExts">xsltFreeExts</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+<a href="html/libxslt-extensions.html#xsltInitCtxtExts">xsltInitCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-extensions.html#xsltInitGlobals">xsltInitGlobals</a><br />
+<a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeExtModuleElement">xsltPreComputeExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeFunction">xsltPreComputeFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleElement">xsltRegisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFunction">xsltRegisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleTopLevel">xsltRegisterExtModuleTopLevel</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterTestModule">xsltRegisterTestModule</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownCtxtExts">xsltShutdownCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownExts">xsltShutdownExts</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltTopLevelFunction">xsltTopLevelFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModule">xsltUnregisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleElement">xsltUnregisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleFunction">xsltUnregisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleTopLevel">xsltUnregisterExtModuleTopLevel</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</p><h2><a name="extra" id="extra">Module extra</a>:</h2><p><a href="html/libxslt-extra.html#XSLT_LIBXSLT_NAMESPACE">XSLT_LIBXSLT_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_NORM_SAXON_NAMESPACE">XSLT_NORM_SAXON_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_SAXON_NAMESPACE">XSLT_SAXON_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_XALAN_NAMESPACE">XSLT_XALAN_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_XT_NAMESPACE">XSLT_XT_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#xsltDebug">xsltDebug</a><br />
+<a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterAllExtras">xsltRegisterAllExtras</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterExtras">xsltRegisterExtras</a><br />
+</p><h2><a name="functions" id="functions">Module functions</a>:</h2><p><a href="html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a><br />
+<a href="html/libxslt-functions.html#xsltDocumentFunction">xsltDocumentFunction</a><br />
+<a href="html/libxslt-functions.html#xsltElementAvailableFunction">xsltElementAvailableFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFormatNumberFunction">xsltFormatNumberFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFunctionAvailableFunction">xsltFunctionAvailableFunction</a><br />
+<a href="html/libxslt-functions.html#xsltGenerateIdFunction">xsltGenerateIdFunction</a><br />
+<a href="html/libxslt-functions.html#xsltKeyFunction">xsltKeyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltRegisterAllFunctions">xsltRegisterAllFunctions</a><br />
+<a href="html/libxslt-functions.html#xsltSystemPropertyFunction">xsltSystemPropertyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltUnparsedEntityURIFunction">xsltUnparsedEntityURIFunction</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+</p><h2><a name="imports" id="imports">Module imports</a>:</h2><p><a href="html/libxslt-imports.html#XSLT_GET_IMPORT_INT">XSLT_GET_IMPORT_INT</a><br />
+<a href="html/libxslt-imports.html#XSLT_GET_IMPORT_PTR">XSLT_GET_IMPORT_PTR</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetImport">xsltParseStylesheetImport</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetInclude">xsltParseStylesheetInclude</a><br />
+</p><h2><a name="keys" id="keys">Module keys</a>:</h2><p><a href="html/libxslt-keys.html#NODE_IS_KEYED">NODE_IS_KEYED</a><br />
+<a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-keys.html#xsltFreeDocumentKeys">xsltFreeDocumentKeys</a><br />
+<a href="html/libxslt-keys.html#xsltFreeKeys">xsltFreeKeys</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</p><h2><a name="namespaces" id="namespaces">Module namespaces</a>:</h2><p><a href="html/libxslt-namespaces.html#UNDEFINED_DEFAULT_NS">UNDEFINED_DEFAULT_NS</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-namespaces.html#xsltFreeNamespaceAliasHashes">xsltFreeNamespaceAliasHashes</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+</p><h2><a name="numbersInternals" id="numbersInternals">Module numbersInternals</a>:</h2><p><a href="html/libxslt-numbersInternals.html#_xsltCompMatch">_xsltCompMatch</a><br />
+<a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-numbersInternals.html#_xsltNumberData">_xsltNumberData</a><br />
+<a href="html/libxslt-numbersInternals.html#xsltFormatNumberInfo">xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-numbersInternals.html#xsltFormatNumberInfoPtr">xsltFormatNumberInfoPtr</a><br />
+<a href="html/libxslt-numbersInternals.html#xsltNumberData">xsltNumberData</a><br />
+<a href="html/libxslt-numbersInternals.html#xsltNumberDataPtr">xsltNumberDataPtr</a><br />
+</p><h2><a name="pattern" id="pattern">Module pattern</a>:</h2><p><a href="html/libxslt-pattern.html#xsltAddTemplate">xsltAddTemplate</a><br />
+<a href="html/libxslt-pattern.html#xsltCleanupTemplates">xsltCleanupTemplates</a><br />
+<a href="html/libxslt-pattern.html#xsltCompMatch">xsltCompMatch</a><br />
+<a href="html/libxslt-pattern.html#xsltCompMatchPtr">xsltCompMatchPtr</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeCompMatchList">xsltFreeCompMatchList</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeTemplateHashes">xsltFreeTemplateHashes</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-pattern.html#xsltMatchPattern">xsltMatchPattern</a><br />
+<a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+<a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</p><h2><a name="preproc" id="preproc">Module preproc</a>:</h2><p><a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-preproc.html#xsltExtMarker">xsltExtMarker</a><br />
+<a href="html/libxslt-preproc.html#xsltFreeStylePreComps">xsltFreeStylePreComps</a><br />
+<a href="html/libxslt-preproc.html#xsltStylePreCompute">xsltStylePreCompute</a><br />
+</p><h2><a name="security" id="security">Module security</a>:</h2><p><a href="html/libxslt-security.html#XSLT_SECPREF_CREATE_DIRECTORY">XSLT_SECPREF_CREATE_DIRECTORY</a><br />
+<a href="html/libxslt-security.html#XSLT_SECPREF_READ_FILE">XSLT_SECPREF_READ_FILE</a><br />
+<a href="html/libxslt-security.html#XSLT_SECPREF_READ_NETWORK">XSLT_SECPREF_READ_NETWORK</a><br />
+<a href="html/libxslt-security.html#XSLT_SECPREF_WRITE_FILE">XSLT_SECPREF_WRITE_FILE</a><br />
+<a href="html/libxslt-security.html#XSLT_SECPREF_WRITE_NETWORK">XSLT_SECPREF_WRITE_NETWORK</a><br />
+<a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-security.html#xsltFreeSecurityPrefs">xsltFreeSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltNewSecurityPrefs">xsltNewSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+<a href="html/libxslt-security.html#xsltSecurityOption">xsltSecurityOption</a><br />
+<a href="html/libxslt-security.html#xsltSecurityPrefs">xsltSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</p><h2><a name="templates" id="templates">Module templates</a>:</h2><p><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-templates.html#xsltTemplateProcess">xsltTemplateProcess</a><br />
+</p><h2><a name="transform" id="transform">Module transform</a>:</h2><p><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-transform.html#xsltApplyImports">xsltApplyImports</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-transform.html#xsltApplyTemplates">xsltApplyTemplates</a><br />
+<a href="html/libxslt-transform.html#xsltAttribute">xsltAttribute</a><br />
+<a href="html/libxslt-transform.html#xsltCallTemplate">xsltCallTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltChoose">xsltChoose</a><br />
+<a href="html/libxslt-transform.html#xsltComment">xsltComment</a><br />
+<a href="html/libxslt-transform.html#xsltCopy">xsltCopy</a><br />
+<a href="html/libxslt-transform.html#xsltCopyOf">xsltCopyOf</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+<a href="html/libxslt-transform.html#xsltElement">xsltElement</a><br />
+<a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+<a href="html/libxslt-transform.html#xsltFreeTransformContext">xsltFreeTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltGetXIncludeDefault">xsltGetXIncludeDefault</a><br />
+<a href="html/libxslt-transform.html#xsltIf">xsltIf</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+<a href="html/libxslt-transform.html#xsltNumber">xsltNumber</a><br />
+<a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+<a href="html/libxslt-transform.html#xsltProcessingInstruction">xsltProcessingInstruction</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRegisterAllElement">xsltRegisterAllElement</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+<a href="html/libxslt-transform.html#xsltText">xsltText</a><br />
+<a href="html/libxslt-transform.html#xsltValueOf">xsltValueOf</a><br />
+</p><h2><a name="variables" id="variables">Module variables</a>:</h2><p><a href="html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a><br />
+<a href="html/libxslt-variables.html#xsltAddStackElemList">xsltAddStackElemList</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-variables.html#xsltFreeGlobalVariables">xsltFreeGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalParam">xsltParseGlobalParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalVariable">xsltParseGlobalVariable</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-variables.html#xsltVariableLookup">xsltVariableLookup</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</p><h2><a name="xslt" id="xslt">Module xslt</a>:</h2><p><a href="html/libxslt-xslt.html#XSLT_DEFAULT_URL">XSLT_DEFAULT_URL</a><br />
+<a href="html/libxslt-xslt.html#XSLT_DEFAULT_VENDOR">XSLT_DEFAULT_VENDOR</a><br />
+<a href="html/libxslt-xslt.html#XSLT_DEFAULT_VERSION">XSLT_DEFAULT_VERSION</a><br />
+<a href="html/libxslt-xslt.html#XSLT_NAMESPACE">XSLT_NAMESPACE</a><br />
+<a href="html/libxslt-xslt.html#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a><br />
+<a href="html/libxslt-xslt.html#xsltCleanupGlobals">xsltCleanupGlobals</a><br />
+<a href="html/libxslt-xslt.html#xsltEngineVersion">xsltEngineVersion</a><br />
+<a href="html/libxslt-xslt.html#xsltInit">xsltInit</a><br />
+<a href="html/libxslt-xslt.html#xsltLibxmlVersion">xsltLibxmlVersion</a><br />
+<a href="html/libxslt-xslt.html#xsltLibxsltVersion">xsltLibxsltVersion</a><br />
+<a href="html/libxslt-xslt.html#xsltMaxDepth">xsltMaxDepth</a><br />
+<a href="html/libxslt-xslt.html#xsltMaxVars">xsltMaxVars</a><br />
+</p><h2><a name="xsltInternals" id="xsltInternals">Module xsltInternals</a>:</h2><p><a href="html/libxslt-xsltInternals.html#CHECK_STOPPED">CHECK_STOPPED</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPED0">CHECK_STOPPED0</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+<a href="html/libxslt-xsltInternals.html#IS_XSLT_ATTR_FAST">IS_XSLT_ATTR_FAST</a><br />
+<a href="html/libxslt-xsltInternals.html#IS_XSLT_ELEM_FAST">IS_XSLT_ELEM_FAST</a><br />
+<a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_CCTXT">XSLT_CCTXT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ERROR_SEVERITY_ERROR">XSLT_ERROR_SEVERITY_ERROR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ERROR_SEVERITY_WARNING">XSLT_ERROR_SEVERITY_WARNING</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_APPLYIMPORTS">XSLT_FUNC_APPLYIMPORTS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_APPLYTEMPLATES">XSLT_FUNC_APPLYTEMPLATES</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_ATTRIBUTE">XSLT_FUNC_ATTRIBUTE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_ATTRSET">XSLT_FUNC_ATTRSET</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_CALLTEMPLATE">XSLT_FUNC_CALLTEMPLATE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_CHOOSE">XSLT_FUNC_CHOOSE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_COMMENT">XSLT_FUNC_COMMENT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_COPY">XSLT_FUNC_COPY</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_COPYOF">XSLT_FUNC_COPYOF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_DOCUMENT">XSLT_FUNC_DOCUMENT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_ELEMENT">XSLT_FUNC_ELEMENT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_EXTENSION">XSLT_FUNC_EXTENSION</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_FALLBACK">XSLT_FUNC_FALLBACK</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_FOREACH">XSLT_FUNC_FOREACH</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_IF">XSLT_FUNC_IF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_INCLUDE">XSLT_FUNC_INCLUDE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_LITERAL_RESULT_ELEMENT">XSLT_FUNC_LITERAL_RESULT_ELEMENT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_MESSAGE">XSLT_FUNC_MESSAGE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_NUMBER">XSLT_FUNC_NUMBER</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_OTHERWISE">XSLT_FUNC_OTHERWISE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_PARAM">XSLT_FUNC_PARAM</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_PI">XSLT_FUNC_PI</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_SORT">XSLT_FUNC_SORT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_TEXT">XSLT_FUNC_TEXT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_UNKOWN_FORWARDS_COMPAT">XSLT_FUNC_UNKOWN_FORWARDS_COMPAT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_VALUEOF">XSLT_FUNC_VALUEOF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_VARIABLE">XSLT_FUNC_VARIABLE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_WHEN">XSLT_FUNC_WHEN</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_WITHPARAM">XSLT_FUNC_WITHPARAM</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_GET_INTERNAL_NSMAP">XSLT_GET_INTERNAL_NSMAP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_HAS_INTERNAL_NSMAP">XSLT_HAS_INTERNAL_NSMAP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_IS_RES_TREE_FRAG">XSLT_IS_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_IS_TEXT_NODE">XSLT_IS_TEXT_NODE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMMON_FIELDS">XSLT_ITEM_COMMON_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NSINSCOPE_FIELDS">XSLT_ITEM_NSINSCOPE_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_MARK_RES_TREE_FRAG">XSLT_MARK_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_MAX_SORT">XSLT_MAX_SORT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_OUTPUT_HTML">XSLT_OUTPUT_HTML</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_OUTPUT_TEXT">XSLT_OUTPUT_TEXT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_OUTPUT_XML">XSLT_OUTPUT_XML</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_PAT_NO_PRIORITY">XSLT_PAT_NO_PRIORITY</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_VARS">XSLT_REFACTORED_VARS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_XPATHCOMP">XSLT_REFACTORED_XPATHCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA">XSLT_RUNTIME_EXTRA</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_FREE">XSLT_RUNTIME_EXTRA_FREE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_LST">XSLT_RUNTIME_EXTRA_LST</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_STATE_ERROR">XSLT_STATE_ERROR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_STATE_OK">XSLT_STATE_OK</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_STATE_STOPPED">XSLT_STATE_STOPPED</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltDecimalFormat">_xsltDecimalFormat</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltKeyDef">_xsltKeyDef</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltKeyTable">_xsltKeyTable</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsAlias">_xsltNsAlias</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsList">_xsltNsList</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsListContainer">_xsltNsListContainer</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsMap">_xsltNsMap</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltPointerList">_xsltPointerList</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltRuntimeExtra">_xsltRuntimeExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleBasicEmptyItem">_xsltStyleBasicEmptyItem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleBasicExpressionItem">_xsltStyleBasicExpressionItem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleBasicItemVariable">_xsltStyleBasicItemVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemApplyTemplates">_xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemAttribute">_xsltStyleItemAttribute</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemCallTemplate">_xsltStyleItemCallTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemCopy">_xsltStyleItemCopy</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemDocument">_xsltStyleItemDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemElement">_xsltStyleItemElement</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemExtElement">_xsltStyleItemExtElement</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemIf">_xsltStyleItemIf</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemInclude">_xsltStyleItemInclude</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemLRElementInfo">_xsltStyleItemLRElementInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemMessage">_xsltStyleItemMessage</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemNumber">_xsltStyleItemNumber</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemOtherwise">_xsltStyleItemOtherwise</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemPI">_xsltStyleItemPI</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemParam">_xsltStyleItemParam</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemSort">_xsltStyleItemSort</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemText">_xsltStyleItemText</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemUknown">_xsltStyleItemUknown</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemValueOf">_xsltStyleItemValueOf</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemWhen">_xsltStyleItemWhen</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformCache">_xsltTransformCache</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltVarInfo">_xsltVarInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompilerCtxt">xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompilerNodeInfo">xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltConstNamespaceNameXSLT">xsltConstNamespaceNameXSLT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDecimalFormat">xsltDecimalFormat</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDocument">xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEffectiveNs">xsltEffectiveNs</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEffectiveNsPtr">xsltEffectiveNsPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltElemPreComp">xsltElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltErrorSeverityType">xsltErrorSeverityType</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeAVTList">xsltFreeAVTList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStackElemList">xsltFreeStackElemList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStylesheet">xsltFreeStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltIsBlank">xsltIsBlank</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltKeyDef">xsltKeyDef</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltKeyDefPtr">xsltKeyDefPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltKeyTable">xsltKeyTable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltKeyTablePtr">xsltKeyTablePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNewStylesheet">xsltNewStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsAlias">xsltNsAlias</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsAliasPtr">xsltNsAliasPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsList">xsltNsList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsListContainer">xsltNsListContainer</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsListContainerPtr">xsltNsListContainerPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsListPtr">xsltNsListPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsMap">xsltNsMap</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsMapPtr">xsltNsMapPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltOutputType">xsltOutputType</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetFile">xsltParseStylesheetFile</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerList">xsltPointerList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListCreate">xsltPointerListCreate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListFree">xsltPointerListFree</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPrincipalStylesheetData">xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPrincipalStylesheetDataPtr">xsltPrincipalStylesheetDataPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRuntimeExtra">xsltRuntimeExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRuntimeExtraPtr">xsltRuntimeExtraPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStackElem">xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicEmptyItemPtr">xsltStyleBasicEmptyItemPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicExpressionItem">xsltStyleBasicExpressionItem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicExpressionItemPtr">xsltStyleBasicExpressionItemPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicItemVariable">xsltStyleBasicItemVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicItemVariablePtr">xsltStyleBasicItemVariablePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemApplyImports">xsltStyleItemApplyImports</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemApplyImportsPtr">xsltStyleItemApplyImportsPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemApplyTemplates">xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemApplyTemplatesPtr">xsltStyleItemApplyTemplatesPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemAttribute">xsltStyleItemAttribute</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemAttributePtr">xsltStyleItemAttributePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCallTemplate">xsltStyleItemCallTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCallTemplatePtr">xsltStyleItemCallTemplatePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemChoose">xsltStyleItemChoose</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemChoosePtr">xsltStyleItemChoosePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemComment">xsltStyleItemComment</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCommentPtr">xsltStyleItemCommentPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCopy">xsltStyleItemCopy</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCopyOf">xsltStyleItemCopyOf</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCopyOfPtr">xsltStyleItemCopyOfPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCopyPtr">xsltStyleItemCopyPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemDocument">xsltStyleItemDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemDocumentPtr">xsltStyleItemDocumentPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemElement">xsltStyleItemElement</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemElementPtr">xsltStyleItemElementPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemExtElement">xsltStyleItemExtElement</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemExtElementPtr">xsltStyleItemExtElementPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemFallback">xsltStyleItemFallback</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemFallbackPtr">xsltStyleItemFallbackPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemForEach">xsltStyleItemForEach</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemForEachPtr">xsltStyleItemForEachPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemIf">xsltStyleItemIf</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemIfPtr">xsltStyleItemIfPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemInclude">xsltStyleItemInclude</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemIncludePtr">xsltStyleItemIncludePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemLRElementInfo">xsltStyleItemLRElementInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemLRElementInfoPtr">xsltStyleItemLRElementInfoPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemMessage">xsltStyleItemMessage</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemMessagePtr">xsltStyleItemMessagePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemNumber">xsltStyleItemNumber</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemNumberPtr">xsltStyleItemNumberPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemOtherwise">xsltStyleItemOtherwise</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemOtherwisePtr">xsltStyleItemOtherwisePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemPI">xsltStyleItemPI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemPIPtr">xsltStyleItemPIPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemParam">xsltStyleItemParam</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemParamPtr">xsltStyleItemParamPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemSort">xsltStyleItemSort</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemSortPtr">xsltStyleItemSortPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemText">xsltStyleItemText</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemTextPtr">xsltStyleItemTextPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemUknown">xsltStyleItemUknown</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemUknownPtr">xsltStyleItemUknownPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemValueOf">xsltStyleItemValueOf</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemValueOfPtr">xsltStyleItemValueOfPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemVariable">xsltStyleItemVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemVariablePtr">xsltStyleItemVariablePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemWhen">xsltStyleItemWhen</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemWhenPtr">xsltStyleItemWhenPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemWithParam">xsltStyleItemWithParam</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemWithParamPtr">xsltStyleItemWithParamPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStylePreComp">xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStylesheet">xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTemplate">xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformCache">xsltTransformCache</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformCachePtr">xsltTransformCachePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformContext">xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformState">xsltTransformState</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltUninit">xsltUninit</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltVarInfo">xsltVarInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltVarInfoPtr">xsltVarInfoPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltXSLTAttrMarker">xsltXSLTAttrMarker</a><br />
+</p><h2><a name="xsltexports" id="xsltexports">Module xsltexports</a>:</h2><p><a href="html/libxslt-xsltexports.html#LIBXSLT_PUBLIC">LIBXSLT_PUBLIC</a><br />
+<a href="html/libxslt-xsltexports.html#XSLTCALL">XSLTCALL</a><br />
+<a href="html/libxslt-xsltexports.html#XSLTPUBFUN">XSLTPUBFUN</a><br />
+<a href="html/libxslt-xsltexports.html#XSLTPUBVAR">XSLTPUBVAR</a><br />
+<a href="html/libxslt-xsltexports.html#_REENTRANT">_REENTRANT</a><br />
+</p><h2><a name="xsltlocale" id="xsltlocale">Module xsltlocale</a>:</h2><p><a href="html/libxslt-xsltlocale.html#XSLT_LOCALE_NONE">XSLT_LOCALE_NONE</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocale">xsltFreeLocale</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocales">xsltFreeLocales</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocale">xsltLocale</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleChar">xsltLocaleChar</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</p><h2><a name="xsltutils" id="xsltutils">Module xsltutils</a>:</h2><p><a href="html/libxslt-xsltutils.html#IS_XSLT_ELEM">IS_XSLT_ELEM</a><br />
+<a href="html/libxslt-xsltutils.html#IS_XSLT_NAME">IS_XSLT_NAME</a><br />
+<a href="html/libxslt-xsltutils.html#IS_XSLT_REAL_NODE">IS_XSLT_REAL_NODE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_CONT">XSLT_DEBUG_CONT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_INIT">XSLT_DEBUG_INIT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_NEXT">XSLT_DEBUG_NEXT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_NONE">XSLT_DEBUG_NONE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_QUIT">XSLT_DEBUG_QUIT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_RUN">XSLT_DEBUG_RUN</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_RUN_RESTART">XSLT_DEBUG_RUN_RESTART</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_STEP">XSLT_DEBUG_STEP</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_STEPOUT">XSLT_DEBUG_STEPOUT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_STOP">XSLT_DEBUG_STOP</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_STRANGE">XSLT_STRANGE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TIMESTAMP_TICS_PER_SEC">XSLT_TIMESTAMP_TICS_PER_SEC</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TODO">XSLT_TODO</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE">XSLT_TRACE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_ALL">XSLT_TRACE_ALL</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_APPLY_TEMPLATE">XSLT_TRACE_APPLY_TEMPLATE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_APPLY_TEMPLATES">XSLT_TRACE_APPLY_TEMPLATES</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_CALL_TEMPLATE">XSLT_TRACE_CALL_TEMPLATE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_CHOOSE">XSLT_TRACE_CHOOSE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_COMMENT">XSLT_TRACE_COMMENT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_COPY">XSLT_TRACE_COPY</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_COPY_OF">XSLT_TRACE_COPY_OF</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_COPY_TEXT">XSLT_TRACE_COPY_TEXT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_FOR_EACH">XSLT_TRACE_FOR_EACH</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_IF">XSLT_TRACE_IF</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_KEYS">XSLT_TRACE_KEYS</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_NONE">XSLT_TRACE_NONE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_PI">XSLT_TRACE_PI</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_PROCESS_NODE">XSLT_TRACE_PROCESS_NODE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_STRIP_SPACES">XSLT_TRACE_STRIP_SPACES</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_TEMPLATES">XSLT_TRACE_TEMPLATES</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_VALUE_OF">XSLT_TRACE_VALUE_OF</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_VARIABLES">XSLT_TRACE_VARIABLES</a><br />
+<a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-xsltutils.html#xslDebugStatus">xslDebugStatus</a><br />
+<a href="html/libxslt-xsltutils.html#xslDropCall">xslDropCall</a><br />
+<a href="html/libxslt-xsltutils.html#xsltAddCallCallback">xsltAddCallCallback</a><br />
+<a href="html/libxslt-xsltutils.html#xsltCalibrateAdjust">xsltCalibrateAdjust</a><br />
+<a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugGetDefaultTrace">xsltDebugGetDefaultTrace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugSetDefaultTrace">xsltDebugSetDefaultTrace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugStatusCodes">xsltDebugStatusCodes</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugTraceCodes">xsltDebugTraceCodes</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDropCallCallback">xsltDropCallCallback</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGenericDebug">xsltGenericDebug</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGenericDebugContext">xsltGenericDebugContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGenericError">xsltGenericError</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGenericErrorContext">xsltGenericErrorContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetDebuggerStatus">xsltGetDebuggerStatus</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-xsltutils.html#xsltHandleDebuggerCallback">xsltHandleDebuggerCallback</a><br />
+<a href="html/libxslt-xsltutils.html#xsltMessage">xsltMessage</a><br />
+<a href="html/libxslt-xsltutils.html#xsltPrintErrorContext">xsltPrintErrorContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveProfiling">xsltSaveProfiling</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerStatus">xsltSetDebuggerStatus</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetSortFunc">xsltSetSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</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/APIfunctions.html b/libxslt/doc/APIfunctions.html
new file mode 100644
index 0000000..f2eba6c
--- /dev/null
+++ b/libxslt/doc/APIfunctions.html
@@ -0,0 +1,511 @@
+<?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>List of function manipulating types in 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>List of function manipulating types in 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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>Type ...:</h2><p><a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+</p><h2>Type FILE *:</h2><p><a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-extensions.html#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveProfiling">xsltSaveProfiling</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+</p><h2>Type const char **:</h2><p><a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</p><h2>Type const unsigned char *:</h2><p><a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+</p><h2>Type const xmlChar *:</h2><p><a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-pattern.html#xsltAddTemplate">xsltAddTemplate</a><br />
+<a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementLookup">xsltExtModuleElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementPreComputeLookup">xsltExtModuleElementPreComputeLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleFunctionLookup">xsltExtModuleFunctionLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleTopLevelLookup">xsltExtModuleTopLevelLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-documents.html#xsltLoadDocument">xsltLoadDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+<a href="html/libxslt-pattern.html#xsltMatchPattern">xsltMatchPattern</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+<a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetFile">xsltParseStylesheetFile</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleElement">xsltRegisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFunction">xsltRegisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleTopLevel">xsltRegisterExtModuleTopLevel</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModule">xsltUnregisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleElement">xsltUnregisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleFunction">xsltUnregisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleTopLevel">xsltUnregisterExtModuleTopLevel</a><br />
+<a href="html/libxslt-variables.html#xsltVariableLookup">xsltVariableLookup</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</p><h2>Type const xmlChar **:</h2><p><a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</p><h2>Type const xsltLocaleChar *:</h2><p><a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+</p><h2>Type double:</h2><p><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</p><h2>Type int *:</h2><p><a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</p><h2>Type long:</h2><p><a href="html/libxslt-xsltutils.html#xsltCalibrateAdjust">xsltCalibrateAdjust</a><br />
+</p><h2>Type void *:</h2><p><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeAVTList">xsltFreeAVTList</a><br />
+<a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+</p><h2>Type xmlAttrPtr:</h2><p><a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+</p><h2>Type xmlChar *:</h2><p><a href="html/libxslt-xsltInternals.html#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltIsBlank">xsltIsBlank</a><br />
+</p><h2>Type xmlChar **:</h2><p><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</p><h2>Type xmlDictPtr:</h2><p><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+</p><h2>Type xmlDocPtr:</h2><p><a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-pattern.html#xsltMatchPattern">xsltMatchPattern</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+<a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+</p><h2>Type xmlGenericErrorFunc:</h2><p><a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+</p><h2>Type xmlNodePtr:</h2><p><a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-xsltutils.html#xsltAddCallCallback">xsltAddCallCallback</a><br />
+<a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyImports">xsltApplyImports</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+<a href="html/libxslt-transform.html#xsltApplyTemplates">xsltApplyTemplates</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-transform.html#xsltAttribute">xsltAttribute</a><br />
+<a href="html/libxslt-transform.html#xsltCallTemplate">xsltCallTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltChoose">xsltChoose</a><br />
+<a href="html/libxslt-transform.html#xsltComment">xsltComment</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-transform.html#xsltCopy">xsltCopy</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-transform.html#xsltCopyOf">xsltCopyOf</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-extra.html#xsltDebug">xsltDebug</a><br />
+<a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+<a href="html/libxslt-transform.html#xsltElement">xsltElement</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltHandleDebuggerCallback">xsltHandleDebuggerCallback</a><br />
+<a href="html/libxslt-transform.html#xsltIf">xsltIf</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-pattern.html#xsltMatchPattern">xsltMatchPattern</a><br />
+<a href="html/libxslt-xsltutils.html#xsltMessage">xsltMessage</a><br />
+<a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+<a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+<a href="html/libxslt-transform.html#xsltNumber">xsltNumber</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalParam">xsltParseGlobalParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalVariable">xsltParseGlobalVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+<a href="html/libxslt-attributes.html#xsltParseStylesheetAttributeSet">xsltParseStylesheetAttributeSet</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetImport">xsltParseStylesheetImport</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetInclude">xsltParseStylesheetInclude</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeExtModuleElement">xsltPreComputeExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeFunction">xsltPreComputeFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltPrintErrorContext">xsltPrintErrorContext</a><br />
+<a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+<a href="html/libxslt-transform.html#xsltProcessingInstruction">xsltProcessingInstruction</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+<a href="html/libxslt-preproc.html#xsltStylePreCompute">xsltStylePreCompute</a><br />
+<a href="html/libxslt-templates.html#xsltTemplateProcess">xsltTemplateProcess</a><br />
+<a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+<a href="html/libxslt-transform.html#xsltText">xsltText</a><br />
+<a href="html/libxslt-extensions.html#xsltTopLevelFunction">xsltTopLevelFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+<a href="html/libxslt-transform.html#xsltValueOf">xsltValueOf</a><br />
+</p><h2>Type xmlNodePtr *:</h2><p><a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a><br />
+</p><h2>Type xmlNodeSetPtr:</h2><p><a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+</p><h2>Type xmlNsPtr:</h2><p><a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+</p><h2>Type xmlNsPtr *:</h2><p><a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+</p><h2>Type xmlOutputBufferPtr:</h2><p><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+</p><h2>Type xmlSAXHandlerPtr:</h2><p><a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+</p><h2>Type xmlXPathCompExprPtr:</h2><p><a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+</p><h2>Type xmlXPathContextPtr:</h2><p><a href="html/libxslt-functions.html#xsltRegisterAllFunctions">xsltRegisterAllFunctions</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+</p><h2>Type xmlXPathFunction:</h2><p><a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFunction">xsltRegisterExtModuleFunction</a><br />
+</p><h2>Type xmlXPathObjectPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+</p><h2>Type xmlXPathParserContextPtr:</h2><p><a href="html/libxslt-functions.html#xsltDocumentFunction">xsltDocumentFunction</a><br />
+<a href="html/libxslt-functions.html#xsltElementAvailableFunction">xsltElementAvailableFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFormatNumberFunction">xsltFormatNumberFunction</a><br />
+<a href="html/libxslt-functions.html#xsltFunctionAvailableFunction">xsltFunctionAvailableFunction</a><br />
+<a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+<a href="html/libxslt-functions.html#xsltGenerateIdFunction">xsltGenerateIdFunction</a><br />
+<a href="html/libxslt-functions.html#xsltKeyFunction">xsltKeyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltSystemPropertyFunction">xsltSystemPropertyFunction</a><br />
+<a href="html/libxslt-functions.html#xsltUnparsedEntityURIFunction">xsltUnparsedEntityURIFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+</p><h2>Type xsltCompMatchPtr:</h2><p><a href="html/libxslt-pattern.html#xsltFreeCompMatchList">xsltFreeCompMatchList</a><br />
+<a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+</p><h2>Type xsltCompilerCtxtPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+</p><h2>Type xsltDebugTraceCodes:</h2><p><a href="html/libxslt-xsltutils.html#xsltDebugSetDefaultTrace">xsltDebugSetDefaultTrace</a><br />
+</p><h2>Type xsltDecimalFormatPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+</p><h2>Type xsltDocLoaderFunc:</h2><p><a href="html/libxslt-documents.html#xsltSetLoaderFunc">xsltSetLoaderFunc</a><br />
+</p><h2>Type xsltDocumentPtr:</h2><p><a href="html/libxslt-keys.html#xsltFreeDocumentKeys">xsltFreeDocumentKeys</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+</p><h2>Type xsltElemPreCompDeallocator:</h2><p><a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+</p><h2>Type xsltElemPreCompPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+</p><h2>Type xsltExtInitFunction:</h2><p><a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+</p><h2>Type xsltExtShutdownFunction:</h2><p><a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+</p><h2>Type xsltKeyDefPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+</p><h2>Type xsltLoadType:</h2><p><a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+</p><h2>Type xsltLocale:</h2><p><a href="html/libxslt-xsltlocale.html#xsltFreeLocale">xsltFreeLocale</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+</p><h2>Type xsltNsMapPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a><br />
+</p><h2>Type xsltNumberDataPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+</p><h2>Type xsltPointerListPtr:</h2><p><a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListFree">xsltPointerListFree</a><br />
+</p><h2>Type xsltPreComputeFunction:</h2><p><a href="html/libxslt-extensions.html#xsltRegisterExtModuleElement">xsltRegisterExtModuleElement</a><br />
+</p><h2>Type xsltSecurityCheck:</h2><p><a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</p><h2>Type xsltSecurityOption:</h2><p><a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</p><h2>Type xsltSecurityPrefsPtr:</h2><p><a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-security.html#xsltFreeSecurityPrefs">xsltFreeSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+</p><h2>Type xsltSortFunc:</h2><p><a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetSortFunc">xsltSetSortFunc</a><br />
+</p><h2>Type xsltStackElemPtr:</h2><p><a href="html/libxslt-variables.html#xsltAddStackElemList">xsltAddStackElemList</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStackElemList">xsltFreeStackElemList</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+</p><h2>Type xsltStyleExtInitFunction:</h2><p><a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+</p><h2>Type xsltStyleExtShutdownFunction:</h2><p><a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+</p><h2>Type xsltStylePreCompPtr:</h2><p><a href="html/libxslt-transform.html#xsltApplyImports">xsltApplyImports</a><br />
+<a href="html/libxslt-transform.html#xsltApplyTemplates">xsltApplyTemplates</a><br />
+<a href="html/libxslt-transform.html#xsltAttribute">xsltAttribute</a><br />
+<a href="html/libxslt-transform.html#xsltCallTemplate">xsltCallTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltChoose">xsltChoose</a><br />
+<a href="html/libxslt-transform.html#xsltComment">xsltComment</a><br />
+<a href="html/libxslt-transform.html#xsltCopy">xsltCopy</a><br />
+<a href="html/libxslt-transform.html#xsltCopyOf">xsltCopyOf</a><br />
+<a href="html/libxslt-extra.html#xsltDebug">xsltDebug</a><br />
+<a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+<a href="html/libxslt-transform.html#xsltElement">xsltElement</a><br />
+<a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+<a href="html/libxslt-transform.html#xsltIf">xsltIf</a><br />
+<a href="html/libxslt-transform.html#xsltNumber">xsltNumber</a><br />
+<a href="html/libxslt-transform.html#xsltProcessingInstruction">xsltProcessingInstruction</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+<a href="html/libxslt-transform.html#xsltText">xsltText</a><br />
+<a href="html/libxslt-transform.html#xsltValueOf">xsltValueOf</a><br />
+</p><h2>Type xsltStylesheetPtr:</h2><p><a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-pattern.html#xsltAddTemplate">xsltAddTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-pattern.html#xsltCleanupTemplates">xsltCleanupTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a><br />
+<a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-attributes.html#xsltFreeAttributeSetsHashes">xsltFreeAttributeSetsHashes</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeExts">xsltFreeExts</a><br />
+<a href="html/libxslt-keys.html#xsltFreeKeys">xsltFreeKeys</a><br />
+<a href="html/libxslt-namespaces.html#xsltFreeNamespaceAliasHashes">xsltFreeNamespaceAliasHashes</a><br />
+<a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+<a href="html/libxslt-preproc.html#xsltFreeStylePreComps">xsltFreeStylePreComps</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStylesheet">xsltFreeStylesheet</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeTemplateHashes">xsltFreeTemplateHashes</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+<a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+<a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+<a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalParam">xsltParseGlobalParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalVariable">xsltParseGlobalVariable</a><br />
+<a href="html/libxslt-attributes.html#xsltParseStylesheetAttributeSet">xsltParseStylesheetAttributeSet</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetImport">xsltParseStylesheetImport</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetInclude">xsltParseStylesheetInclude</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeExtModuleElement">xsltPreComputeExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeFunction">xsltPreComputeFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltPrintErrorContext">xsltPrintErrorContext</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-attributes.html#xsltResolveStylesheetAttributeSet">xsltResolveStylesheetAttributeSet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownExts">xsltShutdownExts</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-preproc.html#xsltStylePreCompute">xsltStylePreCompute</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltTopLevelFunction">xsltTopLevelFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+</p><h2>Type xsltTemplatePtr:</h2><p><a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-xsltutils.html#xsltAddCallCallback">xsltAddCallCallback</a><br />
+<a href="html/libxslt-pattern.html#xsltAddTemplate">xsltAddTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltHandleDebuggerCallback">xsltHandleDebuggerCallback</a><br />
+</p><h2>Type xsltTopLevelFunction:</h2><p><a href="html/libxslt-extensions.html#xsltRegisterExtModuleTopLevel">xsltRegisterExtModuleTopLevel</a><br />
+</p><h2>Type xsltTransformContextPtr:</h2><p><a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-variables.html#xsltAddStackElemList">xsltAddStackElemList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+<a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyImports">xsltApplyImports</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-transform.html#xsltApplyTemplates">xsltApplyTemplates</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-transform.html#xsltAttribute">xsltAttribute</a><br />
+<a href="html/libxslt-transform.html#xsltCallTemplate">xsltCallTemplate</a><br />
+<a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-transform.html#xsltChoose">xsltChoose</a><br />
+<a href="html/libxslt-transform.html#xsltComment">xsltComment</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-transform.html#xsltCopy">xsltCopy</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-transform.html#xsltCopyOf">xsltCopyOf</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-extra.html#xsltDebug">xsltDebug</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+<a href="html/libxslt-transform.html#xsltElement">xsltElement</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeCtxtExts">xsltFreeCtxtExts</a><br />
+<a href="html/libxslt-documents.html#xsltFreeDocuments">xsltFreeDocuments</a><br />
+<a href="html/libxslt-variables.html#xsltFreeGlobalVariables">xsltFreeGlobalVariables</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+<a href="html/libxslt-transform.html#xsltFreeTransformContext">xsltFreeTransformContext</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltHandleDebuggerCallback">xsltHandleDebuggerCallback</a><br />
+<a href="html/libxslt-transform.html#xsltIf">xsltIf</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+<a href="html/libxslt-extensions.html#xsltInitCtxtExts">xsltInitCtxtExts</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+<a href="html/libxslt-documents.html#xsltLoadDocument">xsltLoadDocument</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-pattern.html#xsltMatchPattern">xsltMatchPattern</a><br />
+<a href="html/libxslt-xsltutils.html#xsltMessage">xsltMessage</a><br />
+<a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-transform.html#xsltNumber">xsltNumber</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a><br />
+<a href="html/libxslt-xsltutils.html#xsltPrintErrorContext">xsltPrintErrorContext</a><br />
+<a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+<a href="html/libxslt-transform.html#xsltProcessingInstruction">xsltProcessingInstruction</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltRegisterAllElement">xsltRegisterAllElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterExtras">xsltRegisterExtras</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveProfiling">xsltSaveProfiling</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownCtxtExts">xsltShutdownCtxtExts</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a><br />
+<a href="html/libxslt-templates.html#xsltTemplateProcess">xsltTemplateProcess</a><br />
+<a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+<a href="html/libxslt-transform.html#xsltText">xsltText</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+<a href="html/libxslt-transform.html#xsltValueOf">xsltValueOf</a><br />
+<a href="html/libxslt-variables.html#xsltVariableLookup">xsltVariableLookup</a><br />
+</p><h2>Type xsltTransformFunction:</h2><p><a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeFunction">xsltPreComputeFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleElement">xsltRegisterExtModuleElement</a><br />
+</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/APIsymbols.html b/libxslt/doc/APIsymbols.html
new file mode 100644
index 0000000..f5500a1
--- /dev/null
+++ b/libxslt/doc/APIsymbols.html
@@ -0,0 +1,581 @@
+<?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>Alphabetic List of Symbols in 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>Alphabetic List of Symbols in 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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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>Letter C:</h2><p><a href="html/libxslt-xsltInternals.html#CHECK_STOPPED">CHECK_STOPPED</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPED0">CHECK_STOPPED0</a><br />
+<a href="html/libxslt-xsltInternals.html#CHECK_STOPPEDE">CHECK_STOPPEDE</a><br />
+</p><h2>Letter I:</h2><p><a href="html/libxslt-xsltInternals.html#IS_XSLT_ATTR_FAST">IS_XSLT_ATTR_FAST</a><br />
+<a href="html/libxslt-xsltutils.html#IS_XSLT_ELEM">IS_XSLT_ELEM</a><br />
+<a href="html/libxslt-xsltInternals.html#IS_XSLT_ELEM_FAST">IS_XSLT_ELEM_FAST</a><br />
+<a href="html/libxslt-xsltutils.html#IS_XSLT_NAME">IS_XSLT_NAME</a><br />
+<a href="html/libxslt-xsltutils.html#IS_XSLT_REAL_NODE">IS_XSLT_REAL_NODE</a><br />
+</p><h2>Letter L:</h2><p><a href="html/libxslt-xsltexports.html#LIBXSLT_PUBLIC">LIBXSLT_PUBLIC</a><br />
+</p><h2>Letter N:</h2><p><a href="html/libxslt-keys.html#NODE_IS_KEYED">NODE_IS_KEYED</a><br />
+</p><h2>Letter U:</h2><p><a href="html/libxslt-namespaces.html#UNDEFINED_DEFAULT_NS">UNDEFINED_DEFAULT_NS</a><br />
+</p><h2>Letter X:</h2><p><a href="html/libxslt-xsltInternals.html#XML_CAST_FPTR">XML_CAST_FPTR</a><br />
+<a href="html/libxslt-xsltexports.html#XSLTCALL">XSLTCALL</a><br />
+<a href="html/libxslt-xsltexports.html#XSLTPUBFUN">XSLTPUBFUN</a><br />
+<a href="html/libxslt-xsltexports.html#XSLTPUBVAR">XSLTPUBVAR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_CCTXT">XSLT_CCTXT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_CONT">XSLT_DEBUG_CONT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_INIT">XSLT_DEBUG_INIT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_NEXT">XSLT_DEBUG_NEXT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_NONE">XSLT_DEBUG_NONE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_QUIT">XSLT_DEBUG_QUIT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_RUN">XSLT_DEBUG_RUN</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_RUN_RESTART">XSLT_DEBUG_RUN_RESTART</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_STEP">XSLT_DEBUG_STEP</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_STEPOUT">XSLT_DEBUG_STEPOUT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_DEBUG_STOP">XSLT_DEBUG_STOP</a><br />
+<a href="html/libxslt-xslt.html#XSLT_DEFAULT_URL">XSLT_DEFAULT_URL</a><br />
+<a href="html/libxslt-xslt.html#XSLT_DEFAULT_VENDOR">XSLT_DEFAULT_VENDOR</a><br />
+<a href="html/libxslt-xslt.html#XSLT_DEFAULT_VERSION">XSLT_DEFAULT_VERSION</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ERROR_SEVERITY_ERROR">XSLT_ERROR_SEVERITY_ERROR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ERROR_SEVERITY_WARNING">XSLT_ERROR_SEVERITY_WARNING</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FAST_IF">XSLT_FAST_IF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_APPLYIMPORTS">XSLT_FUNC_APPLYIMPORTS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_APPLYTEMPLATES">XSLT_FUNC_APPLYTEMPLATES</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_ATTRIBUTE">XSLT_FUNC_ATTRIBUTE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_ATTRSET">XSLT_FUNC_ATTRSET</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_CALLTEMPLATE">XSLT_FUNC_CALLTEMPLATE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_CHOOSE">XSLT_FUNC_CHOOSE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_COMMENT">XSLT_FUNC_COMMENT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_COPY">XSLT_FUNC_COPY</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_COPYOF">XSLT_FUNC_COPYOF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_DOCUMENT">XSLT_FUNC_DOCUMENT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_ELEMENT">XSLT_FUNC_ELEMENT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_EXTENSION">XSLT_FUNC_EXTENSION</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_FALLBACK">XSLT_FUNC_FALLBACK</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_FOREACH">XSLT_FUNC_FOREACH</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_IF">XSLT_FUNC_IF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_INCLUDE">XSLT_FUNC_INCLUDE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_LITERAL_RESULT_ELEMENT">XSLT_FUNC_LITERAL_RESULT_ELEMENT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_MESSAGE">XSLT_FUNC_MESSAGE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_NUMBER">XSLT_FUNC_NUMBER</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_OTHERWISE">XSLT_FUNC_OTHERWISE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_PARAM">XSLT_FUNC_PARAM</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_PI">XSLT_FUNC_PI</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_SORT">XSLT_FUNC_SORT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_TEXT">XSLT_FUNC_TEXT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_UNKOWN_FORWARDS_COMPAT">XSLT_FUNC_UNKOWN_FORWARDS_COMPAT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_VALUEOF">XSLT_FUNC_VALUEOF</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_VARIABLE">XSLT_FUNC_VARIABLE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_WHEN">XSLT_FUNC_WHEN</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_FUNC_WITHPARAM">XSLT_FUNC_WITHPARAM</a><br />
+<a href="html/libxslt-imports.html#XSLT_GET_IMPORT_INT">XSLT_GET_IMPORT_INT</a><br />
+<a href="html/libxslt-imports.html#XSLT_GET_IMPORT_PTR">XSLT_GET_IMPORT_PTR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_GET_INTERNAL_NSMAP">XSLT_GET_INTERNAL_NSMAP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_HAS_INTERNAL_NSMAP">XSLT_HAS_INTERNAL_NSMAP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_IS_RES_TREE_FRAG">XSLT_IS_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_IS_TEXT_NODE">XSLT_IS_TEXT_NODE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMMON_FIELDS">XSLT_ITEM_COMMON_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS">XSLT_ITEM_COMPATIBILITY_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS">XSLT_ITEM_NAVIGATION_FIELDS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_ITEM_NSINSCOPE_FIELDS">XSLT_ITEM_NSINSCOPE_FIELDS</a><br />
+<a href="html/libxslt-extra.html#XSLT_LIBXSLT_NAMESPACE">XSLT_LIBXSLT_NAMESPACE</a><br />
+<a href="html/libxslt-documents.html#XSLT_LOAD_DOCUMENT">XSLT_LOAD_DOCUMENT</a><br />
+<a href="html/libxslt-documents.html#XSLT_LOAD_START">XSLT_LOAD_START</a><br />
+<a href="html/libxslt-documents.html#XSLT_LOAD_STYLESHEET">XSLT_LOAD_STYLESHEET</a><br />
+<a href="html/libxslt-xsltlocale.html#XSLT_LOCALE_NONE">XSLT_LOCALE_NONE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_MARK_RES_TREE_FRAG">XSLT_MARK_RES_TREE_FRAG</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_MAX_SORT">XSLT_MAX_SORT</a><br />
+<a href="html/libxslt-xslt.html#XSLT_NAMESPACE">XSLT_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_NORM_SAXON_NAMESPACE">XSLT_NORM_SAXON_NAMESPACE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_OUTPUT_HTML">XSLT_OUTPUT_HTML</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_OUTPUT_TEXT">XSLT_OUTPUT_TEXT</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_OUTPUT_XML">XSLT_OUTPUT_XML</a><br />
+<a href="html/libxslt-xslt.html#XSLT_PARSE_OPTIONS">XSLT_PARSE_OPTIONS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_PAT_NO_PRIORITY">XSLT_PAT_NO_PRIORITY</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP">XSLT_REFACTORED_KEYCOMP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_VARS">XSLT_REFACTORED_VARS</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_REFACTORED_XPATHCOMP">XSLT_REFACTORED_XPATHCOMP</a><br />
+<a href="html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP">XSLT_REGISTER_FUNCTION_LOOKUP</a><br />
+<a href="html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP">XSLT_REGISTER_VARIABLE_LOOKUP</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA">XSLT_RUNTIME_EXTRA</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_FREE">XSLT_RUNTIME_EXTRA_FREE</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_LST">XSLT_RUNTIME_EXTRA_LST</a><br />
+<a href="html/libxslt-extra.html#XSLT_SAXON_NAMESPACE">XSLT_SAXON_NAMESPACE</a><br />
+<a href="html/libxslt-security.html#XSLT_SECPREF_CREATE_DIRECTORY">XSLT_SECPREF_CREATE_DIRECTORY</a><br />
+<a href="html/libxslt-security.html#XSLT_SECPREF_READ_FILE">XSLT_SECPREF_READ_FILE</a><br />
+<a href="html/libxslt-security.html#XSLT_SECPREF_READ_NETWORK">XSLT_SECPREF_READ_NETWORK</a><br />
+<a href="html/libxslt-security.html#XSLT_SECPREF_WRITE_FILE">XSLT_SECPREF_WRITE_FILE</a><br />
+<a href="html/libxslt-security.html#XSLT_SECPREF_WRITE_NETWORK">XSLT_SECPREF_WRITE_NETWORK</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_STATE_ERROR">XSLT_STATE_ERROR</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_STATE_OK">XSLT_STATE_OK</a><br />
+<a href="html/libxslt-xsltInternals.html#XSLT_STATE_STOPPED">XSLT_STATE_STOPPED</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_STRANGE">XSLT_STRANGE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TIMESTAMP_TICS_PER_SEC">XSLT_TIMESTAMP_TICS_PER_SEC</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TODO">XSLT_TODO</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE">XSLT_TRACE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_ALL">XSLT_TRACE_ALL</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_APPLY_TEMPLATE">XSLT_TRACE_APPLY_TEMPLATE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_APPLY_TEMPLATES">XSLT_TRACE_APPLY_TEMPLATES</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_CALL_TEMPLATE">XSLT_TRACE_CALL_TEMPLATE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_CHOOSE">XSLT_TRACE_CHOOSE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_COMMENT">XSLT_TRACE_COMMENT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_COPY">XSLT_TRACE_COPY</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_COPY_OF">XSLT_TRACE_COPY_OF</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_COPY_TEXT">XSLT_TRACE_COPY_TEXT</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_FOR_EACH">XSLT_TRACE_FOR_EACH</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_IF">XSLT_TRACE_IF</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_KEYS">XSLT_TRACE_KEYS</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_NONE">XSLT_TRACE_NONE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_PI">XSLT_TRACE_PI</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_PROCESS_NODE">XSLT_TRACE_PROCESS_NODE</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_STRIP_SPACES">XSLT_TRACE_STRIP_SPACES</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_TEMPLATES">XSLT_TRACE_TEMPLATES</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_VALUE_OF">XSLT_TRACE_VALUE_OF</a><br />
+<a href="html/libxslt-xsltutils.html#XSLT_TRACE_VARIABLES">XSLT_TRACE_VARIABLES</a><br />
+<a href="html/libxslt-extra.html#XSLT_XALAN_NAMESPACE">XSLT_XALAN_NAMESPACE</a><br />
+<a href="html/libxslt-extra.html#XSLT_XT_NAMESPACE">XSLT_XT_NAMESPACE</a><br />
+</p><h2>Letter _:</h2><p><a href="html/libxslt-xsltexports.html#_REENTRANT">_REENTRANT</a><br />
+<a href="html/libxslt-numbersInternals.html#_xsltCompMatch">_xsltCompMatch</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerCtxt">_xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo">_xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltDecimalFormat">_xsltDecimalFormat</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltDocument">_xsltDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltEffectiveNs">_xsltEffectiveNs</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltElemPreComp">_xsltElemPreComp</a><br />
+<a href="html/libxslt-numbersInternals.html#_xsltFormatNumberInfo">_xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltKeyDef">_xsltKeyDef</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltKeyTable">_xsltKeyTable</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsAlias">_xsltNsAlias</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsList">_xsltNsList</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsListContainer">_xsltNsListContainer</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltNsMap">_xsltNsMap</a><br />
+<a href="html/libxslt-numbersInternals.html#_xsltNumberData">_xsltNumberData</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltPointerList">_xsltPointerList</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData">_xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltRuntimeExtra">_xsltRuntimeExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStackElem">_xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleBasicEmptyItem">_xsltStyleBasicEmptyItem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleBasicExpressionItem">_xsltStyleBasicExpressionItem</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleBasicItemVariable">_xsltStyleBasicItemVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemApplyTemplates">_xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemAttribute">_xsltStyleItemAttribute</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemCallTemplate">_xsltStyleItemCallTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemCopy">_xsltStyleItemCopy</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemDocument">_xsltStyleItemDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemElement">_xsltStyleItemElement</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemExtElement">_xsltStyleItemExtElement</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemIf">_xsltStyleItemIf</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemInclude">_xsltStyleItemInclude</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemLRElementInfo">_xsltStyleItemLRElementInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemMessage">_xsltStyleItemMessage</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemNumber">_xsltStyleItemNumber</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemOtherwise">_xsltStyleItemOtherwise</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemPI">_xsltStyleItemPI</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemParam">_xsltStyleItemParam</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemSort">_xsltStyleItemSort</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemText">_xsltStyleItemText</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemUknown">_xsltStyleItemUknown</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemValueOf">_xsltStyleItemValueOf</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStyleItemWhen">_xsltStyleItemWhen</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylePreComp">_xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltStylesheet">_xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTemplate">_xsltTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformCache">_xsltTransformCache</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltTransformContext">_xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#_xsltVarInfo">_xsltVarInfo</a><br />
+</p><h2>Letter x:</h2><p><a href="html/libxslt-xsltutils.html#xslAddCall">xslAddCall</a><br />
+<a href="html/libxslt-xsltutils.html#xslDebugStatus">xslDebugStatus</a><br />
+<a href="html/libxslt-xsltutils.html#xslDropCall">xslDropCall</a><br />
+<a href="html/libxslt-transform.html#xslHandleDebugger">xslHandleDebugger</a><br />
+<a href="html/libxslt-xsltutils.html#xsltAddCallCallback">xsltAddCallCallback</a><br />
+<a href="html/libxslt-keys.html#xsltAddKey">xsltAddKey</a><br />
+<a href="html/libxslt-variables.html#xsltAddStackElemList">xsltAddStackElemList</a><br />
+<a href="html/libxslt-pattern.html#xsltAddTemplate">xsltAddTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtra">xsltAllocateExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt">xsltAllocateExtraCtxt</a><br />
+<a href="html/libxslt-attributes.html#xsltApplyAttributeSet">xsltApplyAttributeSet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyImports">xsltApplyImports</a><br />
+<a href="html/libxslt-transform.html#xsltApplyOneTemplate">xsltApplyOneTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStripSpaces">xsltApplyStripSpaces</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheet">xsltApplyStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltApplyStylesheetUser">xsltApplyStylesheetUser</a><br />
+<a href="html/libxslt-transform.html#xsltApplyTemplates">xsltApplyTemplates</a><br />
+<a href="html/libxslt-templates.html#xsltAttrListTemplateProcess">xsltAttrListTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateProcess">xsltAttrTemplateProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcess">xsltAttrTemplateValueProcess</a><br />
+<a href="html/libxslt-templates.html#xsltAttrTemplateValueProcessNode">xsltAttrTemplateValueProcessNode</a><br />
+<a href="html/libxslt-transform.html#xsltAttribute">xsltAttribute</a><br />
+<a href="html/libxslt-xsltutils.html#xsltCalibrateAdjust">xsltCalibrateAdjust</a><br />
+<a href="html/libxslt-transform.html#xsltCallTemplate">xsltCallTemplate</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtPrefix">xsltCheckExtPrefix</a><br />
+<a href="html/libxslt-extensions.html#xsltCheckExtURI">xsltCheckExtURI</a><br />
+<a href="html/libxslt-security.html#xsltCheckRead">xsltCheckRead</a><br />
+<a href="html/libxslt-security.html#xsltCheckWrite">xsltCheckWrite</a><br />
+<a href="html/libxslt-transform.html#xsltChoose">xsltChoose</a><br />
+<a href="html/libxslt-xslt.html#xsltCleanupGlobals">xsltCleanupGlobals</a><br />
+<a href="html/libxslt-pattern.html#xsltCleanupTemplates">xsltCleanupTemplates</a><br />
+<a href="html/libxslt-transform.html#xsltComment">xsltComment</a><br />
+<a href="html/libxslt-pattern.html#xsltCompMatch">xsltCompMatch</a><br />
+<a href="html/libxslt-pattern.html#xsltCompMatchPtr">xsltCompMatchPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompileAttr">xsltCompileAttr</a><br />
+<a href="html/libxslt-pattern.html#xsltCompilePattern">xsltCompilePattern</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompilerCtxt">xsltCompilerCtxt</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompilerCtxtPtr">xsltCompilerCtxtPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompilerNodeInfo">xsltCompilerNodeInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr">xsltCompilerNodeInfoPtr</a><br />
+<a href="html/libxslt-xsltutils.html#xsltComputeSortResult">xsltComputeSortResult</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltConstNamespaceNameXSLT">xsltConstNamespaceNameXSLT</a><br />
+<a href="html/libxslt-transform.html#xsltCopy">xsltCopy</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespace">xsltCopyNamespace</a><br />
+<a href="html/libxslt-namespaces.html#xsltCopyNamespaceList">xsltCopyNamespaceList</a><br />
+<a href="html/libxslt-transform.html#xsltCopyOf">xsltCopyOf</a><br />
+<a href="html/libxslt-transform.html#xsltCopyTextString">xsltCopyTextString</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltCreateRVT">xsltCreateRVT</a><br />
+<a href="html/libxslt-extra.html#xsltDebug">xsltDebug</a><br />
+<a href="html/libxslt-extensions.html#xsltDebugDumpExtensions">xsltDebugDumpExtensions</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugGetDefaultTrace">xsltDebugGetDefaultTrace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugSetDefaultTrace">xsltDebugSetDefaultTrace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugStatusCodes">xsltDebugStatusCodes</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDebugTraceCodes">xsltDebugTraceCodes</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDecimalFormat">xsltDecimalFormat</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDecimalFormatGetByName">xsltDecimalFormatGetByName</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDecimalFormatPtr">xsltDecimalFormatPtr</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDefaultSortFunction">xsltDefaultSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDoSortFunction">xsltDoSortFunction</a><br />
+<a href="html/libxslt-documents.html#xsltDocDefaultLoader">xsltDocDefaultLoader</a><br />
+<a href="html/libxslt-documents.html#xsltDocLoaderFunc">xsltDocLoaderFunc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDocument">xsltDocument</a><br />
+<a href="html/libxslt-preproc.html#xsltDocumentComp">xsltDocumentComp</a><br />
+<a href="html/libxslt-transform.html#xsltDocumentElem">xsltDocumentElem</a><br />
+<a href="html/libxslt-functions.html#xsltDocumentFunction">xsltDocumentFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltDocumentPtr">xsltDocumentPtr</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDocumentSortFunction">xsltDocumentSortFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltDropCallCallback">xsltDropCallCallback</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEffectiveNs">xsltEffectiveNs</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEffectiveNsPtr">xsltEffectiveNsPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltElemPreComp">xsltElemPreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltElemPreCompDeallocator">xsltElemPreCompDeallocator</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltElemPreCompPtr">xsltElemPreCompPtr</a><br />
+<a href="html/libxslt-transform.html#xsltElement">xsltElement</a><br />
+<a href="html/libxslt-functions.html#xsltElementAvailableFunction">xsltElementAvailableFunction</a><br />
+<a href="html/libxslt-xslt.html#xsltEngineVersion">xsltEngineVersion</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltErrorSeverityType">xsltErrorSeverityType</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltEvalAVT">xsltEvalAVT</a><br />
+<a href="html/libxslt-templates.html#xsltEvalAttrValueTemplate">xsltEvalAttrValueTemplate</a><br />
+<a href="html/libxslt-variables.html#xsltEvalGlobalVariables">xsltEvalGlobalVariables</a><br />
+<a href="html/libxslt-variables.html#xsltEvalOneUserParam">xsltEvalOneUserParam</a><br />
+<a href="html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate">xsltEvalStaticAttrValueTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalTemplateString">xsltEvalTemplateString</a><br />
+<a href="html/libxslt-variables.html#xsltEvalUserParams">xsltEvalUserParams</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathPredicate">xsltEvalXPathPredicate</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathString">xsltEvalXPathString</a><br />
+<a href="html/libxslt-templates.html#xsltEvalXPathStringNs">xsltEvalXPathStringNs</a><br />
+<a href="html/libxslt-extensions.html#xsltExtElementLookup">xsltExtElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtInitFunction">xsltExtInitFunction</a><br />
+<a href="html/libxslt-preproc.html#xsltExtMarker">xsltExtMarker</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementLookup">xsltExtModuleElementLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleElementPreComputeLookup">xsltExtModuleElementPreComputeLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleFunctionLookup">xsltExtModuleFunctionLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtModuleTopLevelLookup">xsltExtModuleTopLevelLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltExtShutdownFunction">xsltExtShutdownFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize">xsltExtensionInstructionResultFinalize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister">xsltExtensionInstructionResultRegister</a><br />
+<a href="html/libxslt-documents.html#xsltFindDocument">xsltFindDocument</a><br />
+<a href="html/libxslt-imports.html#xsltFindElemSpaceHandling">xsltFindElemSpaceHandling</a><br />
+<a href="html/libxslt-imports.html#xsltFindTemplate">xsltFindTemplate</a><br />
+<a href="html/libxslt-transform.html#xsltForEach">xsltForEach</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFormatNumberConversion">xsltFormatNumberConversion</a><br />
+<a href="html/libxslt-functions.html#xsltFormatNumberFunction">xsltFormatNumberFunction</a><br />
+<a href="html/libxslt-numbersInternals.html#xsltFormatNumberInfo">xsltFormatNumberInfo</a><br />
+<a href="html/libxslt-numbersInternals.html#xsltFormatNumberInfoPtr">xsltFormatNumberInfoPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeAVTList">xsltFreeAVTList</a><br />
+<a href="html/libxslt-attributes.html#xsltFreeAttributeSetsHashes">xsltFreeAttributeSetsHashes</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeCompMatchList">xsltFreeCompMatchList</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeCtxtExts">xsltFreeCtxtExts</a><br />
+<a href="html/libxslt-keys.html#xsltFreeDocumentKeys">xsltFreeDocumentKeys</a><br />
+<a href="html/libxslt-documents.html#xsltFreeDocuments">xsltFreeDocuments</a><br />
+<a href="html/libxslt-extensions.html#xsltFreeExts">xsltFreeExts</a><br />
+<a href="html/libxslt-variables.html#xsltFreeGlobalVariables">xsltFreeGlobalVariables</a><br />
+<a href="html/libxslt-keys.html#xsltFreeKeys">xsltFreeKeys</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocale">xsltFreeLocale</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltFreeLocales">xsltFreeLocales</a><br />
+<a href="html/libxslt-namespaces.html#xsltFreeNamespaceAliasHashes">xsltFreeNamespaceAliasHashes</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeRVTs">xsltFreeRVTs</a><br />
+<a href="html/libxslt-security.html#xsltFreeSecurityPrefs">xsltFreeSecurityPrefs</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStackElemList">xsltFreeStackElemList</a><br />
+<a href="html/libxslt-documents.html#xsltFreeStyleDocuments">xsltFreeStyleDocuments</a><br />
+<a href="html/libxslt-preproc.html#xsltFreeStylePreComps">xsltFreeStylePreComps</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltFreeStylesheet">xsltFreeStylesheet</a><br />
+<a href="html/libxslt-pattern.html#xsltFreeTemplateHashes">xsltFreeTemplateHashes</a><br />
+<a href="html/libxslt-transform.html#xsltFreeTransformContext">xsltFreeTransformContext</a><br />
+<a href="html/libxslt-functions.html#xsltFunctionAvailableFunction">xsltFunctionAvailableFunction</a><br />
+<a href="html/libxslt-extra.html#xsltFunctionNodeSet">xsltFunctionNodeSet</a><br />
+<a href="html/libxslt-functions.html#xsltGenerateIdFunction">xsltGenerateIdFunction</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGenericDebug">xsltGenericDebug</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGenericDebugContext">xsltGenericDebugContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGenericError">xsltGenericError</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGenericErrorContext">xsltGenericErrorContext</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetCNsProp">xsltGetCNsProp</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetDebuggerStatus">xsltGetDebuggerStatus</a><br />
+<a href="html/libxslt-security.html#xsltGetDefaultSecurityPrefs">xsltGetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtData">xsltGetExtData</a><br />
+<a href="html/libxslt-extensions.html#xsltGetExtInfo">xsltGetExtInfo</a><br />
+<a href="html/libxslt-keys.html#xsltGetKey">xsltGetKey</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetNamespace">xsltGetNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetNsProp">xsltGetNsProp</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetPlainNamespace">xsltGetPlainNamespace</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetProfileInformation">xsltGetProfileInformation</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI">xsltGetQNameURI</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetQNameURI2">xsltGetQNameURI2</a><br />
+<a href="html/libxslt-security.html#xsltGetSecurityPrefs">xsltGetSecurityPrefs</a><br />
+<a href="html/libxslt-namespaces.html#xsltGetSpecialNamespace">xsltGetSpecialNamespace</a><br />
+<a href="html/libxslt-pattern.html#xsltGetTemplate">xsltGetTemplate</a><br />
+<a href="html/libxslt-xsltutils.html#xsltGetUTF8Char">xsltGetUTF8Char</a><br />
+<a href="html/libxslt-transform.html#xsltGetXIncludeDefault">xsltGetXIncludeDefault</a><br />
+<a href="html/libxslt-xsltutils.html#xsltHandleDebuggerCallback">xsltHandleDebuggerCallback</a><br />
+<a href="html/libxslt-transform.html#xsltIf">xsltIf</a><br />
+<a href="html/libxslt-xslt.html#xsltInit">xsltInit</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitAllDocKeys">xsltInitAllDocKeys</a><br />
+<a href="html/libxslt-extensions.html#xsltInitCtxtExts">xsltInitCtxtExts</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltInitCtxtKey">xsltInitCtxtKey</a><br />
+<a href="html/libxslt-keys.html#xsltInitCtxtKeys">xsltInitCtxtKeys</a><br />
+<a href="html/libxslt-extensions.html#xsltInitElemPreComp">xsltInitElemPreComp</a><br />
+<a href="html/libxslt-extensions.html#xsltInitGlobals">xsltInitGlobals</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltIsBlank">xsltIsBlank</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltKeyDef">xsltKeyDef</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltKeyDefPtr">xsltKeyDefPtr</a><br />
+<a href="html/libxslt-functions.html#xsltKeyFunction">xsltKeyFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltKeyTable">xsltKeyTable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltKeyTablePtr">xsltKeyTablePtr</a><br />
+<a href="html/libxslt-xslt.html#xsltLibxmlVersion">xsltLibxmlVersion</a><br />
+<a href="html/libxslt-xslt.html#xsltLibxsltVersion">xsltLibxsltVersion</a><br />
+<a href="html/libxslt-documents.html#xsltLoadDocument">xsltLoadDocument</a><br />
+<a href="html/libxslt-documents.html#xsltLoadStyleDocument">xsltLoadStyleDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltLoadStylesheetPI">xsltLoadStylesheetPI</a><br />
+<a href="html/libxslt-documents.html#xsltLoadType">xsltLoadType</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePop">xsltLocalVariablePop</a><br />
+<a href="html/libxslt-transform.html#xsltLocalVariablePush">xsltLocalVariablePush</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocale">xsltLocale</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleChar">xsltLocaleChar</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltLocaleStrcmp">xsltLocaleStrcmp</a><br />
+<a href="html/libxslt-pattern.html#xsltMatchPattern">xsltMatchPattern</a><br />
+<a href="html/libxslt-xslt.html#xsltMaxDepth">xsltMaxDepth</a><br />
+<a href="html/libxslt-xslt.html#xsltMaxVars">xsltMaxVars</a><br />
+<a href="html/libxslt-xsltutils.html#xsltMessage">xsltMessage</a><br />
+<a href="html/libxslt-namespaces.html#xsltNamespaceAlias">xsltNamespaceAlias</a><br />
+<a href="html/libxslt-imports.html#xsltNeedElemSpaceHandling">xsltNeedElemSpaceHandling</a><br />
+<a href="html/libxslt-documents.html#xsltNewDocument">xsltNewDocument</a><br />
+<a href="html/libxslt-extensions.html#xsltNewElemPreComp">xsltNewElemPreComp</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltNewLocale">xsltNewLocale</a><br />
+<a href="html/libxslt-security.html#xsltNewSecurityPrefs">xsltNewSecurityPrefs</a><br />
+<a href="html/libxslt-documents.html#xsltNewStyleDocument">xsltNewStyleDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNewStylesheet">xsltNewStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltNewTransformContext">xsltNewTransformContext</a><br />
+<a href="html/libxslt-imports.html#xsltNextImport">xsltNextImport</a><br />
+<a href="html/libxslt-pattern.html#xsltNormalizeCompSteps">xsltNormalizeCompSteps</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsAlias">xsltNsAlias</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsAliasPtr">xsltNsAliasPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsList">xsltNsList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsListContainer">xsltNsListContainer</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsListContainerPtr">xsltNsListContainerPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsListPtr">xsltNsListPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsMap">xsltNsMap</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNsMapPtr">xsltNsMapPtr</a><br />
+<a href="html/libxslt-transform.html#xsltNumber">xsltNumber</a><br />
+<a href="html/libxslt-numbersInternals.html#xsltNumberData">xsltNumberData</a><br />
+<a href="html/libxslt-numbersInternals.html#xsltNumberDataPtr">xsltNumberDataPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltNumberFormat">xsltNumberFormat</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltOutputType">xsltOutputType</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem">xsltParseAnyXSLTElem</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalParam">xsltParseGlobalParam</a><br />
+<a href="html/libxslt-variables.html#xsltParseGlobalVariable">xsltParseGlobalVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseSequenceConstructor">xsltParseSequenceConstructor</a><br />
+<a href="html/libxslt-attributes.html#xsltParseStylesheetAttributeSet">xsltParseStylesheetAttributeSet</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetCallerParam">xsltParseStylesheetCallerParam</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetDoc">xsltParseStylesheetDoc</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetFile">xsltParseStylesheetFile</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetImport">xsltParseStylesheetImport</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc">xsltParseStylesheetImportedDoc</a><br />
+<a href="html/libxslt-imports.html#xsltParseStylesheetInclude">xsltParseStylesheetInclude</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetOutput">xsltParseStylesheetOutput</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetParam">xsltParseStylesheetParam</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseStylesheetProcess">xsltParseStylesheetProcess</a><br />
+<a href="html/libxslt-variables.html#xsltParseStylesheetVariable">xsltParseStylesheetVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltParseTemplateContent">xsltParseTemplateContent</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerList">xsltPointerList</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListAddSize">xsltPointerListAddSize</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListClear">xsltPointerListClear</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListCreate">xsltPointerListCreate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListFree">xsltPointerListFree</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPointerListPtr">xsltPointerListPtr</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeExtModuleElement">xsltPreComputeExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltPreComputeFunction">xsltPreComputeFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPrincipalStylesheetData">xsltPrincipalStylesheetData</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltPrincipalStylesheetDataPtr">xsltPrincipalStylesheetDataPtr</a><br />
+<a href="html/libxslt-xsltutils.html#xsltPrintErrorContext">xsltPrintErrorContext</a><br />
+<a href="html/libxslt-transform.html#xsltProcessOneNode">xsltProcessOneNode</a><br />
+<a href="html/libxslt-transform.html#xsltProcessingInstruction">xsltProcessingInstruction</a><br />
+<a href="html/libxslt-transform.html#xsltProfileStylesheet">xsltProfileStylesheet</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteOneUserParam">xsltQuoteOneUserParam</a><br />
+<a href="html/libxslt-variables.html#xsltQuoteUserParams">xsltQuoteUserParams</a><br />
+<a href="html/libxslt-transform.html#xsltRegisterAllElement">xsltRegisterAllElement</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterAllExtras">xsltRegisterAllExtras</a><br />
+<a href="html/libxslt-functions.html#xsltRegisterAllFunctions">xsltRegisterAllFunctions</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtElement">xsltRegisterExtElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtFunction">xsltRegisterExtFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModule">xsltRegisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleElement">xsltRegisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFull">xsltRegisterExtModuleFull</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleFunction">xsltRegisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtModuleTopLevel">xsltRegisterExtModuleTopLevel</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterExtPrefix">xsltRegisterExtPrefix</a><br />
+<a href="html/libxslt-extra.html#xsltRegisterExtras">xsltRegisterExtras</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterLocalRVT">xsltRegisterLocalRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterPersistRVT">xsltRegisterPersistRVT</a><br />
+<a href="html/libxslt-extensions.html#xsltRegisterTestModule">xsltRegisterTestModule</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRegisterTmpRVT">xsltRegisterTmpRVT</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltReleaseRVT">xsltReleaseRVT</a><br />
+<a href="html/libxslt-attributes.html#xsltResolveStylesheetAttributeSet">xsltResolveStylesheetAttributeSet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRestoreDocumentNamespaces">xsltRestoreDocumentNamespaces</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheet">xsltRunStylesheet</a><br />
+<a href="html/libxslt-transform.html#xsltRunStylesheetUser">xsltRunStylesheetUser</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRuntimeExtra">xsltRuntimeExtra</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltRuntimeExtraPtr">xsltRuntimeExtraPtr</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveProfiling">xsltSaveProfiling</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultTo">xsltSaveResultTo</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFd">xsltSaveResultToFd</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFile">xsltSaveResultToFile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToFilename">xsltSaveResultToFilename</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSaveResultToString">xsltSaveResultToString</a><br />
+<a href="html/libxslt-security.html#xsltSecurityAllow">xsltSecurityAllow</a><br />
+<a href="html/libxslt-security.html#xsltSecurityCheck">xsltSecurityCheck</a><br />
+<a href="html/libxslt-security.html#xsltSecurityForbid">xsltSecurityForbid</a><br />
+<a href="html/libxslt-security.html#xsltSecurityOption">xsltSecurityOption</a><br />
+<a href="html/libxslt-security.html#xsltSecurityPrefs">xsltSecurityPrefs</a><br />
+<a href="html/libxslt-security.html#xsltSecurityPrefsPtr">xsltSecurityPrefsPtr</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtParseOptions">xsltSetCtxtParseOptions</a><br />
+<a href="html/libxslt-security.html#xsltSetCtxtSecurityPrefs">xsltSetCtxtSecurityPrefs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetCtxtSortFunc">xsltSetCtxtSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks">xsltSetDebuggerCallbacks</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetDebuggerStatus">xsltSetDebuggerStatus</a><br />
+<a href="html/libxslt-security.html#xsltSetDefaultSecurityPrefs">xsltSetDefaultSecurityPrefs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericDebugFunc">xsltSetGenericDebugFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetGenericErrorFunc">xsltSetGenericErrorFunc</a><br />
+<a href="html/libxslt-documents.html#xsltSetLoaderFunc">xsltSetLoaderFunc</a><br />
+<a href="html/libxslt-security.html#xsltSetSecurityPrefs">xsltSetSecurityPrefs</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetSortFunc">xsltSetSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSetTransformErrorFunc">xsltSetTransformErrorFunc</a><br />
+<a href="html/libxslt-transform.html#xsltSetXIncludeDefault">xsltSetXIncludeDefault</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownCtxtExts">xsltShutdownCtxtExts</a><br />
+<a href="html/libxslt-extensions.html#xsltShutdownExts">xsltShutdownExts</a><br />
+<a href="html/libxslt-transform.html#xsltSort">xsltSort</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltSortFunc">xsltSortFunc</a><br />
+<a href="html/libxslt-xsltutils.html#xsltSplitQName">xsltSplitQName</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStackElem">xsltStackElem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStackElemPtr">xsltStackElemPtr</a><br />
+<a href="html/libxslt-xsltlocale.html#xsltStrxfrm">xsltStrxfrm</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicEmptyItem">xsltStyleBasicEmptyItem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicEmptyItemPtr">xsltStyleBasicEmptyItemPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicExpressionItem">xsltStyleBasicExpressionItem</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicExpressionItemPtr">xsltStyleBasicExpressionItemPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicItemVariable">xsltStyleBasicItemVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleBasicItemVariablePtr">xsltStyleBasicItemVariablePtr</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtInitFunction">xsltStyleExtInitFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleExtShutdownFunction">xsltStyleExtShutdownFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleGetExtData">xsltStyleGetExtData</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemApplyImports">xsltStyleItemApplyImports</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemApplyImportsPtr">xsltStyleItemApplyImportsPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemApplyTemplates">xsltStyleItemApplyTemplates</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemApplyTemplatesPtr">xsltStyleItemApplyTemplatesPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemAttribute">xsltStyleItemAttribute</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemAttributePtr">xsltStyleItemAttributePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCallTemplate">xsltStyleItemCallTemplate</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCallTemplatePtr">xsltStyleItemCallTemplatePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemChoose">xsltStyleItemChoose</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemChoosePtr">xsltStyleItemChoosePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemComment">xsltStyleItemComment</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCommentPtr">xsltStyleItemCommentPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCopy">xsltStyleItemCopy</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCopyOf">xsltStyleItemCopyOf</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCopyOfPtr">xsltStyleItemCopyOfPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemCopyPtr">xsltStyleItemCopyPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemDocument">xsltStyleItemDocument</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemDocumentPtr">xsltStyleItemDocumentPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemElement">xsltStyleItemElement</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemElementPtr">xsltStyleItemElementPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemExtElement">xsltStyleItemExtElement</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemExtElementPtr">xsltStyleItemExtElementPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemFallback">xsltStyleItemFallback</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemFallbackPtr">xsltStyleItemFallbackPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemForEach">xsltStyleItemForEach</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemForEachPtr">xsltStyleItemForEachPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemIf">xsltStyleItemIf</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemIfPtr">xsltStyleItemIfPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemInclude">xsltStyleItemInclude</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemIncludePtr">xsltStyleItemIncludePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemLRElementInfo">xsltStyleItemLRElementInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemLRElementInfoPtr">xsltStyleItemLRElementInfoPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemMessage">xsltStyleItemMessage</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemMessagePtr">xsltStyleItemMessagePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemNumber">xsltStyleItemNumber</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemNumberPtr">xsltStyleItemNumberPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemOtherwise">xsltStyleItemOtherwise</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemOtherwisePtr">xsltStyleItemOtherwisePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemPI">xsltStyleItemPI</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemPIPtr">xsltStyleItemPIPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemParam">xsltStyleItemParam</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemParamPtr">xsltStyleItemParamPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemSort">xsltStyleItemSort</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemSortPtr">xsltStyleItemSortPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemText">xsltStyleItemText</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemTextPtr">xsltStyleItemTextPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemUknown">xsltStyleItemUknown</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemUknownPtr">xsltStyleItemUknownPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemValueOf">xsltStyleItemValueOf</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemValueOfPtr">xsltStyleItemValueOfPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemVariable">xsltStyleItemVariable</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemVariablePtr">xsltStyleItemVariablePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemWhen">xsltStyleItemWhen</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemWhenPtr">xsltStyleItemWhenPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemWithParam">xsltStyleItemWithParam</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleItemWithParamPtr">xsltStyleItemWithParamPtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStylePreComp">xsltStylePreComp</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStylePreCompPtr">xsltStylePreCompPtr</a><br />
+<a href="html/libxslt-preproc.html#xsltStylePreCompute">xsltStylePreCompute</a><br />
+<a href="html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData">xsltStyleStylesheetLevelGetExtData</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStyleType">xsltStyleType</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStylesheet">xsltStylesheet</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltStylesheetPtr">xsltStylesheetPtr</a><br />
+<a href="html/libxslt-functions.html#xsltSystemPropertyFunction">xsltSystemPropertyFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTemplate">xsltTemplate</a><br />
+<a href="html/libxslt-templates.html#xsltTemplateProcess">xsltTemplateProcess</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTemplatePtr">xsltTemplatePtr</a><br />
+<a href="html/libxslt-pattern.html#xsltTestCompMatchList">xsltTestCompMatchList</a><br />
+<a href="html/libxslt-transform.html#xsltText">xsltText</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTimestamp">xsltTimestamp</a><br />
+<a href="html/libxslt-extensions.html#xsltTopLevelFunction">xsltTopLevelFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformCache">xsltTransformCache</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformCachePtr">xsltTransformCachePtr</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformContext">xsltTransformContext</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformContextPtr">xsltTransformContextPtr</a><br />
+<a href="html/libxslt-xsltutils.html#xsltTransformError">xsltTransformError</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformFunction">xsltTransformFunction</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltTransformState">xsltTransformState</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltUninit">xsltUninit</a><br />
+<a href="html/libxslt-functions.html#xsltUnparsedEntityURIFunction">xsltUnparsedEntityURIFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModule">xsltUnregisterExtModule</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleElement">xsltUnregisterExtModuleElement</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleFunction">xsltUnregisterExtModuleFunction</a><br />
+<a href="html/libxslt-extensions.html#xsltUnregisterExtModuleTopLevel">xsltUnregisterExtModuleTopLevel</a><br />
+<a href="html/libxslt-transform.html#xsltValueOf">xsltValueOf</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltVarInfo">xsltVarInfo</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltVarInfoPtr">xsltVarInfoPtr</a><br />
+<a href="html/libxslt-variables.html#xsltVariableLookup">xsltVariableLookup</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompile">xsltXPathCompile</a><br />
+<a href="html/libxslt-xsltutils.html#xsltXPathCompileFlags">xsltXPathCompileFlags</a><br />
+<a href="html/libxslt-functions.html#xsltXPathFunctionLookup">xsltXPathFunctionLookup</a><br />
+<a href="html/libxslt-extensions.html#xsltXPathGetTransformContext">xsltXPathGetTransformContext</a><br />
+<a href="html/libxslt-variables.html#xsltXPathVariableLookup">xsltXPathVariableLookup</a><br />
+<a href="html/libxslt-xsltInternals.html#xsltXSLTAttrMarker">xsltXSLTAttrMarker</a><br />
+</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/ChangeLog.xsl b/libxslt/doc/ChangeLog.xsl
new file mode 100644
index 0000000..c94f9f0
--- /dev/null
+++ b/libxslt/doc/ChangeLog.xsl
@@ -0,0 +1,113 @@
+<?xml version="1.0"?>
+<!-- this stylesheet builds the ChangeLog.html -->
+<xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+ <!-- Import the rest of the site stylesheets -->
+ <xsl:import href="site.xsl"/>
+
+ <!-- Generate XHTML-1.0 transitional -->
+ <xsl:output method="xml" encoding="ISO-8859-1" indent="yes"
+ doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
+
+ <xsl:param name="module">libxslt</xsl:param>
+
+ <!-- The table of content for the HTML page -->
+ <xsl:variable name="menu_name">API Menu</xsl:variable>
+ <xsl:variable name="develtoc">
+ <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><!-- style="margin-left: -1em" -->
+ <li><a style="font-weight:bold"
+ href="{$href_base}index.html">Main Menu</a></li>
+ <li><a style="font-weight:bold"
+ href="{$href_base}docs.html">Developer Menu</a></li>
+ <li><a style="font-weight:bold"
+ href="{$href_base}html/index.html">Modules Index</a></li>
+ <li><a style="font-weight:bold"
+ href="{$href_base}examples/index.html">Code Examples</a></li>
+ <li><a style="font-weight:bold"
+ href="index.html">API Menu</a></li>
+ </ul>
+ </xsl:variable>
+
+ <xsl:template match="bug">
+ <a href="http://bugzilla.gnome.org/show_bug.cgi?id={@number}">
+ <xsl:value-of select="@number"/></a>
+ </xsl:template>
+
+ <xsl:template match="item">
+ <li><xsl:apply-templates/></li>
+ </xsl:template>
+
+ <xsl:template match="entry">
+
+ <p>
+ <b><xsl:value-of select="@who"/></b>
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="@date"/>
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="@timezone"/>
+ <ul>
+ <xsl:apply-templates select="item"/>
+ </ul>
+ </p>
+ </xsl:template>
+
+ <xsl:template match="log">
+ <xsl:variable name="title">ChangeLog last entries of <xsl:value-of select="$module"/></xsl:variable>
+ <html>
+ <head>
+ <xsl:call-template name="style"/>
+ <xsl:element name="title">
+ <xsl:value-of select="$title"/>
+ </xsl:element>
+ </head>
+ <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000">
+ <xsl:call-template name="titlebox">
+ <xsl:with-param name="title" select="$title"/>
+ </xsl:call-template>
+ <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">
+ <xsl:call-template name="develtoc"/>
+ </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">
+ <xsl:apply-templates select="entry"/>
+ <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+ </html>
+ </xsl:template>
+
+</xsl:stylesheet>
diff --git a/libxslt/doc/EXSLT/APIchunk0.html b/libxslt/doc/EXSLT/APIchunk0.html
new file mode 100644
index 0000000..b9666d4
--- /dev/null
+++ b/libxslt/doc/EXSLT/APIchunk0.html
@@ -0,0 +1,132 @@
+<?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>API Alphabetic Index C-u for libexslt</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 EXSLT C library for Gnome</h1><h2>API Alphabetic Index C-u for libexslt</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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 align="center"><a href="APIchunk0.html">C-u</a>
+</h2><h2>Letter C:</h2><dl><dt>Common</dt><dd><a href="html/libexslt-exslt.html#exsltCommonRegister">exsltCommonRegister</a><br />
+</dd><dt>Crypto</dt><dd><a href="html/libexslt-exslt.html#exsltCryptoRegister">exsltCryptoRegister</a><br />
+</dd></dl><h2>Letter D:</h2><dl><dt>Dates</dt><dd><a href="html/libexslt-exslt.html#exsltDateRegister">exsltDateRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+</dd><dt>Dynamic</dt><dd><a href="html/libexslt-exslt.html#exsltDynRegister">exsltDynRegister</a><br />
+</dd></dl><h2>Letter E:</h2><dl><dt>EXSLT</dt><dd><a href="html/libexslt-exslt.html#EXSLT_COMMON_NAMESPACE">EXSLT_COMMON_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_CRYPTO_NAMESPACE">EXSLT_CRYPTO_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DATE_NAMESPACE">EXSLT_DATE_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DYNAMIC_NAMESPACE">EXSLT_DYNAMIC_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_FUNCTIONS_NAMESPACE">EXSLT_FUNCTIONS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_MATH_NAMESPACE">EXSLT_MATH_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_SETS_NAMESPACE">EXSLT_SETS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_STRINGS_NAMESPACE">EXSLT_STRINGS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#exsltCommonRegister">exsltCommonRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltCryptoRegister">exsltCryptoRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateRegister">exsltDateRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDynRegister">exsltDynRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltFuncRegister">exsltFuncRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathRegister">exsltMathRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltRegisterAll">exsltRegisterAll</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsRegister">exsltSetsRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrRegister">exsltStrRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</dd></dl><h2>Letter F:</h2><dl><dt>Functions</dt><dd><a href="html/libexslt-exslt.html#exsltFuncRegister">exsltFuncRegister</a><br />
+</dd></dl><h2>Letter M:</h2><dl><dt>Math</dt><dd><a href="html/libexslt-exslt.html#exsltMathRegister">exsltMathRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+</dd></dl><h2>Letter N:</h2><dl><dt>Namespace</dt><dd><a href="html/libexslt-exslt.html#EXSLT_COMMON_NAMESPACE">EXSLT_COMMON_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_CRYPTO_NAMESPACE">EXSLT_CRYPTO_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DATE_NAMESPACE">EXSLT_DATE_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DYNAMIC_NAMESPACE">EXSLT_DYNAMIC_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_FUNCTIONS_NAMESPACE">EXSLT_FUNCTIONS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_MATH_NAMESPACE">EXSLT_MATH_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_SETS_NAMESPACE">EXSLT_SETS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_STRINGS_NAMESPACE">EXSLT_STRINGS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#SAXON_NAMESPACE">SAXON_NAMESPACE</a><br />
+</dd></dl><h2>Letter R:</h2><dl><dt>Registers</dt><dd><a href="html/libexslt-exslt.html#exsltCommonRegister">exsltCommonRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltCryptoRegister">exsltCryptoRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateRegister">exsltDateRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDynRegister">exsltDynRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltFuncRegister">exsltFuncRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathRegister">exsltMathRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltRegisterAll">exsltRegisterAll</a><br />
+<a href="html/libexslt-exslt.html#exsltSaxonRegister">exsltSaxonRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsRegister">exsltSetsRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrRegister">exsltStrRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</dd></dl><h2>Letter S:</h2><dl><dt>SAXON</dt><dd><a href="html/libexslt-exslt.html#SAXON_NAMESPACE">SAXON_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#exsltSaxonRegister">exsltSaxonRegister</a><br />
+</dd><dt>Sets</dt><dd><a href="html/libexslt-exslt.html#exsltSetsRegister">exsltSetsRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+</dd><dt>Strings</dt><dd><a href="html/libexslt-exslt.html#exsltStrRegister">exsltStrRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</dd></dl><h2>Letter T:</h2><dl><dt>Times</dt><dd><a href="html/libexslt-exslt.html#exsltDateRegister">exsltDateRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+</dd></dl><h2>Letter X:</h2><dl><dt>XSLT</dt><dd><a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</dd></dl><h2>Letter a:</h2><dl><dt>all</dt><dd><a href="html/libexslt-exslt.html#exsltRegisterAll">exsltRegisterAll</a><br />
+</dd><dt>available</dt><dd><a href="html/libexslt-exslt.html#exsltRegisterAll">exsltRegisterAll</a><br />
+</dd></dl><h2>Letter c:</h2><dl><dt>common</dt><dd><a href="html/libexslt-exslt.html#EXSLT_COMMON_NAMESPACE">EXSLT_COMMON_NAMESPACE</a><br />
+</dd><dt>crypto</dt><dd><a href="html/libexslt-exslt.html#EXSLT_CRYPTO_NAMESPACE">EXSLT_CRYPTO_NAMESPACE</a><br />
+</dd></dl><h2>Letter d:</h2><dl><dt>date</dt><dd><a href="html/libexslt-exslt.html#EXSLT_DATE_NAMESPACE">EXSLT_DATE_NAMESPACE</a><br />
+</dd><dt>dynamic</dt><dd><a href="html/libexslt-exslt.html#EXSLT_DYNAMIC_NAMESPACE">EXSLT_DYNAMIC_NAMESPACE</a><br />
+</dd></dl><h2>Letter e:</h2><dl><dt>extension</dt><dd><a href="html/libexslt-exslt.html#EXSLT_FUNCTIONS_NAMESPACE">EXSLT_FUNCTIONS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#exsltSaxonRegister">exsltSaxonRegister</a><br />
+</dd><dt>extensions</dt><dd><a href="html/libexslt-exslt.html#SAXON_NAMESPACE">SAXON_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#exsltRegisterAll">exsltRegisterAll</a><br />
+</dd></dl><h2>Letter f:</h2><dl><dt>for</dt><dd><a href="html/libexslt-exslt.html#EXSLT_COMMON_NAMESPACE">EXSLT_COMMON_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_CRYPTO_NAMESPACE">EXSLT_CRYPTO_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DATE_NAMESPACE">EXSLT_DATE_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DYNAMIC_NAMESPACE">EXSLT_DYNAMIC_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_FUNCTIONS_NAMESPACE">EXSLT_FUNCTIONS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_MATH_NAMESPACE">EXSLT_MATH_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_SETS_NAMESPACE">EXSLT_SETS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_STRINGS_NAMESPACE">EXSLT_STRINGS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#SAXON_NAMESPACE">SAXON_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</dd><dt>functions</dt><dd><a href="html/libexslt-exslt.html#EXSLT_COMMON_NAMESPACE">EXSLT_COMMON_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_CRYPTO_NAMESPACE">EXSLT_CRYPTO_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DATE_NAMESPACE">EXSLT_DATE_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DYNAMIC_NAMESPACE">EXSLT_DYNAMIC_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_FUNCTIONS_NAMESPACE">EXSLT_FUNCTIONS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_MATH_NAMESPACE">EXSLT_MATH_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_SETS_NAMESPACE">EXSLT_SETS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_STRINGS_NAMESPACE">EXSLT_STRINGS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#SAXON_NAMESPACE">SAXON_NAMESPACE</a><br />
+</dd></dl><h2>Letter m:</h2><dl><dt>math</dt><dd><a href="html/libexslt-exslt.html#EXSLT_MATH_NAMESPACE">EXSLT_MATH_NAMESPACE</a><br />
+</dd><dt>module</dt><dd><a href="html/libexslt-exslt.html#exsltCommonRegister">exsltCommonRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltCryptoRegister">exsltCryptoRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateRegister">exsltDateRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDynRegister">exsltDynRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltFuncRegister">exsltFuncRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathRegister">exsltMathRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSaxonRegister">exsltSaxonRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsRegister">exsltSetsRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrRegister">exsltStrRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</dd></dl><h2>Letter o:</h2><dl><dt>outside</dt><dd><a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</dd></dl><h2>Letter s:</h2><dl><dt>set</dt><dd><a href="html/libexslt-exslt.html#EXSLT_SETS_NAMESPACE">EXSLT_SETS_NAMESPACE</a><br />
+</dd><dt>strings</dt><dd><a href="html/libexslt-exslt.html#EXSLT_STRINGS_NAMESPACE">EXSLT_STRINGS_NAMESPACE</a><br />
+</dd></dl><h2>Letter u:</h2><dl><dt>use</dt><dd><a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</dd></dl><h2 align="center"><a href="APIchunk0.html">C-u</a>
+</h2><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/EXSLT/APIconstructors.html b/libxslt/doc/EXSLT/APIconstructors.html
new file mode 100644
index 0000000..b23646e
--- /dev/null
+++ b/libxslt/doc/EXSLT/APIconstructors.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>List of constructors for libexslt</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 EXSLT C library for Gnome</h1><h2>List of constructors for libexslt</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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"><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/EXSLT/APIfiles.html b/libxslt/doc/EXSLT/APIfiles.html
new file mode 100644
index 0000000..d925364
--- /dev/null
+++ b/libxslt/doc/EXSLT/APIfiles.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>List of Symbols per Module for libexslt</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 EXSLT C library for Gnome</h1><h2>List of Symbols per Module for libexslt</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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><a name="exslt" id="exslt">Module exslt</a>:</h2><p><a href="html/libexslt-exslt.html#EXSLT_COMMON_NAMESPACE">EXSLT_COMMON_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_CRYPTO_NAMESPACE">EXSLT_CRYPTO_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DATE_NAMESPACE">EXSLT_DATE_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DYNAMIC_NAMESPACE">EXSLT_DYNAMIC_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_FUNCTIONS_NAMESPACE">EXSLT_FUNCTIONS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_MATH_NAMESPACE">EXSLT_MATH_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_SETS_NAMESPACE">EXSLT_SETS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_STRINGS_NAMESPACE">EXSLT_STRINGS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#SAXON_NAMESPACE">SAXON_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#exsltCommonRegister">exsltCommonRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltCryptoRegister">exsltCryptoRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateRegister">exsltDateRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDynRegister">exsltDynRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltFuncRegister">exsltFuncRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltLibexsltVersion">exsltLibexsltVersion</a><br />
+<a href="html/libexslt-exslt.html#exsltLibraryVersion">exsltLibraryVersion</a><br />
+<a href="html/libexslt-exslt.html#exsltLibxmlVersion">exsltLibxmlVersion</a><br />
+<a href="html/libexslt-exslt.html#exsltLibxsltVersion">exsltLibxsltVersion</a><br />
+<a href="html/libexslt-exslt.html#exsltMathRegister">exsltMathRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltRegisterAll">exsltRegisterAll</a><br />
+<a href="html/libexslt-exslt.html#exsltSaxonRegister">exsltSaxonRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsRegister">exsltSetsRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrRegister">exsltStrRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</p><h2><a name="exsltexports" id="exsltexports">Module exsltexports</a>:</h2><p><a href="html/libexslt-exsltexports.html#EXSLTCALL">EXSLTCALL</a><br />
+<a href="html/libexslt-exsltexports.html#EXSLTPUBFUN">EXSLTPUBFUN</a><br />
+<a href="html/libexslt-exsltexports.html#EXSLTPUBVAR">EXSLTPUBVAR</a><br />
+<a href="html/libexslt-exsltexports.html#LIBEXSLT_PUBLIC">LIBEXSLT_PUBLIC</a><br />
+<a href="html/libexslt-exsltexports.html#_REENTRANT">_REENTRANT</a><br />
+</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/EXSLT/APIfunctions.html b/libxslt/doc/EXSLT/APIfunctions.html
new file mode 100644
index 0000000..aa3d910
--- /dev/null
+++ b/libxslt/doc/EXSLT/APIfunctions.html
@@ -0,0 +1,18 @@
+<?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>List of function manipulating types in libexslt</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 EXSLT C library for Gnome</h1><h2>List of function manipulating types in libexslt</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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>Type const xmlChar *:</h2><p><a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</p><h2>Type xmlXPathContextPtr:</h2><p><a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</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/EXSLT/APIsymbols.html b/libxslt/doc/EXSLT/APIsymbols.html
new file mode 100644
index 0000000..da77889
--- /dev/null
+++ b/libxslt/doc/EXSLT/APIsymbols.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>Alphabetic List of Symbols in libexslt</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 EXSLT C library for Gnome</h1><h2>Alphabetic List of Symbols in libexslt</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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>Letter E:</h2><p><a href="html/libexslt-exsltexports.html#EXSLTCALL">EXSLTCALL</a><br />
+<a href="html/libexslt-exsltexports.html#EXSLTPUBFUN">EXSLTPUBFUN</a><br />
+<a href="html/libexslt-exsltexports.html#EXSLTPUBVAR">EXSLTPUBVAR</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_COMMON_NAMESPACE">EXSLT_COMMON_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_CRYPTO_NAMESPACE">EXSLT_CRYPTO_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DATE_NAMESPACE">EXSLT_DATE_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_DYNAMIC_NAMESPACE">EXSLT_DYNAMIC_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_FUNCTIONS_NAMESPACE">EXSLT_FUNCTIONS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_MATH_NAMESPACE">EXSLT_MATH_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_SETS_NAMESPACE">EXSLT_SETS_NAMESPACE</a><br />
+<a href="html/libexslt-exslt.html#EXSLT_STRINGS_NAMESPACE">EXSLT_STRINGS_NAMESPACE</a><br />
+</p><h2>Letter L:</h2><p><a href="html/libexslt-exsltexports.html#LIBEXSLT_PUBLIC">LIBEXSLT_PUBLIC</a><br />
+</p><h2>Letter S:</h2><p><a href="html/libexslt-exslt.html#SAXON_NAMESPACE">SAXON_NAMESPACE</a><br />
+</p><h2>Letter _:</h2><p><a href="html/libexslt-exsltexports.html#_REENTRANT">_REENTRANT</a><br />
+</p><h2>Letter e:</h2><p><a href="html/libexslt-exslt.html#exsltCommonRegister">exsltCommonRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltCryptoRegister">exsltCryptoRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateRegister">exsltDateRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltDynRegister">exsltDynRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltFuncRegister">exsltFuncRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltLibexsltVersion">exsltLibexsltVersion</a><br />
+<a href="html/libexslt-exslt.html#exsltLibraryVersion">exsltLibraryVersion</a><br />
+<a href="html/libexslt-exslt.html#exsltLibxmlVersion">exsltLibxmlVersion</a><br />
+<a href="html/libexslt-exslt.html#exsltLibxsltVersion">exsltLibxsltVersion</a><br />
+<a href="html/libexslt-exslt.html#exsltMathRegister">exsltMathRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltRegisterAll">exsltRegisterAll</a><br />
+<a href="html/libexslt-exslt.html#exsltSaxonRegister">exsltSaxonRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsRegister">exsltSetsRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrRegister">exsltStrRegister</a><br />
+<a href="html/libexslt-exslt.html#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a><br />
+</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/EXSLT/bugs.html b/libxslt/doc/EXSLT/bugs.html
new file mode 100644
index 0000000..bdd9bc5
--- /dev/null
+++ b/libxslt/doc/EXSLT/bugs.html
@@ -0,0 +1,62 @@
+<?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>Reporting bugs and getting help</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 EXSLT C library for Gnome</h1><h2>Reporting bugs and getting help</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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"><p>Well, bugs or missing features are always possible, and I will make a
+point of fixing them in a timely fashion. The best way to report a bug is to
+use the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">Gnome
+bug tracking database</a> (make sure to use the "libxslt" module name). I
+look at reports there regularly and it's good to have a reminder when a bug
+is still open. Be sure to specify that the bug is for the package libxslt.</p><p>For small problems you can try to get help on IRC, the #xml channel on
+irc.gnome.org (port 6667) usually have a few person subscribed which may help
+(but there is no guarantee and if a real issue is raised it should go on the
+mailing-list for archival).</p><p>There is also a mailing-list <a href="mailto:xslt@gnome.org">xslt@gnome.org</a> for libxslt, with an <a href="http://mail.gnome.org/archives/xslt/">on-line archive</a>. To subscribe
+to this list, please visit the <a href="http://mail.gnome.org/mailman/listinfo/xslt">associated Web</a> page
+and follow the instructions.</p><p>Alternatively, you can just send the bug to the <a href="mailto:xslt@gnome.org">xslt@gnome.org</a> list, if it's really libxslt
+related I will approve it.. Please do not send me mail directly especially
+for portability problem, it makes things really harder to track and in some
+cases I'm not the best person to answer a given question, ask the list
+instead. <strong>Do not send code, I won't debug it</strong> (but patches are
+really appreciated!).</p><p>Check the following too <span style="color: #E50000">before
+posting</span>:</p><ul><li><a href="search.php">use the search engine</a> to get informations
+ related to your problem.</li>
+ <li>make sure you are <a href="ftp://xmlsoft.org/">using a recent
+ version</a>, and that the problem still shows up in those</li>
+ <li>check the <a href="http://mail.gnome.org/archives/xslt/">list
+ archives</a> to see if the problem was reported already, in this case
+ there is probably a fix available, similarly check the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">registered
+ open bugs</a></li>
+ <li>make sure you can reproduce the bug with xsltproc, a very useful thing
+ to do is run the transformation with -v argument and redirect the
+ standard error to a file, then search in this file for the transformation
+ logs just preceding the possible problem</li>
+ <li>Please send the command showing the error as well as the input and
+ stylesheet (as an attachment)</li>
+</ul><p>Then send the bug with associated informations to reproduce it to the <a href="mailto:xslt@gnome.org">xslt@gnome.org</a> list; if it's really libxslt
+related I will approve it. Please do not send mail to me directly, it makes
+things really hard to track and in some cases I am not the best person to
+answer a given question, ask on the list.</p><p>To <span style="color: #E50000">be really clear about support</span>:</p><ul><li>Support or help <span style="color: #E50000">request MUST be sent to
+ the list or on bugzilla</span> in case of problems, so that the Question
+ and Answers can be shared publicly. Failing to do so carries the implicit
+ message "I want free support but I don't want to share the benefits with
+ others" and is not welcome. I will automatically Carbon-Copy the
+ xslt@gnome.org mailing list for any technical reply made about libxml2 or
+ libxslt.</li>
+ <li>There is <span style="color: #E50000">no garantee for support</span>,
+ if your question remains unanswered after a week, repost it, making sure
+ you gave all the detail needed and the informations requested.</li>
+ <li>Failing to provide informations as requested or double checking first
+ for prior feedback also carries the implicit message "the time of the
+ library maintainers is less valuable than my time" and might not be
+ welcome.</li>
+</ul><p>Of course, bugs reports with a suggested patch for fixing them will
+probably be processed faster.</p><p>If you're looking for help, a quick look at <a href="http://mail.gnome.org/archives/xslt/">the list archive</a> may actually
+provide the answer, I usually send source samples when answering libxslt
+usage questions. The <a href="html/libxslt-lib.html#LIBXSLT-LIB">auto-generated documentation</a> is
+not as polished as I would like (I need to learn more about Docbook), but
+it's a good starting point.</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/EXSLT/docs.html b/libxslt/doc/EXSLT/docs.html
new file mode 100644
index 0000000..6bb951c
--- /dev/null
+++ b/libxslt/doc/EXSLT/docs.html
@@ -0,0 +1,18 @@
+<?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>Documentation</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 EXSLT C library for Gnome</h1><h2>Documentation</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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"><p>There are some on-line resources about using libxslt:</p><ol><li>Check the <a href="html/libxslt-lib.html#LIBXSLT-LIB">API
+ documentation</a> automatically extracted from code comments (using
+ the program apibuild.py, developed for libxml, together with the
+ xsl script 'newapi.xsl' and the libxslt xsltproc program).</li>
+ <li>Look at the <a href="http://mail.gnome.org/archives/xslt/">mailing-list
+ archive</a>.</li>
+ <li>Of course since libxslt is based on libxml, it's a good idea to at
+ least read <a href="http://xmlsoft.org/">libxml description</a></li>
+</ol><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/EXSLT/downloads.html b/libxslt/doc/EXSLT/downloads.html
new file mode 100644
index 0000000..85251de
--- /dev/null
+++ b/libxslt/doc/EXSLT/downloads.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>Downloads</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 EXSLT C library for Gnome</h1><h2>Downloads</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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"><p>The latest versions of libxslt can be found on <a href="ftp://xmlsoft.org/">xmlsoft.org</a> (<a href="ftp://speakeasy.rpmfind.net/pub/libxml/">Seattle</a>, <a href="ftp://fr.rpmfind.net/pub/libxml/">France</a>) or on the <a href="ftp://ftp.gnome.org/pub/GNOME/MIRRORS.html">Gnome FTP server</a> as a
+<a href="ftp://ftp.gnome.org/pub/GNOME/sources/libxslt/1.1/">source
+archive</a>, Antonin Sprinzl also provides <a href="ftp://gd.tuwien.ac.at/pub/libxml/">a mirror in Austria</a>. (NOTE that
+you need the <a href="http://rpmfind.net/linux/RPM/libxml2.html">libxml2</a>,
+<a href="http://rpmfind.net/linux/RPM/libxml2-devel.html">libxml2-devel</a>,
+<a href="http://rpmfind.net/linux/RPM/libxslt.html">libxslt</a> and <a href="http://rpmfind.net/linux/RPM/libxslt-devel.html">libxslt-devel</a>
+packages installed to compile applications using libxslt.) <a href="mailto:igor@zlatkovic.com">Igor Zlatkovic</a> is now the maintainer of
+the Windows port, <a href="http://www.zlatkovic.com/projects/libxml/index.html">he provides
+binaries</a>. <a href="mailto:Gary.Pennington@sun.com">Gary Pennington</a>
+provides <a href="http://garypennington.net/libxml2/">Solaris binaries</a>.
+<a href="mailto:Steve.Ball@zveno.com">Steve Ball</a> provides <a href="http://www.zveno.com/open_source/libxml2xslt.html">Mac Os X
+binaries</a>.</p><p><a name="Contribs" id="Contribs">Contribs:</a></p><p>I do accept external contributions, especially if compiling on another
+platform, get in touch with me to upload the package. I will keep them in the
+<a href="ftp://xmlsoft.org/contribs/">contrib directory</a></p><p>Libxslt is also available from CVS:</p><ul><li><p>The <a href="http://cvs.gnome.org/bonsai/rview.cgi?cvsroot=/cvs/gnome&amp;dir=libxslt">Gnome
+ CVS base</a>. Check the <a href="http://developer.gnome.org/tools/cvs.html">Gnome CVS Tools</a>
+ page; the CVS module is <b>libxslt</b>.</p>
+ </li>
+ <li><a href="ftp://xmlsoft.org/XSLT/cvs-snapshot.tar.gz">daily snapshots
+ from CVS</a> are also provided</li>
+</ul><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/EXSLT/exslt.html b/libxslt/doc/EXSLT/exslt.html
new file mode 100644
index 0000000..e39aba5
--- /dev/null
+++ b/libxslt/doc/EXSLT/exslt.html
@@ -0,0 +1,214 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+ <title>The EXSLT C library for Gnome</title>
+ <meta name="GENERATOR" content="amaya 5.1">
+ <meta http-equiv="Content-Type" content="text/html">
+</head>
+
+<body bgcolor="#ffffff">
+<h1 align="center">The EXSLT C library for Gnome</h1>
+
+<h1 style="text-align: center">libexslt</h1>
+
+<p>Libexslt is the <a href="http://www.exslt.org">EXSLT</a> C library
+ developed for libxslt (a part of the Gnome project). Much of the
+ initial work on the library was done by Thomas Broyer. EXSLT itself
+ is a community initiative to provide extensions to XSLT.
+
+<p>This library is free software and can be reused in commercial applications
+ (see the <a href="intro.html">intro</a>)</p>
+
+<p></p>
+
+<p>Logo designed by <a href="mailto:liyanage@access.ch">Marc Liyanage</a>.</p>
+
+<h2><a name="Introducti">Introduction</a></h2>
+
+<p>This document describes <a href="http://xmlsoft.org/XSLT/">libxslt</a>,
+the <a href="http://www.w3.org/TR/xslt">XSLT</a> C library developed for the
+<a href="http://www.gnome.org/">Gnome</a> project.</p>
+
+<p>Here are some key points about libxslt:</p>
+<ul>
+ <li>Libxslt is a C implementation</li>
+ <li>Libxslt is based on libxml for XML parsing, tree manipulation and XPath
+ support</li>
+ <li>It is written in plain C, making as few assumptions as possible, and
+ sticking closely to ANSI C/POSIX for easy embedding. Should works on
+ Linux/Unix/Windows.</li>
+ <li>This library is released under the <a
+ href="http://www.opensource.org/licenses/mit-license.html">MIT
+ Licence</a></li>
+ <li>Though not designed primarily with performances in mind, libxslt seems
+ to be a relatively fast processor.</li>
+</ul>
+
+<h2><a name="Documentat">Documentation</a></h2>
+
+<p>There are some on-line resources about using libxslt:</p>
+<ol>
+ <li>Check the <a href="html/libxslt-lib.html#LIBXSLT-LIB">API
+ documentation</a> automatically extracted from code comments (using
+ the program apibuild.py, developed for libxml, together with the
+ xsl script 'newapi.xsl' and the libxslt xsltproc program).</li>
+ <li>Look at the <a href="http://mail.gnome.org/archives/xslt/">mailing-list
+ archive</a>.</li>
+ <li>Of course since libxslt is based on libxml, it's a good idea to at
+ least read <a href="http://xmlsoft.org/">libxml description</a></li>
+</ol>
+
+<h2><a name="Reporting">Reporting bugs and getting help</a></h2>
+
+<p>Well, bugs or missing features are always possible, and I will make a
+point of fixing them in a timely fashion. The best way to report a bug is to
+use the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">Gnome
+bug tracking database</a> (make sure to use the "libxslt" module name). I
+look at reports there regularly and it's good to have a reminder when a bug
+is still open. Be sure to specify that the bug is for the package libxslt.</p>
+
+<p>For small problems you can try to get help on IRC, the #xml channel on
+irc.gnome.org (port 6667) usually have a few person subscribed which may help
+(but there is no guarantee and if a real issue is raised it should go on the
+mailing-list for archival).</p>
+
+<p>There is also a mailing-list <a
+href="mailto:xslt@gnome.org">xslt@gnome.org</a> for libxslt, with an <a
+href="http://mail.gnome.org/archives/xslt/">on-line archive</a>. To subscribe
+to this list, please visit the <a
+href="http://mail.gnome.org/mailman/listinfo/xslt">associated Web</a> page
+and follow the instructions.</p>
+
+<p>Alternatively, you can just send the bug to the <a
+href="mailto:xslt@gnome.org">xslt@gnome.org</a> list, if it's really libxslt
+related I will approve it.. Please do not send me mail directly especially
+for portability problem, it makes things really harder to track and in some
+cases I'm not the best person to answer a given question, ask the list
+instead. <strong>Do not send code, I won't debug it</strong> (but patches are
+really appreciated!).</p>
+
+<p>Check the following too <span style="color: #E50000">before
+posting</span>:</p>
+<ul>
+ <li><a href="search.php">use the search engine</a> to get informations
+ related to your problem.</li>
+ <li>make sure you are <a href="ftp://xmlsoft.org/">using a recent
+ version</a>, and that the problem still shows up in those</li>
+ <li>check the <a href="http://mail.gnome.org/archives/xslt/">list
+ archives</a> to see if the problem was reported already, in this case
+ there is probably a fix available, similarly check the <a
+ href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">registered
+ open bugs</a></li>
+ <li>make sure you can reproduce the bug with xsltproc, a very useful thing
+ to do is run the transformation with -v argument and redirect the
+ standard error to a file, then search in this file for the transformation
+ logs just preceding the possible problem</li>
+ <li>Please send the command showing the error as well as the input and
+ stylesheet (as an attachment)</li>
+</ul>
+
+<p>Then send the bug with associated informations to reproduce it to the <a
+href="mailto:xslt@gnome.org">xslt@gnome.org</a> list; if it's really libxslt
+related I will approve it. Please do not send mail to me directly, it makes
+things really hard to track and in some cases I am not the best person to
+answer a given question, ask on the list.</p>
+
+<p>To <span style="color: #E50000">be really clear about support</span>:</p>
+<ul>
+ <li>Support or help <span style="color: #E50000">request MUST be sent to
+ the list or on bugzilla</span> in case of problems, so that the Question
+ and Answers can be shared publicly. Failing to do so carries the implicit
+ message "I want free support but I don't want to share the benefits with
+ others" and is not welcome. I will automatically Carbon-Copy the
+ xslt@gnome.org mailing list for any technical reply made about libxml2 or
+ libxslt.</li>
+ <li>There is <span style="color: #E50000">no garantee for support</span>,
+ if your question remains unanswered after a week, repost it, making sure
+ you gave all the detail needed and the informations requested.</li>
+ <li>Failing to provide informations as requested or double checking first
+ for prior feedback also carries the implicit message "the time of the
+ library maintainers is less valuable than my time" and might not be
+ welcome.</li>
+</ul>
+
+<p>Of course, bugs reports with a suggested patch for fixing them will
+probably be processed faster.</p>
+
+<p>If you're looking for help, a quick look at <a
+href="http://mail.gnome.org/archives/xslt/">the list archive</a> may actually
+provide the answer, I usually send source samples when answering libxslt
+usage questions. The <a
+href="html/libxslt-lib.html#LIBXSLT-LIB">auto-generated documentation</a> is
+not as polished as I would like (I need to learn more about Docbook), but
+it's a good starting point.</p>
+
+<h2><a name="help">How to help</a></h2>
+
+<p>You can help the project in various ways, the best thing to do first is to
+subscribe to the mailing-list as explained before, check the <a
+href="http://mail.gnome.org/archives/xslt/">archives </a>and the <a
+href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">Gnome bug
+database:</a>:</p>
+<ol>
+ <li>provide patches when you find problems</li>
+ <li>provide the diffs when you port libxslt to a new platform. They may not
+ be integrated in all cases but help pinpointing portability problems
+ and</li>
+ <li>provide documentation fixes (either as patches to the code comments or
+ as HTML diffs).</li>
+ <li>provide new documentations pieces (translations, examples, etc ...)</li>
+ <li>Check the TODO file and try to close one of the items</li>
+ <li>take one of the points raised in the archive or the bug database and
+ provide a fix. <a href="mailto:daniel@veillard.com">Get in touch with me
+ </a>before to avoid synchronization problems and check that the suggested
+ fix will fit in nicely :-)</li>
+</ol>
+
+<h2><a name="Downloads">Downloads</a></h2>
+
+<p>The latest versions of libxslt can be found on <a
+href="ftp://xmlsoft.org/">xmlsoft.org</a> (<a
+href="ftp://speakeasy.rpmfind.net/pub/libxml/">Seattle</a>, <a
+href="ftp://fr.rpmfind.net/pub/libxml/">France</a>) or on the <a
+href="ftp://ftp.gnome.org/pub/GNOME/MIRRORS.html">Gnome FTP server</a> as a
+<a href="ftp://ftp.gnome.org/pub/GNOME/sources/libxslt/1.1/">source
+archive</a>, Antonin Sprinzl also provides <a
+href="ftp://gd.tuwien.ac.at/pub/libxml/">a mirror in Austria</a>. (NOTE that
+you need the <a href="http://rpmfind.net/linux/RPM/libxml2.html">libxml2</a>,
+<a href="http://rpmfind.net/linux/RPM/libxml2-devel.html">libxml2-devel</a>,
+<a href="http://rpmfind.net/linux/RPM/libxslt.html">libxslt</a> and <a
+href="http://rpmfind.net/linux/RPM/libxslt-devel.html">libxslt-devel</a>
+packages installed to compile applications using libxslt.) <a
+href="mailto:igor@zlatkovic.com">Igor Zlatkovic</a> is now the maintainer of
+the Windows port, <a
+href="http://www.zlatkovic.com/projects/libxml/index.html">he provides
+binaries</a>. <a href="mailto:Gary.Pennington@sun.com">Gary Pennington</a>
+provides <a href="http://garypennington.net/libxml2/">Solaris binaries</a>.
+<a href="mailto:Steve.Ball@zveno.com">Steve Ball</a> provides <a
+href="http://www.zveno.com/open_source/libxml2xslt.html">Mac Os X
+binaries</a>.</p>
+
+<p><a name="Contribs">Contribs:</a></p>
+
+<p>I do accept external contributions, especially if compiling on another
+platform, get in touch with me to upload the package. I will keep them in the
+<a href="ftp://xmlsoft.org/contribs/">contrib directory</a></p>
+
+<p>Libxslt is also available from CVS:</p>
+<ul>
+ <li><p>The <a
+ href="http://cvs.gnome.org/bonsai/rview.cgi?cvsroot=/cvs/gnome&amp;dir=libxslt">Gnome
+ CVS base</a>. Check the <a
+ href="http://developer.gnome.org/tools/cvs.html">Gnome CVS Tools</a>
+ page; the CVS module is <b>libxslt</b>.</p>
+ </li>
+ <li><a href="ftp://xmlsoft.org/XSLT/cvs-snapshot.tar.gz">daily snapshots
+ from CVS</a> are also provided</li>
+</ul>
+
+<p></p>
+
+<p><a href="mailto:daniel@veillard.com">Daniel Veillard</a></p>
+</body>
+</html>
diff --git a/libxslt/doc/EXSLT/help.html b/libxslt/doc/EXSLT/help.html
new file mode 100644
index 0000000..4672f65
--- /dev/null
+++ b/libxslt/doc/EXSLT/help.html
@@ -0,0 +1,24 @@
+<?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>How to help</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 EXSLT C library for Gnome</h1><h2>How to help</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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"><p>You can help the project in various ways, the best thing to do first is to
+subscribe to the mailing-list as explained before, check the <a href="http://mail.gnome.org/archives/xslt/">archives </a>and the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">Gnome bug
+database:</a>:</p><ol><li>provide patches when you find problems</li>
+ <li>provide the diffs when you port libxslt to a new platform. They may not
+ be integrated in all cases but help pinpointing portability problems
+ and</li>
+ <li>provide documentation fixes (either as patches to the code comments or
+ as HTML diffs).</li>
+ <li>provide new documentations pieces (translations, examples, etc ...)</li>
+ <li>Check the TODO file and try to close one of the items</li>
+ <li>take one of the points raised in the archive or the bug database and
+ provide a fix. <a href="mailto:daniel@veillard.com">Get in touch with me
+ </a>before to avoid synchronization problems and check that the suggested
+ fix will fit in nicely :-)</li>
+</ol><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/EXSLT/html/book1.html b/libxslt/doc/EXSLT/html/book1.html
new file mode 100644
index 0000000..604875f
--- /dev/null
+++ b/libxslt/doc/EXSLT/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 libexslt</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 EXSLT C library for GNOME</h1><h2>Reference Manual for libexslt</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="libexslt-exslt.html">exslt</a>: </li><li><a href="libexslt-exsltexports.html">exsltexports</a>: </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/EXSLT/html/home.png b/libxslt/doc/EXSLT/html/home.png
new file mode 100644
index 0000000..1700361
--- /dev/null
+++ b/libxslt/doc/EXSLT/html/home.png
Binary files differ
diff --git a/libxslt/doc/EXSLT/html/index.html b/libxslt/doc/EXSLT/html/index.html
new file mode 100644
index 0000000..604875f
--- /dev/null
+++ b/libxslt/doc/EXSLT/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 libexslt</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 EXSLT C library for GNOME</h1><h2>Reference Manual for libexslt</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="libexslt-exslt.html">exslt</a>: </li><li><a href="libexslt-exsltexports.html">exsltexports</a>: </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/EXSLT/html/left.png b/libxslt/doc/EXSLT/html/left.png
new file mode 100644
index 0000000..2d05b3d
--- /dev/null
+++ b/libxslt/doc/EXSLT/html/left.png
Binary files differ
diff --git a/libxslt/doc/EXSLT/html/libexslt-exslt.html b/libxslt/doc/EXSLT/html/libexslt-exslt.html
new file mode 100644
index 0000000..e1afa10
--- /dev/null
+++ b/libxslt/doc/EXSLT/html/libexslt-exslt.html
@@ -0,0 +1,62 @@
+<?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 exslt from libexslt</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 EXSLT C library for GNOME</h1><h2>Module exslt from libexslt</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="libexslt-exsltexports.html">exsltexports</a></th><td><a accesskey="n" href="libexslt-exsltexports.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#EXSLT_COMMON_NAMESPACE">EXSLT_COMMON_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#EXSLT_CRYPTO_NAMESPACE">EXSLT_CRYPTO_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#EXSLT_DATE_NAMESPACE">EXSLT_DATE_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#EXSLT_DYNAMIC_NAMESPACE">EXSLT_DYNAMIC_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#EXSLT_FUNCTIONS_NAMESPACE">EXSLT_FUNCTIONS_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#EXSLT_MATH_NAMESPACE">EXSLT_MATH_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#EXSLT_SETS_NAMESPACE">EXSLT_SETS_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#EXSLT_STRINGS_NAMESPACE">EXSLT_STRINGS_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#SAXON_NAMESPACE">SAXON_NAMESPACE</a></pre><pre class="programlisting">void <a href="#exsltCommonRegister">exsltCommonRegister</a> (void)</pre>
+<pre class="programlisting">void <a href="#exsltCryptoRegister">exsltCryptoRegister</a> (void)</pre>
+<pre class="programlisting">void <a href="#exsltDateRegister">exsltDateRegister</a> (void)</pre>
+<pre class="programlisting">int <a href="#exsltDateXpathCtxtRegister">exsltDateXpathCtxtRegister</a> (xmlXPathContextPtr ctxt, <br /> const xmlChar * prefix)</pre>
+<pre class="programlisting">void <a href="#exsltDynRegister">exsltDynRegister</a> (void)</pre>
+<pre class="programlisting">void <a href="#exsltFuncRegister">exsltFuncRegister</a> (void)</pre>
+<pre class="programlisting">void <a href="#exsltMathRegister">exsltMathRegister</a> (void)</pre>
+<pre class="programlisting">int <a href="#exsltMathXpathCtxtRegister">exsltMathXpathCtxtRegister</a> (xmlXPathContextPtr ctxt, <br /> const xmlChar * prefix)</pre>
+<pre class="programlisting">void <a href="#exsltRegisterAll">exsltRegisterAll</a> (void)</pre>
+<pre class="programlisting">void <a href="#exsltSaxonRegister">exsltSaxonRegister</a> (void)</pre>
+<pre class="programlisting">void <a href="#exsltSetsRegister">exsltSetsRegister</a> (void)</pre>
+<pre class="programlisting">int <a href="#exsltSetsXpathCtxtRegister">exsltSetsXpathCtxtRegister</a> (xmlXPathContextPtr ctxt, <br /> const xmlChar * prefix)</pre>
+<pre class="programlisting">void <a href="#exsltStrRegister">exsltStrRegister</a> (void)</pre>
+<pre class="programlisting">int <a href="#exsltStrXpathCtxtRegister">exsltStrXpathCtxtRegister</a> (xmlXPathContextPtr ctxt, <br /> const xmlChar * prefix)</pre>
+<h2>Description</h2>
+<h3><a name="EXSLT_COMMON_NAMESPACE" id="EXSLT_COMMON_NAMESPACE"></a>Macro: EXSLT_COMMON_NAMESPACE</h3><pre>#define EXSLT_COMMON_NAMESPACE</pre><p>Namespace for EXSLT common functions</p>
+<h3><a name="EXSLT_CRYPTO_NAMESPACE" id="EXSLT_CRYPTO_NAMESPACE"></a>Macro: EXSLT_CRYPTO_NAMESPACE</h3><pre>#define EXSLT_CRYPTO_NAMESPACE</pre><p>Namespace for EXSLT crypto functions</p>
+<h3><a name="EXSLT_DATE_NAMESPACE" id="EXSLT_DATE_NAMESPACE"></a>Macro: EXSLT_DATE_NAMESPACE</h3><pre>#define EXSLT_DATE_NAMESPACE</pre><p>Namespace for EXSLT date functions</p>
+<h3><a name="EXSLT_DYNAMIC_NAMESPACE" id="EXSLT_DYNAMIC_NAMESPACE"></a>Macro: EXSLT_DYNAMIC_NAMESPACE</h3><pre>#define EXSLT_DYNAMIC_NAMESPACE</pre><p>Namespace for EXSLT dynamic functions</p>
+<h3><a name="EXSLT_FUNCTIONS_NAMESPACE" id="EXSLT_FUNCTIONS_NAMESPACE"></a>Macro: EXSLT_FUNCTIONS_NAMESPACE</h3><pre>#define EXSLT_FUNCTIONS_NAMESPACE</pre><p>Namespace for EXSLT functions extension functions</p>
+<h3><a name="EXSLT_MATH_NAMESPACE" id="EXSLT_MATH_NAMESPACE"></a>Macro: EXSLT_MATH_NAMESPACE</h3><pre>#define EXSLT_MATH_NAMESPACE</pre><p>Namespace for EXSLT math functions</p>
+<h3><a name="EXSLT_SETS_NAMESPACE" id="EXSLT_SETS_NAMESPACE"></a>Macro: EXSLT_SETS_NAMESPACE</h3><pre>#define EXSLT_SETS_NAMESPACE</pre><p>Namespace for EXSLT set functions</p>
+<h3><a name="EXSLT_STRINGS_NAMESPACE" id="EXSLT_STRINGS_NAMESPACE"></a>Macro: EXSLT_STRINGS_NAMESPACE</h3><pre>#define EXSLT_STRINGS_NAMESPACE</pre><p>Namespace for EXSLT strings functions</p>
+<h3><a name="SAXON_NAMESPACE" id="SAXON_NAMESPACE"></a>Macro: SAXON_NAMESPACE</h3><pre>#define SAXON_NAMESPACE</pre><p>Namespace for SAXON extensions functions</p>
+<h3><a name="exsltCommonRegister" id="exsltCommonRegister"></a>Function: exsltCommonRegister</h3><pre class="programlisting">void exsltCommonRegister (void)<br />
+</pre><p>Registers the EXSLT - Common module</p>
+<h3><a name="exsltCryptoRegister" id="exsltCryptoRegister"></a>Function: exsltCryptoRegister</h3><pre class="programlisting">void exsltCryptoRegister (void)<br />
+</pre><p>Registers the EXSLT - Crypto module</p>
+<h3><a name="exsltDateRegister" id="exsltDateRegister"></a>Function: exsltDateRegister</h3><pre class="programlisting">void exsltDateRegister (void)<br />
+</pre><p>Registers the EXSLT - Dates and Times module</p>
+<h3><a name="exsltDateXpathCtxtRegister" id="exsltDateXpathCtxtRegister"></a>Function: exsltDateXpathCtxtRegister</h3><pre class="programlisting">int exsltDateXpathCtxtRegister (xmlXPathContextPtr ctxt, <br /> const xmlChar * prefix)<br />
+</pre><p>Registers the EXSLT - Dates and Times module for use outside XSLT</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>prefix</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="exsltDynRegister" id="exsltDynRegister"></a>Function: exsltDynRegister</h3><pre class="programlisting">void exsltDynRegister (void)<br />
+</pre><p>Registers the EXSLT - Dynamic module</p>
+<h3><a name="exsltFuncRegister" id="exsltFuncRegister"></a>Function: exsltFuncRegister</h3><pre class="programlisting">void exsltFuncRegister (void)<br />
+</pre><p>Registers the EXSLT - Functions module</p>
+<h3><a name="exsltMathRegister" id="exsltMathRegister"></a>Function: exsltMathRegister</h3><pre class="programlisting">void exsltMathRegister (void)<br />
+</pre><p>Registers the EXSLT - Math module</p>
+<h3><a name="exsltMathXpathCtxtRegister" id="exsltMathXpathCtxtRegister"></a>Function: exsltMathXpathCtxtRegister</h3><pre class="programlisting">int exsltMathXpathCtxtRegister (xmlXPathContextPtr ctxt, <br /> const xmlChar * prefix)<br />
+</pre><p>Registers the EXSLT - Math module for use outside XSLT</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>prefix</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="exsltRegisterAll" id="exsltRegisterAll"></a>Function: exsltRegisterAll</h3><pre class="programlisting">void exsltRegisterAll (void)<br />
+</pre><p>Registers all available EXSLT extensions</p>
+<h3><a name="exsltSaxonRegister" id="exsltSaxonRegister"></a>Function: exsltSaxonRegister</h3><pre class="programlisting">void exsltSaxonRegister (void)<br />
+</pre><p>Registers the SAXON extension module</p>
+<h3><a name="exsltSetsRegister" id="exsltSetsRegister"></a>Function: exsltSetsRegister</h3><pre class="programlisting">void exsltSetsRegister (void)<br />
+</pre><p>Registers the EXSLT - Sets module</p>
+<h3><a name="exsltSetsXpathCtxtRegister" id="exsltSetsXpathCtxtRegister"></a>Function: exsltSetsXpathCtxtRegister</h3><pre class="programlisting">int exsltSetsXpathCtxtRegister (xmlXPathContextPtr ctxt, <br /> const xmlChar * prefix)<br />
+</pre><p>Registers the EXSLT - Sets module for use outside XSLT</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>prefix</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="exsltStrRegister" id="exsltStrRegister"></a>Function: exsltStrRegister</h3><pre class="programlisting">void exsltStrRegister (void)<br />
+</pre><p>Registers the EXSLT - Strings module</p>
+<h3><a name="exsltStrXpathCtxtRegister" id="exsltStrXpathCtxtRegister"></a>Function: exsltStrXpathCtxtRegister</h3><pre class="programlisting">int exsltStrXpathCtxtRegister (xmlXPathContextPtr ctxt, <br /> const xmlChar * prefix)<br />
+</pre><p>Registers the EXSLT - Strings module for use outside XSLT</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>prefix</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><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/EXSLT/html/libexslt-exsltexports.html b/libxslt/doc/EXSLT/html/libexslt-exsltexports.html
new file mode 100644
index 0000000..656210c
--- /dev/null
+++ b/libxslt/doc/EXSLT/html/libexslt-exsltexports.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 exsltexports from libexslt</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 EXSLT C library for GNOME</h1><h2>Module exsltexports from libexslt</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="libexslt-exslt.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libexslt-exslt.html">exslt</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><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#EXSLTCALL">EXSLTCALL</a></pre><pre class="programlisting">#define <a href="#EXSLTPUBFUN">EXSLTPUBFUN</a></pre><pre class="programlisting">#define <a href="#EXSLTPUBVAR">EXSLTPUBVAR</a></pre><pre class="programlisting">#define <a href="#LIBEXSLT_PUBLIC">LIBEXSLT_PUBLIC</a></pre><pre class="programlisting">#define <a href="#_REENTRANT">_REENTRANT</a></pre><h2>Description</h2>
+<h3><a name="EXSLTCALL" id="EXSLTCALL"></a>Macro: EXSLTCALL</h3><pre>#define EXSLTCALL</pre><p></p>
+<h3><a name="EXSLTPUBFUN" id="EXSLTPUBFUN"></a>Macro: EXSLTPUBFUN</h3><pre>#define EXSLTPUBFUN</pre><p></p>
+<h3><a name="EXSLTPUBVAR" id="EXSLTPUBVAR"></a>Macro: EXSLTPUBVAR</h3><pre>#define EXSLTPUBVAR</pre><p></p>
+<h3><a name="LIBEXSLT_PUBLIC" id="LIBEXSLT_PUBLIC"></a>Macro: LIBEXSLT_PUBLIC</h3><pre>#define LIBEXSLT_PUBLIC</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/EXSLT/html/libexslt-lib.html b/libxslt/doc/EXSLT/html/libexslt-lib.html
new file mode 100644
index 0000000..604875f
--- /dev/null
+++ b/libxslt/doc/EXSLT/html/libexslt-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 libexslt</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 EXSLT C library for GNOME</h1><h2>Reference Manual for libexslt</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="libexslt-exslt.html">exslt</a>: </li><li><a href="libexslt-exsltexports.html">exsltexports</a>: </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/EXSLT/html/right.png b/libxslt/doc/EXSLT/html/right.png
new file mode 100644
index 0000000..92832e3
--- /dev/null
+++ b/libxslt/doc/EXSLT/html/right.png
Binary files differ
diff --git a/libxslt/doc/EXSLT/html/up.png b/libxslt/doc/EXSLT/html/up.png
new file mode 100644
index 0000000..85b3e2a
--- /dev/null
+++ b/libxslt/doc/EXSLT/html/up.png
Binary files differ
diff --git a/libxslt/doc/EXSLT/index.html b/libxslt/doc/EXSLT/index.html
new file mode 100644
index 0000000..a662c1c
--- /dev/null
+++ b/libxslt/doc/EXSLT/index.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>libexslt</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 EXSLT C library for Gnome</h1><h2>libexslt</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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"><p>Libexslt is the <a href="http://www.exslt.org">EXSLT</a> C library
+ developed for libxslt (a part of the Gnome project). Much of the
+ initial work on the library was done by Thomas Broyer. EXSLT itself
+ is a community initiative to provide extensions to XSLT.
+
+</p><p>This library is free software and can be reused in commercial applications
+ (see the <a href="intro.html">intro</a>)</p><p></p><p>Logo designed by <a href="mailto:liyanage@access.ch">Marc Liyanage</a>.</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/EXSLT/intro.html b/libxslt/doc/EXSLT/intro.html
new file mode 100644
index 0000000..1c96efa
--- /dev/null
+++ b/libxslt/doc/EXSLT/intro.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>Introduction</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 EXSLT C library for Gnome</h1><h2>Introduction</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="../index.html" style="font-weight:bold">libxslt</a></li><li><a href="html/index.html" style="font-weight:bold">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"><p>This document describes <a href="http://xmlsoft.org/XSLT/">libxslt</a>,
+the <a href="http://www.w3.org/TR/xslt">XSLT</a> C library developed for the
+<a href="http://www.gnome.org/">Gnome</a> project.</p><p>Here are some key points about libxslt:</p><ul><li>Libxslt is a C implementation</li>
+ <li>Libxslt is based on libxml for XML parsing, tree manipulation and XPath
+ support</li>
+ <li>It is written in plain C, making as few assumptions as possible, and
+ sticking closely to ANSI C/POSIX for easy embedding. Should works on
+ Linux/Unix/Windows.</li>
+ <li>This library is released under the <a href="http://www.opensource.org/licenses/mit-license.html">MIT
+ Licence</a></li>
+ <li>Though not designed primarily with performances in mind, libxslt seems
+ to be a relatively fast processor.</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/EXSLT/libexslt-api.xml b/libxslt/doc/EXSLT/libexslt-api.xml
new file mode 100644
index 0000000..bf35d34
--- /dev/null
+++ b/libxslt/doc/EXSLT/libexslt-api.xml
@@ -0,0 +1,148 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<api name='libexslt'>
+ <files>
+ <file name='exslt'>
+ <exports symbol='EXSLT_DATE_NAMESPACE' type='macro'/>
+ <exports symbol='EXSLT_STRINGS_NAMESPACE' type='macro'/>
+ <exports symbol='SAXON_NAMESPACE' type='macro'/>
+ <exports symbol='EXSLT_COMMON_NAMESPACE' type='macro'/>
+ <exports symbol='EXSLT_FUNCTIONS_NAMESPACE' type='macro'/>
+ <exports symbol='EXSLT_SETS_NAMESPACE' type='macro'/>
+ <exports symbol='EXSLT_DYNAMIC_NAMESPACE' type='macro'/>
+ <exports symbol='EXSLT_CRYPTO_NAMESPACE' type='macro'/>
+ <exports symbol='EXSLT_MATH_NAMESPACE' type='macro'/>
+ <exports symbol='exsltLibxmlVersion' type='variable'/>
+ <exports symbol='exsltLibexsltVersion' type='variable'/>
+ <exports symbol='exsltLibraryVersion' type='variable'/>
+ <exports symbol='exsltLibxsltVersion' type='variable'/>
+ <exports symbol='exsltDynRegister' type='function'/>
+ <exports symbol='exsltCommonRegister' type='function'/>
+ <exports symbol='exsltRegisterAll' type='function'/>
+ <exports symbol='exsltStrXpathCtxtRegister' type='function'/>
+ <exports symbol='exsltSetsXpathCtxtRegister' type='function'/>
+ <exports symbol='exsltFuncRegister' type='function'/>
+ <exports symbol='exsltStrRegister' type='function'/>
+ <exports symbol='exsltSetsRegister' type='function'/>
+ <exports symbol='exsltDateRegister' type='function'/>
+ <exports symbol='exsltCryptoRegister' type='function'/>
+ <exports symbol='exsltMathRegister' type='function'/>
+ <exports symbol='exsltMathXpathCtxtRegister' type='function'/>
+ <exports symbol='exsltSaxonRegister' type='function'/>
+ <exports symbol='exsltDateXpathCtxtRegister' type='function'/>
+ </file>
+ <file name='exsltexports'>
+ <exports symbol='LIBEXSLT_PUBLIC' type='macro'/>
+ <exports symbol='_REENTRANT' type='macro'/>
+ <exports symbol='EXSLTCALL' type='macro'/>
+ <exports symbol='EXSLTPUBFUN' type='macro'/>
+ <exports symbol='EXSLTPUBVAR' type='macro'/>
+ </file>
+ </files>
+ <symbols>
+ <macro name='EXSLTCALL' file='exsltexports'>
+ </macro>
+ <macro name='EXSLTPUBFUN' file='exsltexports'>
+ </macro>
+ <macro name='EXSLTPUBVAR' file='exsltexports'>
+ </macro>
+ <macro name='EXSLT_COMMON_NAMESPACE' file='exslt'>
+ <info>Namespace for EXSLT common functions</info>
+ </macro>
+ <macro name='EXSLT_CRYPTO_NAMESPACE' file='exslt'>
+ <info>Namespace for EXSLT crypto functions</info>
+ </macro>
+ <macro name='EXSLT_DATE_NAMESPACE' file='exslt'>
+ <info>Namespace for EXSLT date functions</info>
+ </macro>
+ <macro name='EXSLT_DYNAMIC_NAMESPACE' file='exslt'>
+ <info>Namespace for EXSLT dynamic functions</info>
+ </macro>
+ <macro name='EXSLT_FUNCTIONS_NAMESPACE' file='exslt'>
+ <info>Namespace for EXSLT functions extension functions</info>
+ </macro>
+ <macro name='EXSLT_MATH_NAMESPACE' file='exslt'>
+ <info>Namespace for EXSLT math functions</info>
+ </macro>
+ <macro name='EXSLT_SETS_NAMESPACE' file='exslt'>
+ <info>Namespace for EXSLT set functions</info>
+ </macro>
+ <macro name='EXSLT_STRINGS_NAMESPACE' file='exslt'>
+ <info>Namespace for EXSLT strings functions</info>
+ </macro>
+ <macro name='LIBEXSLT_PUBLIC' file='exsltexports'>
+ </macro>
+ <macro name='SAXON_NAMESPACE' file='exslt'>
+ <info>Namespace for SAXON extensions functions</info>
+ </macro>
+ <macro name='_REENTRANT' file='exsltexports'>
+ </macro>
+ <variable name='exsltLibexsltVersion' file='exslt' type='const int'/>
+ <variable name='exsltLibraryVersion' file='exslt' type='const char *'/>
+ <variable name='exsltLibxmlVersion' file='exslt' type='const int'/>
+ <variable name='exsltLibxsltVersion' file='exslt' type='const int'/>
+ <function name='exsltCommonRegister' file='exslt'>
+ <info>Registers the EXSLT - Common module</info>
+ <return type='void'/>
+ </function>
+ <function name='exsltCryptoRegister' file='exslt'>
+ <info>Registers the EXSLT - Crypto module</info>
+ <return type='void'/>
+ </function>
+ <function name='exsltDateRegister' file='exslt'>
+ <info>Registers the EXSLT - Dates and Times module</info>
+ <return type='void'/>
+ </function>
+ <function name='exsltDateXpathCtxtRegister' file='exslt'>
+ <info>Registers the EXSLT - Dates and Times module for use outside XSLT</info>
+ <return type='int' info=''/>
+ <arg name='ctxt' type='xmlXPathContextPtr' info=''/>
+ <arg name='prefix' type='const xmlChar *' info=''/>
+ </function>
+ <function name='exsltDynRegister' file='exslt'>
+ <info>Registers the EXSLT - Dynamic module</info>
+ <return type='void'/>
+ </function>
+ <function name='exsltFuncRegister' file='exslt'>
+ <info>Registers the EXSLT - Functions module</info>
+ <return type='void'/>
+ </function>
+ <function name='exsltMathRegister' file='exslt'>
+ <info>Registers the EXSLT - Math module</info>
+ <return type='void'/>
+ </function>
+ <function name='exsltMathXpathCtxtRegister' file='exslt'>
+ <info>Registers the EXSLT - Math module for use outside XSLT</info>
+ <return type='int' info=''/>
+ <arg name='ctxt' type='xmlXPathContextPtr' info=''/>
+ <arg name='prefix' type='const xmlChar *' info=''/>
+ </function>
+ <function name='exsltRegisterAll' file='exslt'>
+ <info>Registers all available EXSLT extensions</info>
+ <return type='void'/>
+ </function>
+ <function name='exsltSaxonRegister' file='exslt'>
+ <info>Registers the SAXON extension module</info>
+ <return type='void'/>
+ </function>
+ <function name='exsltSetsRegister' file='exslt'>
+ <info>Registers the EXSLT - Sets module</info>
+ <return type='void'/>
+ </function>
+ <function name='exsltSetsXpathCtxtRegister' file='exslt'>
+ <info>Registers the EXSLT - Sets module for use outside XSLT</info>
+ <return type='int' info=''/>
+ <arg name='ctxt' type='xmlXPathContextPtr' info=''/>
+ <arg name='prefix' type='const xmlChar *' info=''/>
+ </function>
+ <function name='exsltStrRegister' file='exslt'>
+ <info>Registers the EXSLT - Strings module</info>
+ <return type='void'/>
+ </function>
+ <function name='exsltStrXpathCtxtRegister' file='exslt'>
+ <info>Registers the EXSLT - Strings module for use outside XSLT</info>
+ <return type='int' info=''/>
+ <arg name='ctxt' type='xmlXPathContextPtr' info=''/>
+ <arg name='prefix' type='const xmlChar *' info=''/>
+ </function>
+ </symbols>
+</api>
diff --git a/libxslt/doc/EXSLT/libexslt-refs.xml b/libxslt/doc/EXSLT/libexslt-refs.xml
new file mode 100644
index 0000000..bddfb06
--- /dev/null
+++ b/libxslt/doc/EXSLT/libexslt-refs.xml
@@ -0,0 +1,360 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<apirefs name='libexslt'>
+ <references>
+ <reference name='EXSLTCALL' href='html/libexslt-exsltexports.html#EXSLTCALL'/>
+ <reference name='EXSLTPUBFUN' href='html/libexslt-exsltexports.html#EXSLTPUBFUN'/>
+ <reference name='EXSLTPUBVAR' href='html/libexslt-exsltexports.html#EXSLTPUBVAR'/>
+ <reference name='EXSLT_COMMON_NAMESPACE' href='html/libexslt-exslt.html#EXSLT_COMMON_NAMESPACE'/>
+ <reference name='EXSLT_CRYPTO_NAMESPACE' href='html/libexslt-exslt.html#EXSLT_CRYPTO_NAMESPACE'/>
+ <reference name='EXSLT_DATE_NAMESPACE' href='html/libexslt-exslt.html#EXSLT_DATE_NAMESPACE'/>
+ <reference name='EXSLT_DYNAMIC_NAMESPACE' href='html/libexslt-exslt.html#EXSLT_DYNAMIC_NAMESPACE'/>
+ <reference name='EXSLT_FUNCTIONS_NAMESPACE' href='html/libexslt-exslt.html#EXSLT_FUNCTIONS_NAMESPACE'/>
+ <reference name='EXSLT_MATH_NAMESPACE' href='html/libexslt-exslt.html#EXSLT_MATH_NAMESPACE'/>
+ <reference name='EXSLT_SETS_NAMESPACE' href='html/libexslt-exslt.html#EXSLT_SETS_NAMESPACE'/>
+ <reference name='EXSLT_STRINGS_NAMESPACE' href='html/libexslt-exslt.html#EXSLT_STRINGS_NAMESPACE'/>
+ <reference name='LIBEXSLT_PUBLIC' href='html/libexslt-exsltexports.html#LIBEXSLT_PUBLIC'/>
+ <reference name='SAXON_NAMESPACE' href='html/libexslt-exslt.html#SAXON_NAMESPACE'/>
+ <reference name='_REENTRANT' href='html/libexslt-exsltexports.html#_REENTRANT'/>
+ <reference name='exsltCommonRegister' href='html/libexslt-exslt.html#exsltCommonRegister'/>
+ <reference name='exsltCryptoRegister' href='html/libexslt-exslt.html#exsltCryptoRegister'/>
+ <reference name='exsltDateRegister' href='html/libexslt-exslt.html#exsltDateRegister'/>
+ <reference name='exsltDateXpathCtxtRegister' href='html/libexslt-exslt.html#exsltDateXpathCtxtRegister'/>
+ <reference name='exsltDynRegister' href='html/libexslt-exslt.html#exsltDynRegister'/>
+ <reference name='exsltFuncRegister' href='html/libexslt-exslt.html#exsltFuncRegister'/>
+ <reference name='exsltLibexsltVersion' href='html/libexslt-exslt.html#exsltLibexsltVersion'/>
+ <reference name='exsltLibraryVersion' href='html/libexslt-exslt.html#exsltLibraryVersion'/>
+ <reference name='exsltLibxmlVersion' href='html/libexslt-exslt.html#exsltLibxmlVersion'/>
+ <reference name='exsltLibxsltVersion' href='html/libexslt-exslt.html#exsltLibxsltVersion'/>
+ <reference name='exsltMathRegister' href='html/libexslt-exslt.html#exsltMathRegister'/>
+ <reference name='exsltMathXpathCtxtRegister' href='html/libexslt-exslt.html#exsltMathXpathCtxtRegister'/>
+ <reference name='exsltRegisterAll' href='html/libexslt-exslt.html#exsltRegisterAll'/>
+ <reference name='exsltSaxonRegister' href='html/libexslt-exslt.html#exsltSaxonRegister'/>
+ <reference name='exsltSetsRegister' href='html/libexslt-exslt.html#exsltSetsRegister'/>
+ <reference name='exsltSetsXpathCtxtRegister' href='html/libexslt-exslt.html#exsltSetsXpathCtxtRegister'/>
+ <reference name='exsltStrRegister' href='html/libexslt-exslt.html#exsltStrRegister'/>
+ <reference name='exsltStrXpathCtxtRegister' href='html/libexslt-exslt.html#exsltStrXpathCtxtRegister'/>
+ </references>
+ <alpha>
+ <letter name='E'>
+ <ref name='EXSLTCALL'/>
+ <ref name='EXSLTPUBFUN'/>
+ <ref name='EXSLTPUBVAR'/>
+ <ref name='EXSLT_COMMON_NAMESPACE'/>
+ <ref name='EXSLT_CRYPTO_NAMESPACE'/>
+ <ref name='EXSLT_DATE_NAMESPACE'/>
+ <ref name='EXSLT_DYNAMIC_NAMESPACE'/>
+ <ref name='EXSLT_FUNCTIONS_NAMESPACE'/>
+ <ref name='EXSLT_MATH_NAMESPACE'/>
+ <ref name='EXSLT_SETS_NAMESPACE'/>
+ <ref name='EXSLT_STRINGS_NAMESPACE'/>
+ </letter>
+ <letter name='L'>
+ <ref name='LIBEXSLT_PUBLIC'/>
+ </letter>
+ <letter name='S'>
+ <ref name='SAXON_NAMESPACE'/>
+ </letter>
+ <letter name='_'>
+ <ref name='_REENTRANT'/>
+ </letter>
+ <letter name='e'>
+ <ref name='exsltCommonRegister'/>
+ <ref name='exsltCryptoRegister'/>
+ <ref name='exsltDateRegister'/>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltDynRegister'/>
+ <ref name='exsltFuncRegister'/>
+ <ref name='exsltLibexsltVersion'/>
+ <ref name='exsltLibraryVersion'/>
+ <ref name='exsltLibxmlVersion'/>
+ <ref name='exsltLibxsltVersion'/>
+ <ref name='exsltMathRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltRegisterAll'/>
+ <ref name='exsltSaxonRegister'/>
+ <ref name='exsltSetsRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </letter>
+ </alpha>
+ <constructors>
+ </constructors>
+ <functions>
+ <type name='const xmlChar *'>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </type>
+ <type name='xmlXPathContextPtr'>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </type>
+ </functions>
+ <files>
+ <file name='exslt'>
+ <ref name='EXSLT_COMMON_NAMESPACE'/>
+ <ref name='EXSLT_CRYPTO_NAMESPACE'/>
+ <ref name='EXSLT_DATE_NAMESPACE'/>
+ <ref name='EXSLT_DYNAMIC_NAMESPACE'/>
+ <ref name='EXSLT_FUNCTIONS_NAMESPACE'/>
+ <ref name='EXSLT_MATH_NAMESPACE'/>
+ <ref name='EXSLT_SETS_NAMESPACE'/>
+ <ref name='EXSLT_STRINGS_NAMESPACE'/>
+ <ref name='SAXON_NAMESPACE'/>
+ <ref name='exsltCommonRegister'/>
+ <ref name='exsltCryptoRegister'/>
+ <ref name='exsltDateRegister'/>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltDynRegister'/>
+ <ref name='exsltFuncRegister'/>
+ <ref name='exsltLibexsltVersion'/>
+ <ref name='exsltLibraryVersion'/>
+ <ref name='exsltLibxmlVersion'/>
+ <ref name='exsltLibxsltVersion'/>
+ <ref name='exsltMathRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltRegisterAll'/>
+ <ref name='exsltSaxonRegister'/>
+ <ref name='exsltSetsRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </file>
+ <file name='exsltexports'>
+ <ref name='EXSLTCALL'/>
+ <ref name='EXSLTPUBFUN'/>
+ <ref name='EXSLTPUBVAR'/>
+ <ref name='LIBEXSLT_PUBLIC'/>
+ <ref name='_REENTRANT'/>
+ </file>
+ </files>
+ <index>
+ <chunk name='chunk0'>
+ <letter name='C'>
+ <word name='Common'>
+ <ref name='exsltCommonRegister'/>
+ </word>
+ <word name='Crypto'>
+ <ref name='exsltCryptoRegister'/>
+ </word>
+ </letter>
+ <letter name='D'>
+ <word name='Dates'>
+ <ref name='exsltDateRegister'/>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ </word>
+ <word name='Dynamic'>
+ <ref name='exsltDynRegister'/>
+ </word>
+ </letter>
+ <letter name='E'>
+ <word name='EXSLT'>
+ <ref name='EXSLT_COMMON_NAMESPACE'/>
+ <ref name='EXSLT_CRYPTO_NAMESPACE'/>
+ <ref name='EXSLT_DATE_NAMESPACE'/>
+ <ref name='EXSLT_DYNAMIC_NAMESPACE'/>
+ <ref name='EXSLT_FUNCTIONS_NAMESPACE'/>
+ <ref name='EXSLT_MATH_NAMESPACE'/>
+ <ref name='EXSLT_SETS_NAMESPACE'/>
+ <ref name='EXSLT_STRINGS_NAMESPACE'/>
+ <ref name='exsltCommonRegister'/>
+ <ref name='exsltCryptoRegister'/>
+ <ref name='exsltDateRegister'/>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltDynRegister'/>
+ <ref name='exsltFuncRegister'/>
+ <ref name='exsltMathRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltRegisterAll'/>
+ <ref name='exsltSetsRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </word>
+ </letter>
+ <letter name='F'>
+ <word name='Functions'>
+ <ref name='exsltFuncRegister'/>
+ </word>
+ </letter>
+ <letter name='M'>
+ <word name='Math'>
+ <ref name='exsltMathRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ </word>
+ </letter>
+ <letter name='N'>
+ <word name='Namespace'>
+ <ref name='EXSLT_COMMON_NAMESPACE'/>
+ <ref name='EXSLT_CRYPTO_NAMESPACE'/>
+ <ref name='EXSLT_DATE_NAMESPACE'/>
+ <ref name='EXSLT_DYNAMIC_NAMESPACE'/>
+ <ref name='EXSLT_FUNCTIONS_NAMESPACE'/>
+ <ref name='EXSLT_MATH_NAMESPACE'/>
+ <ref name='EXSLT_SETS_NAMESPACE'/>
+ <ref name='EXSLT_STRINGS_NAMESPACE'/>
+ <ref name='SAXON_NAMESPACE'/>
+ </word>
+ </letter>
+ <letter name='R'>
+ <word name='Registers'>
+ <ref name='exsltCommonRegister'/>
+ <ref name='exsltCryptoRegister'/>
+ <ref name='exsltDateRegister'/>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltDynRegister'/>
+ <ref name='exsltFuncRegister'/>
+ <ref name='exsltMathRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltRegisterAll'/>
+ <ref name='exsltSaxonRegister'/>
+ <ref name='exsltSetsRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </word>
+ </letter>
+ <letter name='S'>
+ <word name='SAXON'>
+ <ref name='SAXON_NAMESPACE'/>
+ <ref name='exsltSaxonRegister'/>
+ </word>
+ <word name='Sets'>
+ <ref name='exsltSetsRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ </word>
+ <word name='Strings'>
+ <ref name='exsltStrRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </word>
+ </letter>
+ <letter name='T'>
+ <word name='Times'>
+ <ref name='exsltDateRegister'/>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ </word>
+ </letter>
+ <letter name='X'>
+ <word name='XSLT'>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </word>
+ </letter>
+ <letter name='a'>
+ <word name='all'>
+ <ref name='exsltRegisterAll'/>
+ </word>
+ <word name='available'>
+ <ref name='exsltRegisterAll'/>
+ </word>
+ </letter>
+ <letter name='c'>
+ <word name='common'>
+ <ref name='EXSLT_COMMON_NAMESPACE'/>
+ </word>
+ <word name='crypto'>
+ <ref name='EXSLT_CRYPTO_NAMESPACE'/>
+ </word>
+ </letter>
+ <letter name='d'>
+ <word name='date'>
+ <ref name='EXSLT_DATE_NAMESPACE'/>
+ </word>
+ <word name='dynamic'>
+ <ref name='EXSLT_DYNAMIC_NAMESPACE'/>
+ </word>
+ </letter>
+ <letter name='e'>
+ <word name='extension'>
+ <ref name='EXSLT_FUNCTIONS_NAMESPACE'/>
+ <ref name='exsltSaxonRegister'/>
+ </word>
+ <word name='extensions'>
+ <ref name='SAXON_NAMESPACE'/>
+ <ref name='exsltRegisterAll'/>
+ </word>
+ </letter>
+ <letter name='f'>
+ <word name='for'>
+ <ref name='EXSLT_COMMON_NAMESPACE'/>
+ <ref name='EXSLT_CRYPTO_NAMESPACE'/>
+ <ref name='EXSLT_DATE_NAMESPACE'/>
+ <ref name='EXSLT_DYNAMIC_NAMESPACE'/>
+ <ref name='EXSLT_FUNCTIONS_NAMESPACE'/>
+ <ref name='EXSLT_MATH_NAMESPACE'/>
+ <ref name='EXSLT_SETS_NAMESPACE'/>
+ <ref name='EXSLT_STRINGS_NAMESPACE'/>
+ <ref name='SAXON_NAMESPACE'/>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </word>
+ <word name='functions'>
+ <ref name='EXSLT_COMMON_NAMESPACE'/>
+ <ref name='EXSLT_CRYPTO_NAMESPACE'/>
+ <ref name='EXSLT_DATE_NAMESPACE'/>
+ <ref name='EXSLT_DYNAMIC_NAMESPACE'/>
+ <ref name='EXSLT_FUNCTIONS_NAMESPACE'/>
+ <ref name='EXSLT_MATH_NAMESPACE'/>
+ <ref name='EXSLT_SETS_NAMESPACE'/>
+ <ref name='EXSLT_STRINGS_NAMESPACE'/>
+ <ref name='SAXON_NAMESPACE'/>
+ </word>
+ </letter>
+ <letter name='m'>
+ <word name='math'>
+ <ref name='EXSLT_MATH_NAMESPACE'/>
+ </word>
+ <word name='module'>
+ <ref name='exsltCommonRegister'/>
+ <ref name='exsltCryptoRegister'/>
+ <ref name='exsltDateRegister'/>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltDynRegister'/>
+ <ref name='exsltFuncRegister'/>
+ <ref name='exsltMathRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltSaxonRegister'/>
+ <ref name='exsltSetsRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </word>
+ </letter>
+ <letter name='o'>
+ <word name='outside'>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </word>
+ </letter>
+ <letter name='s'>
+ <word name='set'>
+ <ref name='EXSLT_SETS_NAMESPACE'/>
+ </word>
+ <word name='strings'>
+ <ref name='EXSLT_STRINGS_NAMESPACE'/>
+ </word>
+ </letter>
+ <letter name='u'>
+ <word name='use'>
+ <ref name='exsltDateXpathCtxtRegister'/>
+ <ref name='exsltMathXpathCtxtRegister'/>
+ <ref name='exsltSetsXpathCtxtRegister'/>
+ <ref name='exsltStrXpathCtxtRegister'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunks>
+ <chunk name='chunk0' start='C' end='u'/>
+ </chunks>
+ </index>
+</apirefs>
diff --git a/libxslt/doc/FAQ.html b/libxslt/doc/FAQ.html
new file mode 100644
index 0000000..17b8c33
--- /dev/null
+++ b/libxslt/doc/FAQ.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>FAQ</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>FAQ</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><ol>
+ <li><em>Troubles compiling or linking programs using libxslt</em>
+ <p>Usually the problem comes from the fact that the compiler doesn't get
+ the right compilation or linking flags. There is a small shell script
+ <code>xslt-config</code> which is installed as part of libxslt usual
+ install process which provides those flags. Use</p>
+ <p><code>xslt-config --cflags</code></p>
+ <p>to get the compilation flags and</p>
+ <p><code>xslt-config --libs</code></p>
+ <p>to get the linker flags. Usually this is done directly from the
+ Makefile as:</p>
+ <p><code>CFLAGS=`xslt-config --cflags`</code></p>
+ <p><code>LIBS=`xslt-config --libs`</code></p>
+ <p>Note also that if you use the EXSLT extensions from the program then
+ you should prepend <code>-lexslt</code> to the LIBS options</p>
+ </li>
+ <li><em>passing parameters on the xsltproc command line doesn't work</em>
+ <p><em>xsltproc --param test alpha foo.xsl foo.xml</em></p>
+ <p><em>the param does not get passed and ends up as ""</em></p>
+ <p>In a nutshell do a double escaping at the shell prompt:</p>
+ <p>xsltproc --param test "'alpha'" foo.xsl foo.xml</p>
+ <p>i.e. the string value is surrounded by " and ' then terminated by '
+ and ". Libxslt interpret the parameter values as XPath expressions, so
+ the string -&gt;<code>alpha</code>&lt;- is intepreted as the node set
+ matching this string. You really want -&gt;<code>'alpha'</code>&lt;- to
+ be passed to the processor. And to allow this you need to escape the
+ quotes at the shell level using -&gt;<code>"'alpha'"</code>&lt;- .</p>
+ <p>or use</p>
+ <p>xsltproc --stringparam test alpha foo.xsl foo.xml</p>
+ </li>
+ <li><em>Is there C++ bindings ?</em>
+ <p>Yes for example <a href="http://pmade.org/pjones/software/xmlwrapp/">xmlwrapp</a> , see <a href="python.html">the related pages about bindings</a></p>
+ </li>
+</ol><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/Libxslt-Logo-180x168.gif b/libxslt/doc/Libxslt-Logo-180x168.gif
new file mode 100644
index 0000000..cfb6ccb
--- /dev/null
+++ b/libxslt/doc/Libxslt-Logo-180x168.gif
Binary files differ
diff --git a/libxslt/doc/Libxslt-Logo-90x34.gif b/libxslt/doc/Libxslt-Logo-90x34.gif
new file mode 100644
index 0000000..e63c877
--- /dev/null
+++ b/libxslt/doc/Libxslt-Logo-90x34.gif
Binary files differ
diff --git a/libxslt/doc/Makefile.am b/libxslt/doc/Makefile.am
new file mode 100644
index 0000000..a69995a
--- /dev/null
+++ b/libxslt/doc/Makefile.am
@@ -0,0 +1,328 @@
+## Process this file with automake to produce Makefile.in
+
+# The top-level SGML file.
+DOC_MAIN_XML_FILE=libxslt.xml
+
+# The directory containing the source code (if it contains documentation).
+DOC_SOURCE_DIR=..
+
+# A file in win32 depends upon two of the doc files
+WIN32_DIR=$(top_srcdir)/win32
+
+PAGES= API.html bugs.html contribs.html FAQ.html docs.html \
+ downloads.html help.html index.html intro.html news.html \
+ xsltproc2.html
+
+EPAGES= EXSLT/bugs.html EXSLT/docs.html EXSLT/downloads.html \
+ EXSLT/help.html EXSLT/index.html EXSLT/intro.html
+
+APIPAGES=APIconstructors.html APIfiles.html APIfunctions.html \
+ APIsymbols.html APIchunk0.html search.templ
+
+EAPIPAGES=EXSLT/APIconstructors.html EXSLT/APIfiles.html \
+ EXSLT/APIfunctions.html EXSLT/APIsymbols.html EXSLT/APIchunk0.html
+
+EXTRA_DIST = \
+ $(PAGES) \
+ $(EPAGES) \
+ $(EAPIPAGES) \
+ APIchunk0.html \
+ APIchunk1.html \
+ APIchunk2.html \
+ APIchunk3.html \
+ APIchunk4.html \
+ APIchunk5.html \
+ APIchunk6.html \
+ APIchunk7.html \
+ APIchunk8.html \
+ APIchunk9.html \
+ APIchunk10.html \
+ APIchunk11.html \
+ APIchunk12.html \
+ APIchunk13.html \
+ APIconstructors.html \
+ APIfiles.html \
+ APIfunctions.html \
+ APIsymbols.html \
+ EXSLT/exslt.html \
+ EXSLT/html/book1.html \
+ EXSLT/html/home.png \
+ EXSLT/html/index.html \
+ EXSLT/html/left.png \
+ EXSLT/html/libexslt-exslt.html \
+ EXSLT/html/libexslt-exsltexports.html \
+ EXSLT/html/libexslt-lib.html \
+ EXSLT/html/right.png \
+ EXSLT/html/up.png \
+ EXSLT/libexslt-api.xml \
+ EXSLT/libexslt-refs.xml \
+ Libxslt-Logo-180x168.gif \
+ Libxslt-Logo-90x34.gif \
+ api.xsl \
+ apibuild.py \
+ checkapisym.xsl \
+ contexts.gif \
+ docbook.html \
+ duck.png \
+ epatents.png \
+ extensions.html \
+ gnome2.png \
+ html/book1.html \
+ html/home.png \
+ html/index.html \
+ html/left.png \
+ html/libxslt-attributes.html \
+ html/libxslt-documents.html \
+ html/libxslt-extensions.html \
+ html/libxslt-extra.html \
+ html/libxslt-functions.html \
+ html/libxslt-imports.html \
+ html/libxslt-keys.html \
+ html/libxslt-lib.html \
+ html/libxslt-namespaces.html \
+ html/libxslt-numbersInternals.html \
+ html/libxslt-pattern.html \
+ html/libxslt-preproc.html \
+ html/libxslt-security.html \
+ html/libxslt-templates.html \
+ html/libxslt-transform.html \
+ html/libxslt-variables.html \
+ html/libxslt-xslt.html \
+ html/libxslt-xsltInternals.html \
+ html/libxslt-xsltexports.html \
+ html/libxslt-xsltlocale.html \
+ html/libxslt-xsltutils.html \
+ html/right.png \
+ html/up.png \
+ images/callouts/1.png \
+ images/callouts/10.png \
+ images/callouts/2.png \
+ images/callouts/3.png \
+ images/callouts/4.png \
+ images/callouts/5.png \
+ images/callouts/6.png \
+ images/callouts/7.png \
+ images/callouts/8.png \
+ images/callouts/9.png \
+ internals.html \
+ libxslt-api.xml \
+ libxslt-refs.xml \
+ libxslt.xsa \
+ newapi.xsl \
+ news.xsl \
+ node.gif \
+ object.gif \
+ processing.gif \
+ python.html \
+ redhat.gif \
+ search.xml \
+ site.xsl \
+ smallfootonly.gif \
+ stylesheet.gif \
+ symbols.xml \
+ syms.xsl \
+ templates.gif \
+ tutorial/libxslt_tutorial.c \
+ tutorial/libxslttutorial.html \
+ tutorial/libxslttutorial.xml \
+ tutorial2/libxslt_pipes.c \
+ tutorial2/libxslt_pipes.html \
+ tutorial2/libxslt_pipes.xml \
+ w3c.png \
+ xsa.xsl \
+ xslt.html \
+ xsltproc.1 \
+ xsltproc.html \
+ xsltproc.xml
+
+man_MANS = xsltproc.1
+
+all-local: web ../NEWS libxslt.xsa $(man_MANS)
+
+api: libxslt-api.xml libxslt-refs.xml $(APIPAGES) search.php \
+ html/index.html $(WIN32_DIR)/libxslt.def.src
+
+eapi: EXSLT/libexslt-api.xml EXSLT/libexslt-refs.xml $(EAPIPAGES) \
+ EXSLT/html/index.html $(WIN32_DIR)/libexslt.def.src
+
+web: $(PAGES) $(EPAGES)
+
+$(PAGES): $(srcdir)/xslt.html $(srcdir)/site.xsl
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ echo "Rebuilding the HTML Web pages from xslt.html" ; \
+ $(XSLTPROC) --nonet --html $(srcdir)/site.xsl \
+ $(srcdir)/xslt.html > index.html ; fi )
+ -@(if [ -x $(XMLLINT) ] ; then \
+ echo "Validating the HTML Web pages" ; \
+ $(XMLLINT) --nonet --valid --noout $(PAGES) ; fi );
+
+$(EPAGES): $(srcdir)/EXSLT/exslt.html $(srcdir)/site.xsl
+ -@(if [ ! -d EXSLT/html ] ; then \
+ mkdir -p EXSLT/html ; fi )
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ echo "Rebuilding the HTML Web pages from exslt.html" ; \
+ $(XSLTPROC) --nonet --html \
+ --stringparam dirname EXSLT/ \
+ --stringparam libname libexslt \
+ --stringparam logo_base ../ \
+ $(srcdir)/site.xsl \
+ $(srcdir)/EXSLT/exslt.html > EXSLT/index.html ; fi )
+ -@(if [ -x $(XMLLINT) ] ; then \
+ echo "Validating the HTML Web pages" ; \
+ $(XMLLINT) --nonet --valid --noout $(EPAGES) ; fi );
+
+../NEWS: $(srcdir)/news.xsl $(srcdir)/news.html
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ $(XSLTPROC) --nonet $(srcdir)/news.xsl \
+ $(srcdir)/news.html > ../NEWS ; fi );
+
+libxslt.xsa: $(srcdir)/xsa.xsl $(srcdir)/news.html
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ $(XSLTPROC) --nonet $(srcdir)/xsa.xsl \
+ news.html > libxslt.xsa ; fi );
+
+$(APIPAGES): libxslt-refs.xml site.xsl api.xsl $(srcdir)/site.xsl \
+ $(srcdir)/api.xsl
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ echo "Rebuilding the HTML API pages from libxslt-refs.xml" ; \
+ $(XSLTPROC) --nonet --html \
+ $(srcdir)/api.xsl \
+ $(srcdir)/xslt.html ; fi );
+ -@(if [ -x $(XMLLINT) ] ; then \
+ echo "Validating the HTML API pages" ; \
+ $(XMLLINT) --nonet --valid --noout API*.html; fi );
+
+$(EAPIPAGES): EXSLT/libexslt-refs.xml site.xsl api.xsl
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ echo "Rebuilding the HTML API pages from libexslt-refs.xml" ; \
+ $(XSLTPROC) --nonet --html --output EXSLT/ \
+ --stringparam libname libexslt \
+ --stringparam dirname EXSLT/ \
+ --stringparam logo_base ../ \
+ $(srcdir)/api.xsl \
+ $(srcdir)/EXSLT/exslt.html ; fi );
+
+html/index.html: libxslt-api.xml $(srcdir)/newapi.xsl
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ echo "Rebuilding the HTML pages from the XSLT API" ; \
+ $(XSLTPROC) --nonet \
+ $(srcdir)/newapi.xsl $(srcdir)/libxslt-api.xml ; fi );
+ -@(if [ -x $(XMLLINT) ] ; then \
+ echo "Validating the resulting XHTML pages" ; \
+ $(XMLLINT) --nonet --valid --noout html/*.html ; fi );
+
+wiki: libxslt-api.xml $(srcdir)/wiki.xsl
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ echo "Rebuilding the wiki HTML pages from the XSLT API" ; \
+ $(XSLTPROC) --nonet $(srcdir)/wiki.xsl $(srcdir)/libxslt-api.xml; fi )
+
+EXSLT/html/index.html: EXSLT/libexslt-api.xml \
+ $(srcdir)/newapi.xsl
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ echo "Rebuilding the HTML pages from the EXSLT API" ; \
+ $(XSLTPROC) --nonet --output EXSLT/ \
+ --stringparam libname libexslt \
+ --stringparam dirname EXSLT/ \
+ --stringparam logo_base ../../ \
+ $(srcdir)/newapi.xsl \
+ $(srcdir)/EXSLT/libexslt-api.xml ; fi );
+ -@(if [ -x $(XMLLINT) ] ; then \
+ echo "Validating the resulting XHTML pages" ; \
+ $(XMLLINT) --nonet --valid --noout EXSLT/html/*.html ; fi );
+
+
+libxslt-api.xml libxslt-refs.xml EXSLT/libexslt-api.xml \
+ EXSLT/libexslt-refs.xml ../libxslt/libxslt.syms : $(srcdir)/apibuild.py $(top_srcdir)/libxslt/*.h \
+ $(top_srcdir)/libxslt/*.c $(top_srcdir)/libexslt/*.h \
+ $(top_srcdir)/libexslt/*.c
+ -(cd $(srcdir) && ./apibuild.py)
+ ($(XSLTPROC) $(srcdir)/checkapisym.xsl $(srcdir)/libxslt-api.xml)
+ ($(XSLTPROC) -o ../libxslt/libxslt.syms $(srcdir)/syms.xsl $(srcdir)/symbols.xml)
+
+xsltproc.1: $(srcdir)/xsltproc.xml
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ echo "Rebuilding the man pages from the xml" ; \
+ $(XSLTPROC) --nonet $(srcdir)/xsltproc.xml ; fi)
+
+# Note that in the following, xmllint output is piped to xsltproc
+search.php: $(srcdir)/api.xsl $(srcdir)/site.xsl $(srcdir)/search.templ \
+ $(srcdir)/search.xml $(srcdir)/search.php.inc
+ -@(if test -x $(XMLLINT) -a -x $(XSLTPROC); then \
+ echo "Rebuilding search.php" ; \
+ $(XMLLINT) --xinclude --nonet \
+ $(srcdir)/search.xml | \
+ $(XSLTPROC) --nonet - search.templ \
+ > search.php ; else \
+ echo "Unable to find xmllint or xsltproc in $(bindir)" ; fi)
+
+$(WIN32_DIR)/libxslt.def.src: libxslt-api.xml
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ $(XSLTPROC) -o $(WIN32_DIR)/libxslt.def.src \
+ --nonet $(WIN32_DIR)/defgen.xsl $(srcdir)/libxslt-api.xml ; fi )
+
+$(WIN32_DIR)/libexslt.def.src: EXSLT/libexslt-api.xml
+ -@(if [ -x $(XSLTPROC) ] ; then \
+ $(XSLTPROC) -o $(WIN32_DIR)/libexslt.def.src \
+ --nonet $(WIN32_DIR)/defgen.xsl $(srcdir)/EXSLT/libexslt-api.xml ; fi )
+
+clean-local:
+ rm -f *~ *.1 *.bak *.hierarchy *.signals *-unused.txt
+
+distclean-local:
+ if test ! -r Makefile.am ; then \
+ rm -f *.html *.templ *.xsa ; \
+ rm -rf EXSLT html ; \
+ fi
+
+rebuild: api eapi all
+
+wildcards = \
+ *.1 \
+ *.gif \
+ *.html \
+ *.png \
+ *.xsl \
+ EXSLT/*.html \
+ EXSLT/html/*.html \
+ EXSLT/html/*.png \
+ html/*.html \
+ html/*.png \
+ images/callouts/*.png \
+ tutorial*/libxslt*
+
+# This target verifies that EXTRA_DIST contains all the files matched by
+# the above list of wildcards. Note that this will only work properly when
+# srcdir = builddir.
+#
+check-extra-dist:
+ @for a in $(wildcards) ; do \
+ if test ! -f "$$a" ; then \
+ echo "not found: $$a" ; \
+ continue ; \
+ fi ; \
+ present= ; \
+ for b in $(EXTRA_DIST) ; do \
+ test "$$a" = "$$b" && present=1 && break ; \
+ done ; \
+ test -n "$$present" || echo "not in EXTRA_DIST: $$a" ; \
+ done
+
+install-data-local:
+ $(MKDIR_P) $(DESTDIR)$(HTML_DIR)
+ -$(INSTALL) -m 0644 $(srcdir)/*.html $(DESTDIR)$(HTML_DIR)
+ -$(INSTALL) -m 0644 $(srcdir)/*.gif $(DESTDIR)$(HTML_DIR)
+ $(MKDIR_P) $(DESTDIR)$(HTML_DIR)/html
+ -$(INSTALL) -m 0644 $(srcdir)/html/*.html $(DESTDIR)$(HTML_DIR)/html
+ -$(INSTALL) -m 0644 $(srcdir)/html/*.png $(DESTDIR)$(HTML_DIR)/html
+ -$(INSTALL) -m 0644 $(srcdir)/html/index.sgml $(DESTDIR)$(HTML_DIR)/html
+ $(MKDIR_P) $(DESTDIR)$(HTML_DIR)/EXSLT
+ -$(INSTALL) -m 0644 $(srcdir)/EXSLT/*.html $(DESTDIR)$(HTML_DIR)/EXSLT
+ $(MKDIR_P) $(DESTDIR)$(HTML_DIR)/tutorial
+ -$(INSTALL) -m 0644 $(srcdir)/tutorial/* $(DESTDIR)$(HTML_DIR)/tutorial
+ $(MKDIR_P) $(DESTDIR)$(HTML_DIR)/tutorial2
+ -$(INSTALL) -m 0644 $(srcdir)/tutorial2/* $(DESTDIR)$(HTML_DIR)/tutorial2
+
+uninstall-local:
+ rm -rf $(DESTDIR)$(HTML_DIR)
+
+.PHONY : api eapi web wiki rebuild check-extra-dist
diff --git a/libxslt/doc/api.xsl b/libxslt/doc/api.xsl
new file mode 100644
index 0000000..2e61ba0
--- /dev/null
+++ b/libxslt/doc/api.xsl
@@ -0,0 +1,201 @@
+<?xml version="1.0"?>
+<!-- this stylesheet builds the API*.html , it works based on libxml2-refs.xml
+ -->
+<xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:exsl="http://exslt.org/common"
+ extension-element-prefixes="exsl"
+ exclude-result-prefixes="exsl">
+
+ <!-- Import the rest of the site stylesheets -->
+ <xsl:import href="site.xsl"/>
+
+ <!-- Generate XHTML-1.0 transitional -->
+ <xsl:output method="xml" encoding="ISO-8859-1" indent="yes"
+ doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
+
+ <xsl:param name="libname" select="'libxslt'"/>
+ <xsl:param name="dirname" select="''"/>
+ <xsl:param name="logo_base" select="''"/>
+
+ <!-- href_base controls URI's in site.xsl as well as this stylesheet -->
+ <xsl:variable name="href_base" select="''"/>
+
+ <xsl:variable name="apirefs" select="document(concat($dirname, $libname, '-refs.xml'))"/>
+ <xsl:variable name="module" select="$apirefs/apirefs/@name"/>
+ <xsl:key name="refhref" match="reference" use="@name"/>
+
+ <xsl:template match="ref" mode="anchor">
+ <xsl:variable name="name" select="@name"/>
+ <xsl:for-each select="document(concat($dirname, $libname, '-refs.xml'))">
+ <a href="{key('refhref', $name)/@href}"><xsl:value-of select="$name"/></a><br/>
+ </xsl:for-each>
+ </xsl:template>
+
+ <xsl:template match="type" mode="reflist">
+ <h2>Type <xsl:value-of select="@name"/>:</h2>
+ <p>
+ <xsl:for-each select="ref">
+ <xsl:apply-templates mode="anchor" select="."/>
+ <xsl:text>
+</xsl:text>
+ </xsl:for-each>
+ </p>
+ </xsl:template>
+
+ <xsl:template match="letter" mode="reflist">
+ <h2>Letter <xsl:value-of select="@name"/>:</h2>
+ <p>
+ <xsl:for-each select="ref">
+ <xsl:apply-templates mode="anchor" select="."/>
+ <xsl:text>
+</xsl:text>
+ </xsl:for-each>
+ </p>
+ </xsl:template>
+
+ <xsl:template match="file" mode="reflist">
+ <h2><a name="{@name}">Module <xsl:value-of select="@name"/></a>:</h2>
+ <p>
+ <xsl:for-each select="ref">
+ <xsl:apply-templates mode="anchor" select="."/>
+ <xsl:text>
+</xsl:text>
+ </xsl:for-each>
+ </p>
+ </xsl:template>
+ <xsl:template match="letter" mode="wordlist">
+ <h2>Letter <xsl:value-of select="@name"/>:</h2>
+ <dl>
+ <xsl:for-each select="word">
+ <dt><xsl:value-of select="@name"/></dt>
+ <dd>
+ <xsl:for-each select="ref">
+ <xsl:apply-templates mode="anchor" select="."/>
+ <xsl:text>
+</xsl:text>
+ </xsl:for-each>
+ </dd>
+ </xsl:for-each>
+ </dl>
+ </xsl:template>
+
+ <xsl:template match="constructors">
+ <xsl:message>Generating API Constructors</xsl:message>
+ <xsl:variable name="title">List of constructors for <xsl:value-of select="$module"/></xsl:variable>
+ <xsl:variable name="doref">
+ <xsl:apply-templates mode="reflist" select="type"/>
+ </xsl:variable>
+ <xsl:call-template name="new_page">
+ <xsl:with-param name="filename" select="'APIconstructors.html'"/>
+ <xsl:with-param name="title" select="$title"/>
+ <xsl:with-param name="target" select="$doref"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="files">
+ <xsl:message>Generating API List of symbols per file</xsl:message>
+ <xsl:variable name="title">List of Symbols per Module for <xsl:value-of select="$module"/></xsl:variable>
+ <xsl:variable name="doref">
+ <xsl:apply-templates mode="reflist" select="file"/>
+ </xsl:variable>
+ <xsl:call-template name="new_page">
+ <xsl:with-param name="filename" select="'APIfiles.html'"/>
+ <xsl:with-param name="title" select="$title"/>
+ <xsl:with-param name="target" select="$doref"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="functions">
+ <xsl:message>Generating API Functions by Type</xsl:message>
+ <xsl:variable name="title">List of function manipulating types in <xsl:value-of select="$module"/></xsl:variable>
+ <xsl:variable name="doref">
+ <xsl:apply-templates mode="reflist" select="type"/>
+ </xsl:variable>
+ <xsl:call-template name="new_page">
+ <xsl:with-param name="filename" select="'APIfunctions.html'"/>
+ <xsl:with-param name="title" select="$title"/>
+ <xsl:with-param name="target" select="$doref"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="alpha">
+ <xsl:message>Generating API Alphabetic list</xsl:message>
+ <xsl:variable name="title">Alphabetic List of Symbols in <xsl:value-of select="$module"/></xsl:variable>
+ <xsl:variable name="doref">
+ <xsl:apply-templates mode="reflist" select="letter"/>
+ </xsl:variable>
+ <xsl:call-template name="new_page">
+ <xsl:with-param name="filename" select="'APIsymbols.html'"/>
+ <xsl:with-param name="title" select="$title"/>
+ <xsl:with-param name="target" select="$doref"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template name="apichunks">
+ <h2 align="center">
+ <xsl:for-each select="/apirefs/index/chunks/chunk">
+ <xsl:variable name="name" select="@name"/>
+ <xsl:variable name="start" select="@start"/>
+ <xsl:variable name="end" select="@end"/>
+ <xsl:variable name="block" select="concat($start, '-', $end)"/>
+ <a href="API{$name}.html"><xsl:value-of select="$block"/></a>
+ <xsl:text>
+</xsl:text>
+ </xsl:for-each>
+ </h2>
+ </xsl:template>
+
+ <xsl:template match="chunk">
+ <xsl:variable name="name" select="@name"/>
+ <xsl:variable name="start" select="@start"/>
+ <xsl:variable name="end" select="@end"/>
+ <xsl:variable name="block" select="concat($start, '-', $end)"/>
+ <xsl:variable name="target" select="/apirefs/index/chunk[@name = $name]"/>
+ <xsl:variable name="title">API Alphabetic Index <xsl:value-of select="$block"/> for <xsl:value-of select="$module"/></xsl:variable>
+ <xsl:variable name="dochunk">
+ <xsl:call-template name="apichunks"/>
+ <xsl:apply-templates mode="wordlist" select="$target/letter"/>
+ <xsl:call-template name="apichunks"/>
+ </xsl:variable>
+ <xsl:call-template name="new_page">
+ <xsl:with-param name="filename" select="concat('API', $name, '.html')"/>
+ <xsl:with-param name="title" select="$title"/>
+ <xsl:with-param name="target" select="$dochunk"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="index">
+ <xsl:message>Generating API Index</xsl:message>
+ <xsl:apply-templates select="chunks/chunk"/>
+ </xsl:template>
+
+ <xsl:template match="apirefs">
+ <xsl:message>Generating API Cross References</xsl:message>
+ <xsl:apply-templates select="constructors"/>
+ <xsl:apply-templates select="functions"/>
+ <xsl:apply-templates select="alpha"/>
+ <xsl:apply-templates select="files"/>
+ <xsl:apply-templates select="index"/>
+ </xsl:template>
+
+ <xsl:template match="/">
+ <xsl:message>Executing api.xsl</xsl:message>
+ <xsl:apply-templates select="$apirefs/apirefs"/>
+ <xsl:if test="$dirname=''"> <!-- template for search only for base dir -->
+ <xsl:message>Generating search template</xsl:message>
+ <xsl:variable name="dummydata">
+ <xsl:element name="insert_php">
+ <xsl:value-of select="'Insert point for php code'"/>
+ </xsl:element>
+ </xsl:variable>
+ <xsl:call-template name="new_page">
+ <xsl:with-param name="filename" select="'search.templ'"/>
+ <xsl:with-param name="title" select="'Search engine'"/>
+ <xsl:with-param name="target" select="$dummydata"/>
+ </xsl:call-template>
+ </xsl:if>
+ </xsl:template>
+
+</xsl:stylesheet>
diff --git a/libxslt/doc/apibuild.py b/libxslt/doc/apibuild.py
new file mode 100755
index 0000000..df1d66b
--- /dev/null
+++ b/libxslt/doc/apibuild.py
@@ -0,0 +1,1914 @@
+#!/usr/bin/python -u
+#
+# This is the API builder, it parses the C sources and build the
+# API formal description in XML.
+#
+# See Copyright for the status of this software.
+#
+# daniel@veillard.com
+#
+import os, sys
+import string
+import glob
+
+debug=0
+
+#
+# C parser analysis code
+#
+ignored_files = {
+ "trio": "too many non standard macros",
+ "trio.c": "too many non standard macros",
+ "trionan.c": "too many non standard macros",
+ "triostr.c": "too many non standard macros",
+ "acconfig.h": "generated portability layer",
+ "config.h": "generated portability layer",
+ "libxml.h": "internal only",
+ "testOOM.c": "out of memory tester",
+ "testOOMlib.h": "out of memory tester",
+ "testOOMlib.c": "out of memory tester",
+}
+
+ignored_words = {
+ "WINAPI": (0, "Windows keyword"),
+ "LIBXML_DLL_IMPORT": (0, "Special macro to flag external keywords"),
+ "XMLPUBVAR": (0, "Special macro for extern vars for win32"),
+ "XSLTPUBVAR": (0, "Special macro for extern vars for win32"),
+ "EXSLTPUBVAR": (0, "Special macro for extern vars for win32"),
+ "XMLPUBFUN": (0, "Special macro for extern funcs for win32"),
+ "XSLTPUBFUN": (0, "Special macro for extern funcs for win32"),
+ "EXSLTPUBFUN": (0, "Special macro for extern funcs for win32"),
+ "XMLCALL": (0, "Special macro for win32 calls"),
+ "XSLTCALL": (0, "Special macro for win32 calls"),
+ "EXSLTCALL": (0, "Special macro for win32 calls"),
+ "__declspec": (3, "Windows keyword"),
+ "ATTRIBUTE_UNUSED": (0, "macro keyword"),
+ "LIBEXSLT_PUBLIC": (0, "macro keyword"),
+ "X_IN_Y": (5, "macro function builder"),
+ "XSLT_ITEM_COMMON_FIELDS": (0, "Special macro"),
+ "CALLBACK": (0, "macro keyword"),
+}
+
+def escape(raw):
+ raw = string.replace(raw, '&', '&amp;')
+ raw = string.replace(raw, '<', '&lt;')
+ raw = string.replace(raw, '>', '&gt;')
+ raw = string.replace(raw, "'", '&apos;')
+ raw = string.replace(raw, '"', '&quot;')
+ return raw
+
+def uniq(items):
+ d = {}
+ for item in items:
+ d[item]=1
+ return d.keys()
+
+class identifier:
+ def __init__(self, name, module=None, type=None, lineno = 0,
+ info=None, extra=None):
+ self.name = name
+ self.module = module
+ self.type = type
+ self.info = info
+ self.extra = extra
+ self.lineno = lineno
+ self.static = 0
+
+ def __repr__(self):
+ r = "%s %s:" % (self.type, self.name)
+ if self.static:
+ r = r + " static"
+ if self.module != None:
+ r = r + " from %s" % (self.module)
+ if self.info != None:
+ r = r + " " + `self.info`
+ if self.extra != None:
+ r = r + " " + `self.extra`
+ return r
+
+
+ def set_module(self, module):
+ self.module = module
+ def set_type(self, type):
+ self.type = type
+ def set_info(self, info):
+ self.info = info
+ def set_extra(self, extra):
+ self.extra = extra
+ def set_lineno(self, lineno):
+ self.lineno = lineno
+ def set_static(self, static):
+ self.static = static
+
+ def get_name(self):
+ return self.name
+ def get_module(self):
+ return self.module
+ def get_type(self):
+ return self.type
+ def get_info(self):
+ return self.info
+ def get_lineno(self):
+ return self.lineno
+ def get_extra(self):
+ return self.extra
+ def get_static(self):
+ return self.static
+
+ def update(self, module, type = None, info = None, extra=None):
+ if module != None and self.module == None:
+ self.set_module(module)
+ if type != None and self.type == None:
+ self.set_type(type)
+ if info != None:
+ self.set_info(info)
+ if extra != None:
+ self.set_extra(extra)
+
+
+class index:
+ def __init__(self, name = "noname"):
+ self.name = name
+ self.identifiers = {}
+ self.functions = {}
+ self.variables = {}
+ self.includes = {}
+ self.structs = {}
+ self.enums = {}
+ self.typedefs = {}
+ self.macros = {}
+ self.references = {}
+ self.info = {}
+
+ def add_ref(self, name, module, static, type, lineno, info=None, extra=None):
+ if name[0:2] == '__':
+ return None
+ d = None
+ try:
+ d = self.identifiers[name]
+ d.update(module, type, lineno, info, extra)
+ except:
+ d = identifier(name, module, type, lineno, info, extra)
+ self.identifiers[name] = d
+
+ if d != None and static == 1:
+ d.set_static(1)
+
+ if d != None and name != None and type != None:
+ self.references[name] = d
+
+ def add(self, name, module, static, type, lineno, info=None, extra=None):
+ if name[0:2] == '__':
+ return None
+ d = None
+ try:
+ d = self.identifiers[name]
+ d.update(module, type, lineno, info, extra)
+ except:
+ d = identifier(name, module, type, lineno, info, extra)
+ self.identifiers[name] = d
+
+ if d != None and static == 1:
+ d.set_static(1)
+
+ if d != None and name != None and type != None:
+ if type == "function":
+ self.functions[name] = d
+ elif type == "functype":
+ self.functions[name] = d
+ elif type == "variable":
+ self.variables[name] = d
+ elif type == "include":
+ self.includes[name] = d
+ elif type == "struct":
+ self.structs[name] = d
+ elif type == "enum":
+ self.enums[name] = d
+ elif type == "typedef":
+ self.typedefs[name] = d
+ elif type == "macro":
+ self.macros[name] = d
+ else:
+ print "Unable to register type ", type
+ return d
+
+ def merge(self, idx):
+ for id in idx.functions.keys():
+ #
+ # macro might be used to override functions or variables
+ # definitions
+ #
+ if self.macros.has_key(id):
+ del self.macros[id]
+ if self.functions.has_key(id):
+ print "function %s from %s redeclared in %s" % (
+ id, self.functions[id].module, idx.functions[id].module)
+ else:
+ self.functions[id] = idx.functions[id]
+ self.identifiers[id] = idx.functions[id]
+ for id in idx.variables.keys():
+ #
+ # macro might be used to override functions or variables
+ # definitions
+ #
+ if self.macros.has_key(id):
+ del self.macros[id]
+ if self.variables.has_key(id):
+ print "variable %s from %s redeclared in %s" % (
+ id, self.variables[id].module, idx.variables[id].module)
+ else:
+ self.variables[id] = idx.variables[id]
+ self.identifiers[id] = idx.variables[id]
+ for id in idx.structs.keys():
+ if self.structs.has_key(id):
+ print "struct %s from %s redeclared in %s" % (
+ id, self.structs[id].module, idx.structs[id].module)
+ else:
+ self.structs[id] = idx.structs[id]
+ self.identifiers[id] = idx.structs[id]
+ for id in idx.typedefs.keys():
+ if self.typedefs.has_key(id):
+ print "typedef %s from %s redeclared in %s" % (
+ id, self.typedefs[id].module, idx.typedefs[id].module)
+ else:
+ self.typedefs[id] = idx.typedefs[id]
+ self.identifiers[id] = idx.typedefs[id]
+ for id in idx.macros.keys():
+ #
+ # macro might be used to override functions or variables
+ # definitions
+ #
+ if self.variables.has_key(id):
+ continue
+ if self.functions.has_key(id):
+ continue
+ if self.enums.has_key(id):
+ continue
+ if self.macros.has_key(id):
+ print "macro %s from %s redeclared in %s" % (
+ id, self.macros[id].module, idx.macros[id].module)
+ else:
+ self.macros[id] = idx.macros[id]
+ self.identifiers[id] = idx.macros[id]
+ for id in idx.enums.keys():
+ if self.enums.has_key(id):
+ print "enum %s from %s redeclared in %s" % (
+ id, self.enums[id].module, idx.enums[id].module)
+ else:
+ self.enums[id] = idx.enums[id]
+ self.identifiers[id] = idx.enums[id]
+
+ def merge_public(self, idx):
+ for id in idx.functions.keys():
+ if self.functions.has_key(id):
+ up = idx.functions[id]
+ self.functions[id].update(None, up.type, up.info, up.extra)
+ # else:
+ # print "Function %s from %s is not declared in headers" % (
+ # id, idx.functions[id].module)
+ # TODO: do the same for variables.
+
+ def analyze_dict(self, type, dict):
+ count = 0
+ public = 0
+ for name in dict.keys():
+ id = dict[name]
+ count = count + 1
+ if id.static == 0:
+ public = public + 1
+ if count != public:
+ print " %d %s , %d public" % (count, type, public)
+ elif count != 0:
+ print " %d public %s" % (count, type)
+
+
+ def analyze(self):
+ self.analyze_dict("functions", self.functions)
+ self.analyze_dict("variables", self.variables)
+ self.analyze_dict("structs", self.structs)
+ self.analyze_dict("typedefs", self.typedefs)
+ self.analyze_dict("macros", self.macros)
+
+class CLexer:
+ """A lexer for the C language, tokenize the input by reading and
+ analyzing it line by line"""
+ def __init__(self, input):
+ self.input = input
+ self.tokens = []
+ self.line = ""
+ self.lineno = 0
+
+ def getline(self):
+ line = ''
+ while line == '':
+ line = self.input.readline()
+ if not line:
+ return None
+ self.lineno = self.lineno + 1
+ line = string.lstrip(line)
+ line = string.rstrip(line)
+ if line == '':
+ continue
+ while line[-1] == '\\':
+ line = line[:-1]
+ n = self.input.readline()
+ self.lineno = self.lineno + 1
+ n = string.lstrip(n)
+ n = string.rstrip(n)
+ if not n:
+ break
+ else:
+ line = line + n
+ return line
+
+ def getlineno(self):
+ return self.lineno
+
+ def push(self, token):
+ self.tokens.insert(0, token);
+
+ def debug(self):
+ print "Last token: ", self.last
+ print "Token queue: ", self.tokens
+ print "Line %d end: " % (self.lineno), self.line
+
+ def token(self):
+ while self.tokens == []:
+ if self.line == "":
+ line = self.getline()
+ else:
+ line = self.line
+ self.line = ""
+ if line == None:
+ return None
+
+ if line[0] == '#':
+ self.tokens = map((lambda x: ('preproc', x)),
+ string.split(line))
+ break;
+ l = len(line)
+ if line[0] == '"' or line[0] == "'":
+ end = line[0]
+ line = line[1:]
+ found = 0
+ tok = ""
+ while found == 0:
+ i = 0
+ l = len(line)
+ while i < l:
+ if line[i] == end:
+ self.line = line[i+1:]
+ line = line[:i]
+ l = i
+ found = 1
+ break
+ if line[i] == '\\':
+ i = i + 1
+ i = i + 1
+ tok = tok + line
+ if found == 0:
+ line = self.getline()
+ if line == None:
+ return None
+ self.last = ('string', tok)
+ return self.last
+
+ if l >= 2 and line[0] == '/' and line[1] == '*':
+ line = line[2:]
+ found = 0
+ tok = ""
+ while found == 0:
+ i = 0
+ l = len(line)
+ while i < l:
+ if line[i] == '*' and i+1 < l and line[i+1] == '/':
+ self.line = line[i+2:]
+ line = line[:i-1]
+ l = i
+ found = 1
+ break
+ i = i + 1
+ if tok != "":
+ tok = tok + "\n"
+ tok = tok + line
+ if found == 0:
+ line = self.getline()
+ if line == None:
+ return None
+ self.last = ('comment', tok)
+ return self.last
+ if l >= 2 and line[0] == '/' and line[1] == '/':
+ line = line[2:]
+ self.last = ('comment', line)
+ return self.last
+ i = 0
+ while i < l:
+ if line[i] == '/' and i+1 < l and line[i+1] == '/':
+ self.line = line[i:]
+ line = line[:i]
+ break
+ if line[i] == '/' and i+1 < l and line[i+1] == '*':
+ self.line = line[i:]
+ line = line[:i]
+ break
+ if line[i] == '"' or line[i] == "'":
+ self.line = line[i:]
+ line = line[:i]
+ break
+ i = i + 1
+ l = len(line)
+ i = 0
+ while i < l:
+ if line[i] == ' ' or line[i] == '\t':
+ i = i + 1
+ continue
+ o = ord(line[i])
+ if (o >= 97 and o <= 122) or (o >= 65 and o <= 90) or \
+ (o >= 48 and o <= 57):
+ s = i
+ while i < l:
+ o = ord(line[i])
+ if (o >= 97 and o <= 122) or (o >= 65 and o <= 90) or \
+ (o >= 48 and o <= 57) or string.find(
+ " \t(){}:;,+-*/%&!|[]=><", line[i]) == -1:
+ i = i + 1
+ else:
+ break
+ self.tokens.append(('name', line[s:i]))
+ continue
+ if string.find("(){}:;,[]", line[i]) != -1:
+# if line[i] == '(' or line[i] == ')' or line[i] == '{' or \
+# line[i] == '}' or line[i] == ':' or line[i] == ';' or \
+# line[i] == ',' or line[i] == '[' or line[i] == ']':
+ self.tokens.append(('sep', line[i]))
+ i = i + 1
+ continue
+ if string.find("+-*><=/%&!|.", line[i]) != -1:
+# if line[i] == '+' or line[i] == '-' or line[i] == '*' or \
+# line[i] == '>' or line[i] == '<' or line[i] == '=' or \
+# line[i] == '/' or line[i] == '%' or line[i] == '&' or \
+# line[i] == '!' or line[i] == '|' or line[i] == '.':
+ if line[i] == '.' and i + 2 < l and \
+ line[i+1] == '.' and line[i+2] == '.':
+ self.tokens.append(('name', '...'))
+ i = i + 3
+ continue
+
+ j = i + 1
+ if j < l and (
+ string.find("+-*><=/%&!|", line[j]) != -1):
+# line[j] == '+' or line[j] == '-' or line[j] == '*' or \
+# line[j] == '>' or line[j] == '<' or line[j] == '=' or \
+# line[j] == '/' or line[j] == '%' or line[j] == '&' or \
+# line[j] == '!' or line[j] == '|'):
+ self.tokens.append(('op', line[i:j+1]))
+ i = j + 1
+ else:
+ self.tokens.append(('op', line[i]))
+ i = i + 1
+ continue
+ s = i
+ while i < l:
+ o = ord(line[i])
+ if (o >= 97 and o <= 122) or (o >= 65 and o <= 90) or \
+ (o >= 48 and o <= 57) or (
+ string.find(" \t(){}:;,+-*/%&!|[]=><", line[i]) == -1):
+# line[i] != ' ' and line[i] != '\t' and
+# line[i] != '(' and line[i] != ')' and
+# line[i] != '{' and line[i] != '}' and
+# line[i] != ':' and line[i] != ';' and
+# line[i] != ',' and line[i] != '+' and
+# line[i] != '-' and line[i] != '*' and
+# line[i] != '/' and line[i] != '%' and
+# line[i] != '&' and line[i] != '!' and
+# line[i] != '|' and line[i] != '[' and
+# line[i] != ']' and line[i] != '=' and
+# line[i] != '*' and line[i] != '>' and
+# line[i] != '<'):
+ i = i + 1
+ else:
+ break
+ self.tokens.append(('name', line[s:i]))
+
+ tok = self.tokens[0]
+ self.tokens = self.tokens[1:]
+ self.last = tok
+ return tok
+
+class CParser:
+ """The C module parser"""
+ def __init__(self, filename, idx = None):
+ self.filename = filename
+ if len(filename) > 2 and filename[-2:] == '.h':
+ self.is_header = 1
+ else:
+ self.is_header = 0
+ self.input = open(filename)
+ self.lexer = CLexer(self.input)
+ if idx == None:
+ self.index = index()
+ else:
+ self.index = idx
+ self.top_comment = ""
+ self.last_comment = ""
+ self.comment = None
+ self.collect_ref = 0
+ self.no_error = 0
+
+ def collect_references(self):
+ self.collect_ref = 1
+
+ def stop_error(self):
+ self.no_error = 1
+
+ def start_error(self):
+ self.no_error = 0
+
+ def lineno(self):
+ return self.lexer.getlineno()
+
+ def index_add(self, name, module, static, type, info=None, extra = None):
+ self.index.add(name, module, static, type, self.lineno(),
+ info, extra)
+
+ def index_add_ref(self, name, module, static, type, info=None,
+ extra = None):
+ self.index.add_ref(name, module, static, type, self.lineno(),
+ info, extra)
+
+ def warning(self, msg):
+ if self.no_error:
+ return
+ print msg
+
+ def error(self, msg, token=-1):
+ if self.no_error:
+ return
+
+ print "Parse Error: " + msg
+ if token != -1:
+ print "Got token ", token
+ self.lexer.debug()
+ sys.exit(1)
+
+ def debug(self, msg, token=-1):
+ print "Debug: " + msg
+ if token != -1:
+ print "Got token ", token
+ self.lexer.debug()
+
+ def parseTopComment(self, comment):
+ res = {}
+ lines = string.split(comment, "\n")
+ item = None
+ for line in lines:
+ while line != "" and (line[0] == ' ' or line[0] == '\t'):
+ line = line[1:]
+ while line != "" and line[0] == '*':
+ line = line[1:]
+ while line != "" and (line[0] == ' ' or line[0] == '\t'):
+ line = line[1:]
+ try:
+ (it, line) = string.split(line, ":", 1)
+ item = it
+ while line != "" and (line[0] == ' ' or line[0] == '\t'):
+ line = line[1:]
+ if res.has_key(item):
+ res[item] = res[item] + " " + line
+ else:
+ res[item] = line
+ except:
+ if item != None:
+ if res.has_key(item):
+ res[item] = res[item] + " " + line
+ else:
+ res[item] = line
+ self.index.info = res
+
+ def parseComment(self, token):
+ if self.top_comment == "":
+ self.top_comment = token[1]
+ if self.comment == None or token[1][0] == '*':
+ self.comment = token[1];
+ else:
+ self.comment = self.comment + token[1]
+ token = self.lexer.token()
+
+ if string.find(self.comment, "DOC_DISABLE") != -1:
+ self.stop_error()
+
+ if string.find(self.comment, "DOC_ENABLE") != -1:
+ self.start_error()
+
+ return token
+
+ #
+ # Parse a comment block associate to a macro
+ #
+ def parseMacroComment(self, name, quiet = 0):
+ if name[0:2] == '__':
+ quiet = 1
+
+ args = []
+ desc = ""
+
+ if self.comment == None:
+ if not quiet:
+ self.warning("Missing comment for macro %s" % (name))
+ return((args, desc))
+ if self.comment[0] != '*':
+ if not quiet:
+ self.warning("Missing * in macro comment for %s" % (name))
+ return((args, desc))
+ lines = string.split(self.comment, '\n')
+ if lines[0] == '*':
+ del lines[0]
+ if lines[0] != "* %s:" % (name):
+ if not quiet:
+ self.warning("Misformatted macro comment for %s" % (name))
+ self.warning(" Expecting '* %s:' got '%s'" % (name, lines[0]))
+ return((args, desc))
+ del lines[0]
+ while lines[0] == '*':
+ del lines[0]
+ while len(lines) > 0 and lines[0][0:3] == '* @':
+ l = lines[0][3:]
+ try:
+ (arg, desc) = string.split(l, ':', 1)
+ desc=string.strip(desc)
+ arg=string.strip(arg)
+ except:
+ if not quiet:
+ self.warning("Misformatted macro comment for %s" % (name))
+ self.warning(" problem with '%s'" % (lines[0]))
+ del lines[0]
+ continue
+ del lines[0]
+ l = string.strip(lines[0])
+ while len(l) > 2 and l[0:3] != '* @':
+ while l[0] == '*':
+ l = l[1:]
+ desc = desc + ' ' + string.strip(l)
+ del lines[0]
+ if len(lines) == 0:
+ break
+ l = lines[0]
+ args.append((arg, desc))
+ while len(lines) > 0 and lines[0] == '*':
+ del lines[0]
+ desc = ""
+ while len(lines) > 0:
+ l = lines[0]
+ while len(l) > 0 and l[0] == '*':
+ l = l[1:]
+ l = string.strip(l)
+ desc = desc + " " + l
+ del lines[0]
+
+ desc = string.strip(desc)
+
+ if quiet == 0:
+ if desc == "":
+ self.warning("Macro comment for %s lack description of the macro" % (name))
+
+ return((args, desc))
+
+ #
+ # Parse a comment block and merge the informations found in the
+ # parameters descriptions, finally returns a block as complete
+ # as possible
+ #
+ def mergeFunctionComment(self, name, description, quiet = 0):
+ if name == 'main':
+ quiet = 1
+ if name[0:2] == '__':
+ quiet = 1
+
+ (ret, args) = description
+ desc = ""
+ retdesc = ""
+
+ if self.comment == None:
+ if not quiet:
+ self.warning("Missing comment for function %s" % (name))
+ return(((ret[0], retdesc), args, desc))
+ if self.comment[0] != '*':
+ if not quiet:
+ self.warning("Missing * in function comment for %s" % (name))
+ return(((ret[0], retdesc), args, desc))
+ lines = string.split(self.comment, '\n')
+ if lines[0] == '*':
+ del lines[0]
+ if lines[0] != "* %s:" % (name):
+ if not quiet:
+ self.warning("Misformatted function comment for %s" % (name))
+ self.warning(" Expecting '* %s:' got '%s'" % (name, lines[0]))
+ return(((ret[0], retdesc), args, desc))
+ del lines[0]
+ while len(lines) > 0 and lines[0] == '*':
+ del lines[0]
+ nbargs = len(args)
+ while len(lines) > 0 and lines[0][0:3] == '* @':
+ l = lines[0][3:]
+ try:
+ (arg, desc) = string.split(l, ':', 1)
+ desc=string.strip(desc)
+ arg=string.strip(arg)
+ except:
+ if not quiet:
+ self.warning("Misformatted function comment for %s" % (name))
+ self.warning(" problem with '%s'" % (lines[0]))
+ del lines[0]
+ continue
+ del lines[0]
+ l = string.strip(lines[0])
+ while len(l) > 2 and l[0:3] != '* @':
+ while l[0] == '*':
+ l = l[1:]
+ desc = desc + ' ' + string.strip(l)
+ del lines[0]
+ if len(lines) == 0:
+ break
+ l = lines[0]
+ i = 0
+ while i < nbargs:
+ if args[i][1] == arg:
+ args[i] = (args[i][0], arg, desc)
+ break;
+ i = i + 1
+ if i >= nbargs:
+ if not quiet:
+ self.warning("Unable to find arg %s from function comment for %s" % (
+ arg, name))
+ while len(lines) > 0 and lines[0] == '*':
+ del lines[0]
+ desc = ""
+ while len(lines) > 0:
+ l = lines[0]
+ while len(l) > 0 and l[0] == '*':
+ l = l[1:]
+ l = string.strip(l)
+ if len(l) >= 6 and l[0:6] == "return" or l[0:6] == "Return":
+ try:
+ l = string.split(l, ' ', 1)[1]
+ except:
+ l = ""
+ retdesc = string.strip(l)
+ del lines[0]
+ while len(lines) > 0:
+ l = lines[0]
+ while len(l) > 0 and l[0] == '*':
+ l = l[1:]
+ l = string.strip(l)
+ retdesc = retdesc + " " + l
+ del lines[0]
+ else:
+ desc = desc + " " + l
+ del lines[0]
+
+ retdesc = string.strip(retdesc)
+ desc = string.strip(desc)
+
+ if quiet == 0:
+ #
+ # report missing comments
+ #
+ i = 0
+ while i < nbargs:
+ if args[i][2] == None and args[i][0] != "void" and args[i][1] != None:
+ self.warning("Function comment for %s lack description of arg %s" % (name, args[i][1]))
+ i = i + 1
+ if retdesc == "" and ret[0] != "void":
+ self.warning("Function comment for %s lack description of return value" % (name))
+ if desc == "":
+ self.warning("Function comment for %s lack description of the function" % (name))
+
+
+ return(((ret[0], retdesc), args, desc))
+
+ def parsePreproc(self, token):
+ name = token[1]
+ if name == "#include":
+ token = self.lexer.token()
+ if token == None:
+ return None
+ if token[0] == 'preproc':
+ self.index_add(token[1], self.filename, not self.is_header,
+ "include")
+ return self.lexer.token()
+ return token
+ if name == "#define":
+ token = self.lexer.token()
+ if token == None:
+ return None
+ if token[0] == 'preproc':
+ # TODO macros with arguments
+ name = token[1]
+ lst = []
+ token = self.lexer.token()
+ while token != None and token[0] == 'preproc' and \
+ token[1][0] != '#':
+ lst.append(token[1])
+ token = self.lexer.token()
+ try:
+ name = string.split(name, '(') [0]
+ except:
+ pass
+ info = self.parseMacroComment(name, not self.is_header)
+ self.index_add(name, self.filename, not self.is_header,
+ "macro", info)
+ return token
+ token = self.lexer.token()
+ while token != None and token[0] == 'preproc' and \
+ token[1][0] != '#':
+ token = self.lexer.token()
+ return token
+
+ #
+ # token acquisition on top of the lexer, it handle internally
+ # preprocessor and comments since they are logically not part of
+ # the program structure.
+ #
+ def token(self):
+ global ignored_words
+
+ token = self.lexer.token()
+ while token != None:
+ if token[0] == 'comment':
+ token = self.parseComment(token)
+ continue
+ elif token[0] == 'preproc':
+ token = self.parsePreproc(token)
+ continue
+ elif token[0] == "name" and ignored_words.has_key(token[1]):
+ (n, info) = ignored_words[token[1]]
+ i = 0
+ while i < n:
+ token = self.lexer.token()
+ i = i + 1
+ token = self.lexer.token()
+ continue
+ else:
+ if debug:
+ print "=> ", token
+ return token
+ return None
+
+ #
+ # Parse a typedef, it records the type and its name.
+ #
+ def parseTypedef(self, token):
+ if token == None:
+ return None
+ token = self.parseType(token)
+ if token == None:
+ self.error("parsing typedef")
+ return None
+ base_type = self.type
+ type = base_type
+ #self.debug("end typedef type", token)
+ while token != None:
+ if token[0] == "name":
+ name = token[1]
+ signature = self.signature
+ if signature != None:
+ type = string.split(type, '(')[0]
+ d = self.mergeFunctionComment(name,
+ ((type, None), signature), 1)
+ self.index_add(name, self.filename, not self.is_header,
+ "functype", d)
+ else:
+ if base_type == "struct":
+ self.index_add(name, self.filename, not self.is_header,
+ "struct", type)
+ base_type = "struct " + name
+ else:
+ self.index_add(name, self.filename, not self.is_header,
+ "typedef", type)
+ token = self.token()
+ else:
+ self.error("parsing typedef: expecting a name")
+ return token
+ #self.debug("end typedef", token)
+ if token != None and token[0] == 'sep' and token[1] == ',':
+ type = base_type
+ token = self.token()
+ while token != None and token[0] == "op":
+ type = type + token[1]
+ token = self.token()
+ elif token != None and token[0] == 'sep' and token[1] == ';':
+ break;
+ elif token != None and token[0] == 'name':
+ type = base_type
+ continue;
+ else:
+ self.error("parsing typedef: expecting ';'", token)
+ return token
+ token = self.token()
+ return token
+
+ #
+ # Parse a C code block, used for functions it parse till
+ # the balancing } included
+ #
+ def parseBlock(self, token):
+ while token != None:
+ if token[0] == "sep" and token[1] == "{":
+ token = self.token()
+ token = self.parseBlock(token)
+ elif token[0] == "sep" and token[1] == "}":
+ self.comment = None
+ token = self.token()
+ return token
+ else:
+ if self.collect_ref == 1:
+ oldtok = token
+ token = self.token()
+ if oldtok[0] == "name" and oldtok[1][0:3] == "xml":
+ if token[0] == "sep" and token[1] == "(":
+ self.index_add_ref(oldtok[1], self.filename,
+ 0, "function")
+ token = self.token()
+ elif token[0] == "name":
+ token = self.token()
+ if token[0] == "sep" and (token[1] == ";" or
+ token[1] == "," or token[1] == "="):
+ self.index_add_ref(oldtok[1], self.filename,
+ 0, "type")
+ elif oldtok[0] == "name" and oldtok[1][0:4] == "XML_":
+ self.index_add_ref(oldtok[1], self.filename,
+ 0, "typedef")
+ elif oldtok[0] == "name" and oldtok[1][0:7] == "LIBXML_":
+ self.index_add_ref(oldtok[1], self.filename,
+ 0, "typedef")
+
+ else:
+ token = self.token()
+ return token
+
+ #
+ # Parse a C struct definition till the balancing }
+ #
+ def parseStruct(self, token):
+ fields = []
+ #self.debug("start parseStruct", token)
+ while token != None:
+ if token[0] == "sep" and token[1] == "{":
+ token = self.token()
+ token = self.parseTypeBlock(token)
+ elif token[0] == "sep" and token[1] == "}":
+ self.struct_fields = fields
+ #self.debug("end parseStruct", token)
+ #print fields
+ token = self.token()
+ return token
+ else:
+ base_type = self.type
+ #self.debug("before parseType", token)
+ token = self.parseType(token)
+ #self.debug("after parseType", token)
+ if token != None and token[0] == "name":
+ fname = token[1]
+ token = self.token()
+ if token[0] == "sep" and token[1] == ";":
+ self.comment = None
+ token = self.token()
+ fields.append((self.type, fname, self.comment))
+ self.comment = None
+ else:
+ self.error("parseStruct: expecting ;", token)
+ elif token != None and token[0] == "sep" and token[1] == "{":
+ token = self.token()
+ token = self.parseTypeBlock(token)
+ if token != None and token[0] == "name":
+ token = self.token()
+ if token != None and token[0] == "sep" and token[1] == ";":
+ token = self.token()
+ else:
+ self.error("parseStruct: expecting ;", token)
+ else:
+ self.error("parseStruct: name", token)
+ token = self.token()
+ self.type = base_type;
+ self.struct_fields = fields
+ #self.debug("end parseStruct", token)
+ #print fields
+ return token
+
+ #
+ # Parse a C enum block, parse till the balancing }
+ #
+ def parseEnumBlock(self, token):
+ self.enums = []
+ name = None
+ self.comment = None
+ comment = ""
+ value = "0"
+ while token != None:
+ if token[0] == "sep" and token[1] == "{":
+ token = self.token()
+ token = self.parseTypeBlock(token)
+ elif token[0] == "sep" and token[1] == "}":
+ if name != None:
+ if self.comment != None:
+ comment = self.comment
+ self.comment = None
+ self.enums.append((name, value, comment))
+ token = self.token()
+ return token
+ elif token[0] == "name":
+ if name != None:
+ if self.comment != None:
+ comment = string.strip(self.comment)
+ self.comment = None
+ self.enums.append((name, value, comment))
+ name = token[1]
+ comment = ""
+ token = self.token()
+ if token[0] == "op" and token[1][0] == "=":
+ value = ""
+ if len(token[1]) > 1:
+ value = token[1][1:]
+ token = self.token()
+ while token[0] != "sep" or (token[1] != ',' and
+ token[1] != '}'):
+ value = value + token[1]
+ token = self.token()
+ else:
+ try:
+ value = "%d" % (int(value) + 1)
+ except:
+ self.warning("Failed to compute value of enum %s" % (name))
+ value=""
+ if token[0] == "sep" and token[1] == ",":
+ token = self.token()
+ else:
+ token = self.token()
+ return token
+
+ #
+ # Parse a C definition block, used for structs it parse till
+ # the balancing }
+ #
+ def parseTypeBlock(self, token):
+ while token != None:
+ if token[0] == "sep" and token[1] == "{":
+ token = self.token()
+ token = self.parseTypeBlock(token)
+ elif token[0] == "sep" and token[1] == "}":
+ token = self.token()
+ return token
+ else:
+ token = self.token()
+ return token
+
+ #
+ # Parse a type: the fact that the type name can either occur after
+ # the definition or within the definition makes it a little harder
+ # if inside, the name token is pushed back before returning
+ #
+ def parseType(self, token):
+ self.type = ""
+ self.struct_fields = []
+ self.signature = None
+ if token == None:
+ return token
+
+ while token[0] == "name" and (
+ token[1] == "const" or token[1] == "unsigned" or
+ token[1] == "signed"):
+ if self.type == "":
+ self.type = token[1]
+ else:
+ self.type = self.type + " " + token[1]
+ token = self.token()
+
+ if token[0] == "name" and (token[1] == "long" or token[1] == "short"):
+ if self.type == "":
+ self.type = token[1]
+ else:
+ self.type = self.type + " " + token[1]
+ if token[0] == "name" and token[1] == "int":
+ if self.type == "":
+ self.type = tmp[1]
+ else:
+ self.type = self.type + " " + tmp[1]
+
+ elif token[0] == "name" and token[1] == "struct":
+ if self.type == "":
+ self.type = token[1]
+ else:
+ self.type = self.type + " " + token[1]
+ token = self.token()
+ nametok = None
+ if token[0] == "name":
+ nametok = token
+ token = self.token()
+ if token != None and token[0] == "sep" and token[1] == "{":
+ token = self.token()
+ token = self.parseStruct(token)
+ elif token != None and token[0] == "op" and token[1] == "*":
+ self.type = self.type + " " + nametok[1] + " *"
+ token = self.token()
+ while token != None and token[0] == "op" and token[1] == "*":
+ self.type = self.type + " *"
+ token = self.token()
+ if token[0] == "name":
+ nametok = token
+ token = self.token()
+ else:
+ self.error("struct : expecting name", token)
+ return token
+ elif token != None and token[0] == "name" and nametok != None:
+ self.type = self.type + " " + nametok[1]
+ return token
+
+ if nametok != None:
+ self.lexer.push(token)
+ token = nametok
+ return token
+
+ elif token[0] == "name" and token[1] == "enum":
+ if self.type == "":
+ self.type = token[1]
+ else:
+ self.type = self.type + " " + token[1]
+ self.enums = []
+ token = self.token()
+ if token != None and token[0] == "sep" and token[1] == "{":
+ token = self.token()
+ token = self.parseEnumBlock(token)
+ else:
+ self.error("parsing enum: expecting '{'", token)
+ enum_type = None
+ if token != None and token[0] != "name":
+ self.lexer.push(token)
+ token = ("name", "enum")
+ else:
+ enum_type = token[1]
+ for enum in self.enums:
+ self.index_add(enum[0], self.filename,
+ not self.is_header, "enum",
+ (enum[1], enum[2], enum_type))
+ return token
+
+ elif token[0] == "name":
+ if self.type == "":
+ self.type = token[1]
+ else:
+ self.type = self.type + " " + token[1]
+ else:
+ self.error("parsing type %s: expecting a name" % (self.type),
+ token)
+ return token
+ token = self.token()
+ while token != None and (token[0] == "op" or
+ token[0] == "name" and token[1] == "const"):
+ self.type = self.type + " " + token[1]
+ token = self.token()
+
+ #
+ # if there is a parenthesis here, this means a function type
+ #
+ if token != None and token[0] == "sep" and token[1] == '(':
+ self.type = self.type + token[1]
+ token = self.token()
+ while token != None and token[0] == "op" and token[1] == '*':
+ self.type = self.type + token[1]
+ token = self.token()
+ if token == None or token[0] != "name" :
+ self.error("parsing function type, name expected", token);
+ return token
+ self.type = self.type + token[1]
+ nametok = token
+ token = self.token()
+ if token != None and token[0] == "sep" and token[1] == ')':
+ self.type = self.type + token[1]
+ token = self.token()
+ if token != None and token[0] == "sep" and token[1] == '(':
+ token = self.token()
+ type = self.type;
+ token = self.parseSignature(token);
+ self.type = type;
+ else:
+ self.error("parsing function type, '(' expected", token);
+ return token
+ else:
+ self.error("parsing function type, ')' expected", token);
+ return token
+ self.lexer.push(token)
+ token = nametok
+ return token
+
+ #
+ # do some lookahead for arrays
+ #
+ if token != None and token[0] == "name":
+ nametok = token
+ token = self.token()
+ if token != None and token[0] == "sep" and token[1] == '[':
+ self.type = self.type + nametok[1]
+ while token != None and token[0] == "sep" and token[1] == '[':
+ self.type = self.type + token[1]
+ token = self.token()
+ while token != None and token[0] != 'sep' and \
+ token[1] != ']' and token[1] != ';':
+ self.type = self.type + token[1]
+ token = self.token()
+ if token != None and token[0] == 'sep' and token[1] == ']':
+ self.type = self.type + token[1]
+ token = self.token()
+ else:
+ self.error("parsing array type, ']' expected", token);
+ return token
+ elif token != None and token[0] == "sep" and token[1] == ':':
+ # remove :12 in case it's a limited int size
+ token = self.token()
+ token = self.token()
+ self.lexer.push(token)
+ token = nametok
+
+ return token
+
+ #
+ # Parse a signature: '(' has been parsed and we scan the type definition
+ # up to the ')' included
+ def parseSignature(self, token):
+ signature = []
+ if token != None and token[0] == "sep" and token[1] == ')':
+ self.signature = []
+ token = self.token()
+ return token
+ while token != None:
+ token = self.parseType(token)
+ if token != None and token[0] == "name":
+ signature.append((self.type, token[1], None))
+ token = self.token()
+ elif token != None and token[0] == "sep" and token[1] == ',':
+ token = self.token()
+ continue
+ elif token != None and token[0] == "sep" and token[1] == ')':
+ # only the type was provided
+ if self.type == "...":
+ signature.append((self.type, "...", None))
+ else:
+ signature.append((self.type, None, None))
+ if token != None and token[0] == "sep":
+ if token[1] == ',':
+ token = self.token()
+ continue
+ elif token[1] == ')':
+ token = self.token()
+ break
+ self.signature = signature
+ return token
+
+ #
+ # Parse a global definition, be it a type, variable or function
+ # the extern "C" blocks are a bit nasty and require it to recurse.
+ #
+ def parseGlobal(self, token):
+ static = 0
+ if token[1] == 'extern':
+ token = self.token()
+ if token == None:
+ return token
+ if token[0] == 'string':
+ if token[1] == 'C':
+ token = self.token()
+ if token == None:
+ return token
+ if token[0] == 'sep' and token[1] == "{":
+ token = self.token()
+# print 'Entering extern "C line ', self.lineno()
+ while token != None and (token[0] != 'sep' or
+ token[1] != "}"):
+ if token[0] == 'name':
+ token = self.parseGlobal(token)
+ else:
+ self.error(
+ "token %s %s unexpected at the top level" % (
+ token[0], token[1]))
+ token = self.parseGlobal(token)
+# print 'Exiting extern "C" line', self.lineno()
+ token = self.token()
+ return token
+ else:
+ return token
+ elif token[1] == 'static':
+ static = 1
+ token = self.token()
+ if token == None or token[0] != 'name':
+ return token
+
+ if token[1] == 'typedef':
+ token = self.token()
+ return self.parseTypedef(token)
+ else:
+ token = self.parseType(token)
+ type_orig = self.type
+ if token == None or token[0] != "name":
+ return token
+ type = type_orig
+ self.name = token[1]
+ token = self.token()
+ while token != None and (token[0] == "sep" or token[0] == "op"):
+ if token[0] == "sep":
+ if token[1] == "[":
+ type = type + token[1]
+ token = self.token()
+ while token != None and (token[0] != "sep" or \
+ token[1] != ";"):
+ type = type + token[1]
+ token = self.token()
+
+ if token != None and token[0] == "op" and token[1] == "=":
+ #
+ # Skip the initialization of the variable
+ #
+ token = self.token()
+ if token[0] == 'sep' and token[1] == '{':
+ token = self.token()
+ token = self.parseBlock(token)
+ else:
+ self.comment = None
+ while token != None and (token[0] != "sep" or \
+ (token[1] != ';' and token[1] != ',')):
+ token = self.token()
+ self.comment = None
+ if token == None or token[0] != "sep" or (token[1] != ';' and
+ token[1] != ','):
+ self.error("missing ';' or ',' after value")
+
+ if token != None and token[0] == "sep":
+ if token[1] == ";":
+ self.comment = None
+ token = self.token()
+ if type == "struct":
+ self.index_add(self.name, self.filename,
+ not self.is_header, "struct", self.struct_fields)
+ else:
+ self.index_add(self.name, self.filename,
+ not self.is_header, "variable", type)
+ break
+ elif token[1] == "(":
+ token = self.token()
+ token = self.parseSignature(token)
+ if token == None:
+ return None
+ if token[0] == "sep" and token[1] == ";":
+ d = self.mergeFunctionComment(self.name,
+ ((type, None), self.signature), 1)
+ self.index_add(self.name, self.filename, static,
+ "function", d)
+ token = self.token()
+ elif token[0] == "sep" and token[1] == "{":
+ d = self.mergeFunctionComment(self.name,
+ ((type, None), self.signature), static)
+ self.index_add(self.name, self.filename, static,
+ "function", d)
+ token = self.token()
+ token = self.parseBlock(token);
+ elif token[1] == ',':
+ self.comment = None
+ self.index_add(self.name, self.filename, static,
+ "variable", type)
+ type = type_orig
+ token = self.token()
+ while token != None and token[0] == "sep":
+ type = type + token[1]
+ token = self.token()
+ if token != None and token[0] == "name":
+ self.name = token[1]
+ token = self.token()
+ else:
+ break
+
+ return token
+
+ def parse(self):
+ self.warning("Parsing %s" % (self.filename))
+ token = self.token()
+ while token != None:
+ if token[0] == 'name':
+ token = self.parseGlobal(token)
+ else:
+ self.error("token %s %s unexpected at the top level" % (
+ token[0], token[1]))
+ token = self.parseGlobal(token)
+ return
+ self.parseTopComment(self.top_comment)
+ return self.index
+
+
+class docBuilder:
+ """A documentation builder"""
+ def __init__(self, name, directories=['.'], excludes=[]):
+ self.name = name
+ self.directories = directories
+ self.excludes = excludes + ignored_files.keys()
+ self.modules = {}
+ self.headers = {}
+ self.idx = index()
+ self.xref = {}
+ self.index = {}
+ if name == 'libxml2':
+ self.basename = 'libxml'
+ else:
+ self.basename = name
+
+ def indexString(self, id, str):
+ if str == None:
+ return
+ str = string.replace(str, "'", ' ')
+ str = string.replace(str, '"', ' ')
+ str = string.replace(str, "/", ' ')
+ str = string.replace(str, '*', ' ')
+ str = string.replace(str, "[", ' ')
+ str = string.replace(str, "]", ' ')
+ str = string.replace(str, "(", ' ')
+ str = string.replace(str, ")", ' ')
+ str = string.replace(str, "<", ' ')
+ str = string.replace(str, '>', ' ')
+ str = string.replace(str, "&", ' ')
+ str = string.replace(str, '#', ' ')
+ str = string.replace(str, ",", ' ')
+ str = string.replace(str, '.', ' ')
+ str = string.replace(str, ';', ' ')
+ tokens = string.split(str)
+ for token in tokens:
+ try:
+ c = token[0]
+ if string.find(string.letters, c) < 0:
+ pass
+ elif len(token) < 3:
+ pass
+ else:
+ lower = string.lower(token)
+ # TODO: generalize this a bit
+ if lower == 'and' or lower == 'the':
+ pass
+ elif self.xref.has_key(token):
+ self.xref[token].append(id)
+ else:
+ self.xref[token] = [id]
+ except:
+ pass
+
+ def analyze(self):
+ print "Project %s : %d headers, %d modules" % (self.name, len(self.headers.keys()), len(self.modules.keys()))
+ self.idx.analyze()
+
+ def scanHeaders(self):
+ for header in self.headers.keys():
+ parser = CParser(header)
+ idx = parser.parse()
+ self.headers[header] = idx;
+ self.idx.merge(idx)
+
+ def scanModules(self):
+ for module in self.modules.keys():
+ parser = CParser(module)
+ idx = parser.parse()
+ # idx.analyze()
+ self.modules[module] = idx
+ self.idx.merge_public(idx)
+
+ def scan(self):
+ for directory in self.directories:
+ files = glob.glob(directory + "/*.c")
+ for file in files:
+ skip = 0
+ for excl in self.excludes:
+ if string.find(file, excl) != -1:
+ skip = 1;
+ break
+ if skip == 0:
+ self.modules[file] = None;
+ files = glob.glob(directory + "/*.h")
+ for file in files:
+ skip = 0
+ for excl in self.excludes:
+ if string.find(file, excl) != -1:
+ skip = 1;
+ break
+ if skip == 0:
+ self.headers[file] = None;
+ self.scanHeaders()
+ self.scanModules()
+
+ def modulename_file(self, file):
+ module = os.path.basename(file)
+ if module[-2:] == '.h':
+ module = module[:-2]
+ return module
+
+ def serialize_enum(self, output, name):
+ id = self.idx.enums[name]
+ output.write(" <enum name='%s' file='%s'" % (name,
+ self.modulename_file(id.module)))
+ if id.info != None:
+ info = id.info
+ if info[0] != None and info[0] != '':
+ try:
+ val = eval(info[0])
+ except:
+ val = info[0]
+ output.write(" value='%s'" % (val));
+ if info[2] != None and info[2] != '':
+ output.write(" type='%s'" % info[2]);
+ if info[1] != None and info[1] != '':
+ output.write(" info='%s'" % escape(info[1]));
+ output.write("/>\n")
+
+ def serialize_macro(self, output, name):
+ id = self.idx.macros[name]
+ output.write(" <macro name='%s' file='%s'>\n" % (name,
+ self.modulename_file(id.module)))
+ if id.info != None:
+ try:
+ (args, desc) = id.info
+ if desc != None and desc != "":
+ output.write(" <info>%s</info>\n" % (escape(desc)))
+ self.indexString(name, desc)
+ for arg in args:
+ (name, desc) = arg
+ if desc != None and desc != "":
+ output.write(" <arg name='%s' info='%s'/>\n" % (
+ name, escape(desc)))
+ self.indexString(name, desc)
+ else:
+ output.write(" <arg name='%s'/>\n" % (name))
+ except:
+ pass
+ output.write(" </macro>\n")
+
+ def serialize_typedef(self, output, name):
+ id = self.idx.typedefs[name]
+ if id.info[0:7] == 'struct ':
+ output.write(" <struct name='%s' file='%s' type='%s'" % (
+ name, self.modulename_file(id.module), id.info))
+ name = id.info[7:]
+ if self.idx.structs.has_key(name) and ( \
+ type(self.idx.structs[name].info) == type(()) or
+ type(self.idx.structs[name].info) == type([])):
+ output.write(">\n");
+ try:
+ for field in self.idx.structs[name].info:
+ desc = field[2]
+ self.indexString(name, desc)
+ if desc == None:
+ desc = ''
+ else:
+ desc = escape(desc)
+ output.write(" <field name='%s' type='%s' info='%s'/>\n" % (field[1] , field[0], desc))
+ except:
+ print "Failed to serialize struct %s" % (name)
+ output.write(" </struct>\n")
+ else:
+ output.write("/>\n");
+ else :
+ output.write(" <typedef name='%s' file='%s' type='%s'/>\n" % (
+ name, self.modulename_file(id.module), id.info))
+
+ def serialize_variable(self, output, name):
+ id = self.idx.variables[name]
+ if id.info != None:
+ output.write(" <variable name='%s' file='%s' type='%s'/>\n" % (
+ name, self.modulename_file(id.module), id.info))
+ else:
+ output.write(" <variable name='%s' file='%s'/>\n" % (
+ name, self.modulename_file(id.module)))
+
+ def serialize_function(self, output, name):
+ id = self.idx.functions[name]
+ output.write(" <%s name='%s' file='%s'>\n" % (id.type, name,
+ self.modulename_file(id.module)))
+ try:
+ (ret, params, desc) = id.info
+ output.write(" <info>%s</info>\n" % (escape(desc)))
+ self.indexString(name, desc)
+ if ret[0] != None:
+ if ret[0] == "void":
+ output.write(" <return type='void'/>\n")
+ else:
+ output.write(" <return type='%s' info='%s'/>\n" % (
+ ret[0], escape(ret[1])))
+ self.indexString(name, ret[1])
+ for param in params:
+ if param[0] == 'void':
+ continue
+ if param[2] == None:
+ output.write(" <arg name='%s' type='%s' info=''/>\n" % (param[1], param[0]))
+ else:
+ output.write(" <arg name='%s' type='%s' info='%s'/>\n" % (param[1], param[0], escape(param[2])))
+ self.indexString(name, param[2])
+ except:
+ print "Failed to save function %s info: " % name, `id.info`
+ output.write(" </%s>\n" % (id.type))
+
+ def serialize_exports(self, output, file):
+ module = self.modulename_file(file)
+ output.write(" <file name='%s'>\n" % (module))
+ dict = self.headers[file]
+ if dict.info != None:
+ for data in ('Summary', 'Description', 'Author'):
+ try:
+ output.write(" <%s>%s</%s>\n" % (
+ string.lower(data),
+ escape(dict.info[data]),
+ string.lower(data)))
+ except:
+ print "Header %s lacks a %s description" % (module, data)
+ if dict.info.has_key('Description'):
+ desc = dict.info['Description']
+ if string.find(desc, "DEPRECATED") != -1:
+ output.write(" <deprecated/>\n")
+
+ ids = dict.macros.keys()
+ ids.sort()
+ for id in uniq(ids):
+ # Macros are sometime used to masquerade other types.
+ if dict.functions.has_key(id):
+ continue
+ if dict.variables.has_key(id):
+ continue
+ if dict.typedefs.has_key(id):
+ continue
+ if dict.structs.has_key(id):
+ continue
+ if dict.enums.has_key(id):
+ continue
+ output.write(" <exports symbol='%s' type='macro'/>\n" % (id))
+ ids = dict.enums.keys()
+ ids.sort()
+ for id in uniq(ids):
+ output.write(" <exports symbol='%s' type='enum'/>\n" % (id))
+ ids = dict.typedefs.keys()
+ ids.sort()
+ for id in uniq(ids):
+ output.write(" <exports symbol='%s' type='typedef'/>\n" % (id))
+ ids = dict.structs.keys()
+ ids.sort()
+ for id in uniq(ids):
+ output.write(" <exports symbol='%s' type='struct'/>\n" % (id))
+ ids = dict.variables.keys()
+ ids.sort()
+ for id in uniq(ids):
+ output.write(" <exports symbol='%s' type='variable'/>\n" % (id))
+ ids = dict.functions.keys()
+ ids.sort()
+ for id in uniq(ids):
+ output.write(" <exports symbol='%s' type='function'/>\n" % (id))
+ output.write(" </file>\n")
+
+ def serialize_xrefs_files(self, output):
+ headers = self.headers.keys()
+ headers.sort()
+ for file in headers:
+ module = self.modulename_file(file)
+ output.write(" <file name='%s'>\n" % (module))
+ dict = self.headers[file]
+ ids = uniq(dict.functions.keys() + dict.variables.keys() + \
+ dict.macros.keys() + dict.typedefs.keys() + \
+ dict.structs.keys() + dict.enums.keys())
+ ids.sort()
+ for id in ids:
+ output.write(" <ref name='%s'/>\n" % (id))
+ output.write(" </file>\n")
+ pass
+
+ def serialize_xrefs_functions(self, output):
+ funcs = {}
+ for name in self.idx.functions.keys():
+ id = self.idx.functions[name]
+ try:
+ (ret, params, desc) = id.info
+ for param in params:
+ if param[0] == 'void':
+ continue
+ if funcs.has_key(param[0]):
+ funcs[param[0]].append(name)
+ else:
+ funcs[param[0]] = [name]
+ except:
+ pass
+ typ = funcs.keys()
+ typ.sort()
+ for type in typ:
+ if type == '' or type == 'void' or type == "int" or \
+ type == "char *" or type == "const char *" :
+ continue
+ output.write(" <type name='%s'>\n" % (type))
+ ids = funcs[type]
+ ids.sort()
+ pid = '' # not sure why we have dups, but get rid of them!
+ for id in ids:
+ if id != pid:
+ output.write(" <ref name='%s'/>\n" % (id))
+ pid = id
+ output.write(" </type>\n")
+
+ def serialize_xrefs_constructors(self, output):
+ funcs = {}
+ for name in self.idx.functions.keys():
+ id = self.idx.functions[name]
+ try:
+ (ret, params, desc) = id.info
+ if ret[0] == "void":
+ continue
+ if funcs.has_key(ret[0]):
+ funcs[ret[0]].append(name)
+ else:
+ funcs[ret[0]] = [name]
+ except:
+ pass
+ typ = funcs.keys()
+ typ.sort()
+ for type in typ:
+ if type == '' or type == 'void' or type == "int" or \
+ type == "char *" or type == "const char *" :
+ continue
+ output.write(" <type name='%s'>\n" % (type))
+ ids = funcs[type]
+ ids.sort()
+ for id in ids:
+ output.write(" <ref name='%s'/>\n" % (id))
+ output.write(" </type>\n")
+
+ def serialize_xrefs_alpha(self, output):
+ letter = None
+ ids = self.idx.identifiers.keys()
+ ids.sort()
+ for id in ids:
+ if id[0] != letter:
+ if letter != None:
+ output.write(" </letter>\n")
+ letter = id[0]
+ output.write(" <letter name='%s'>\n" % (letter))
+ output.write(" <ref name='%s'/>\n" % (id))
+ if letter != None:
+ output.write(" </letter>\n")
+
+ def serialize_xrefs_references(self, output):
+ typ = self.idx.identifiers.keys()
+ typ.sort()
+ for id in typ:
+ idf = self.idx.identifiers[id]
+ module = idf.module
+ output.write(" <reference name='%s' href='%s'/>\n" % (id,
+ 'html/' + self.basename + '-' +
+ self.modulename_file(module) + '.html#' +
+ id))
+
+ def serialize_xrefs_index(self, output):
+ index = self.xref
+ typ = index.keys()
+ typ.sort()
+ letter = None
+ count = 0
+ chunk = 0
+ chunks = []
+ for id in typ:
+ if len(index[id]) > 30:
+ continue
+ if id[0] != letter:
+ if letter == None or count > 200:
+ if letter != None:
+ output.write(" </letter>\n")
+ output.write(" </chunk>\n")
+ count = 0
+ chunks.append(["chunk%s" % (chunk -1), first_letter, letter])
+ output.write(" <chunk name='chunk%s'>\n" % (chunk))
+ first_letter = id[0]
+ chunk = chunk + 1
+ elif letter != None:
+ output.write(" </letter>\n")
+ letter = id[0]
+ output.write(" <letter name='%s'>\n" % (letter))
+ output.write(" <word name='%s'>\n" % (id))
+ tokens = index[id];
+ tokens.sort()
+ tok = None
+ for token in tokens:
+ if tok == token:
+ continue
+ tok = token
+ output.write(" <ref name='%s'/>\n" % (token))
+ count = count + 1
+ output.write(" </word>\n")
+ if letter != None:
+ output.write(" </letter>\n")
+ output.write(" </chunk>\n")
+ if count != 0:
+ chunks.append(["chunk%s" % (chunk -1), first_letter, letter])
+ output.write(" <chunks>\n")
+ for ch in chunks:
+ output.write(" <chunk name='%s' start='%s' end='%s'/>\n" % (
+ ch[0], ch[1], ch[2]))
+ output.write(" </chunks>\n")
+
+ def serialize_xrefs(self, output):
+ output.write(" <references>\n")
+ self.serialize_xrefs_references(output)
+ output.write(" </references>\n")
+ output.write(" <alpha>\n")
+ self.serialize_xrefs_alpha(output)
+ output.write(" </alpha>\n")
+ output.write(" <constructors>\n")
+ self.serialize_xrefs_constructors(output)
+ output.write(" </constructors>\n")
+ output.write(" <functions>\n")
+ self.serialize_xrefs_functions(output)
+ output.write(" </functions>\n")
+ output.write(" <files>\n")
+ self.serialize_xrefs_files(output)
+ output.write(" </files>\n")
+ output.write(" <index>\n")
+ self.serialize_xrefs_index(output)
+ output.write(" </index>\n")
+
+ def serialize(self, outdir):
+ filename = outdir + "%s-api.xml" % self.name
+ print "Saving XML description %s" % (filename)
+ output = open(filename, "w")
+ output.write('<?xml version="1.0" encoding="ISO-8859-1"?>\n')
+ output.write("<api name='%s'>\n" % self.name)
+ output.write(" <files>\n")
+ headers = self.headers.keys()
+ headers.sort()
+ for file in headers:
+ self.serialize_exports(output, file)
+ output.write(" </files>\n")
+ output.write(" <symbols>\n")
+ macros = self.idx.macros.keys()
+ macros.sort()
+ for macro in macros:
+ self.serialize_macro(output, macro)
+ enums = self.idx.enums.keys()
+ enums.sort()
+ for enum in enums:
+ self.serialize_enum(output, enum)
+ typedefs = self.idx.typedefs.keys()
+ typedefs.sort()
+ for typedef in typedefs:
+ self.serialize_typedef(output, typedef)
+ variables = self.idx.variables.keys()
+ variables.sort()
+ for variable in variables:
+ self.serialize_variable(output, variable)
+ functions = self.idx.functions.keys()
+ functions.sort()
+ for function in functions:
+ self.serialize_function(output, function)
+ output.write(" </symbols>\n")
+ output.write("</api>\n")
+ output.close()
+
+ filename = outdir + "%s-refs.xml" % self.name
+ print "Saving XML Cross References %s" % (filename)
+ output = open(filename, "w")
+ output.write('<?xml version="1.0" encoding="ISO-8859-1"?>\n')
+ output.write("<apirefs name='%s'>\n" % self.name)
+ self.serialize_xrefs(output)
+ output.write("</apirefs>\n")
+ output.close()
+
+
+def rebuild():
+ builder = None
+ if glob.glob("parser.c") != [] :
+ print "Rebuilding API description for libxml2"
+ builder = docBuilder("libxml2", [".", "."],
+ ["xmlwin32version.h", "tst.c"])
+ elif glob.glob("../parser.c") != [] :
+ print "Rebuilding API description for libxml2"
+ builder = docBuilder("libxml2", ["..", "../include/libxml"],
+ ["xmlwin32version.h", "tst.c"])
+ elif glob.glob("../libxslt/transform.c") != [] :
+ print "Rebuilding API description for libxslt"
+ builder = docBuilder("libxslt", ["../libxslt"],
+ ["win32config.h", "libxslt.h", "tst.c"])
+ else:
+ print "rebuild() failed, unable to guess the module"
+ return None
+ builder.scan()
+ builder.analyze()
+ builder.serialize("./")
+ if glob.glob("../libexslt/exslt.c") != [] :
+ extra = docBuilder("libexslt", ["../libexslt"], ["libexslt.h"])
+ extra.scan()
+ extra.analyze()
+ extra.serialize("EXSLT/")
+ return builder
+
+#
+# for debugging the parser
+#
+def parse(filename):
+ parser = CParser(filename)
+ idx = parser.parse()
+ return idx
+
+if __name__ == "__main__":
+ rebuild()
diff --git a/libxslt/doc/bugs.html b/libxslt/doc/bugs.html
new file mode 100644
index 0000000..8beb6ef
--- /dev/null
+++ b/libxslt/doc/bugs.html
@@ -0,0 +1,96 @@
+<?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>Reporting bugs and getting help</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>Reporting bugs and getting help</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p>If you need help with the XSLT language itself, here are a number of
+useful resources:</p><ul>
+ <li>I strongly suggest to subscribe to <a href="http://www.mulberrytech.com/xsl/xsl-list">XSL-list</a>, check <a href="http://www.biglist.com/lists/xsl-list/archives/">the XSL-list
+ archives</a></li>
+ <li>The <a href="http://www.dpawson.co.uk/xsl/xslfaq.html">XSL FAQ</a>.</li>
+ <li>The <a href="http://www.nwalsh.com/docs/tutorials/xsl/xsl/slides.html">tutorial</a>
+ written by Paul Grosso and Norman Walsh is a very good on-line
+ introdution to the language.</li>
+ <li>The <a href="http://www.zvon.org/xxl/XSLTutorial/Books/Book1/index.html">only
+ Zvon XSLT tutorial</a> details a lot of constructs with examples.</li>
+ <li><a href="http://www.jenitennison.com/xslt/index.html">Jeni Tennison's
+ XSLT</a> pages provide links to a lot of answers</li>
+ <li>the <a href="http://incrementaldevelopment.com/xsltrick/">Gallery of
+ XSLT Tricks</a> provides non-standard use case of XSLT</li>
+ <li>And I suggest to buy Michael Kay "XSLT Programmer's Reference" book
+ published by <a href="http://www.wrox.com/">Wrox</a> if you plan to work
+ seriously with XSLT in the future.</li>
+</ul><p>Well, bugs or missing features are always possible, and I will make a
+point of fixing them in a timely fashion. The best way to report a bug is to
+use the <a href="http://bugzilla.gnome.org/enter_bug.cgi?product=libxslt">GNOME bug
+tracking database</a> (make sure to use the "libxslt" module name). Before
+filing a bug, check the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">list of existing
+libxslt bugs</a> to make sure it hasn't already been filed. I look at reports
+there regularly and it's good to have a reminder when a bug is still open. Be
+sure to specify that the bug is for the package libxslt.</p><p>For small problems you can try to get help on IRC, the #xml channel on
+irc.gnome.org (port 6667) usually have a few person subscribed which may help
+(but there is no guarantee and if a real issue is raised it should go on the
+mailing-list for archival).</p><p>There is also a mailing-list <a href="mailto:xslt@gnome.org">xslt@gnome.org</a> for libxslt, with an <a href="http://mail.gnome.org/archives/xslt/">on-line archive</a>. To subscribe
+to this list, please visit the <a href="http://mail.gnome.org/mailman/listinfo/xslt">associated Web</a> page
+and follow the instructions.</p><p>Alternatively, you can just send the bug to the <a href="mailto:xslt@gnome.org">xslt@gnome.org</a> list, if it's really libxslt
+related I will approve it.. Please do not send me mail directly especially
+for portability problem, it makes things really harder to track and in some
+cases I'm not the best person to answer a given question, ask the list
+instead. <strong>Do not send code, I won't debug it</strong> (but patches are
+really appreciated!).</p><p>Please note that with the current amount of virus and SPAM, sending mail
+to the list without being subscribed won't work. There is *far too many
+bounces* (in the order of a thousand a day !) I cannot approve them manually
+anymore. If your mail to the list bounced waiting for administrator approval,
+it is LOST ! Repost it and fix the problem triggering the error. Also please
+note that <span style="color: #FF0000; background-color: #FFFFFF">emails with
+a legal warning asking to not copy or redistribute freely the information
+they contain</span> are <strong>NOT</strong> acceptable for the mailing-list,
+such mail will as much as possible be discarded automatically, and are less
+likely to be answered if they made it to the list, <strong>DO NOT</strong>
+post to the list from an email address where such legal requirements are
+automatically added, get private paying support if you can't share
+information.</p><p>Check the following too <span style="color: #E50000">before
+posting</span>:</p><ul>
+ <li><a href="search.php">use the search engine</a> to get information
+ related to your problem.</li>
+ <li>make sure you are <a href="ftp://xmlsoft.org/libxslt/">using a recent
+ version</a>, and that the problem still shows up in those</li>
+ <li>check the <a href="http://mail.gnome.org/archives/xslt/">list
+ archives</a> to see if the problem was reported already, in this case
+ there is probably a fix available, similarly check the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">registered
+ open bugs</a></li>
+ <li>make sure you can reproduce the bug with xsltproc, a very useful thing
+ to do is run the transformation with -v argument and redirect the
+ standard error to a file, then search in this file for the transformation
+ logs just preceding the possible problem</li>
+ <li>Please send the command showing the error as well as the input and
+ stylesheet (as an attachment)</li>
+</ul><p>Then send the bug with associated information to reproduce it to the <a href="mailto:xslt@gnome.org">xslt@gnome.org</a> list; if it's really libxslt
+related I will approve it. Please do not send mail to me directly, it makes
+things really hard to track and in some cases I am not the best person to
+answer a given question, ask on the list.</p><p>To <span style="color: #E50000">be really clear about support</span>:</p><ul>
+ <li>Support or help <span style="color: #E50000">request MUST be sent to
+ the list or on bugzilla</span> in case of problems, so that the Question
+ and Answers can be shared publicly. Failing to do so carries the implicit
+ message "I want free support but I don't want to share the benefits with
+ others" and is not welcome. I will automatically Carbon-Copy the
+ xslt@gnome.org mailing list for any technical reply made about libxml2 or
+ libxslt.</li>
+ <li>There is <span style="color: #E50000">no guarantee for support</span>,
+ if your question remains unanswered after a week, repost it, making sure
+ you gave all the detail needed and the information requested.</li>
+ <li>Failing to provide information as requested or double checking first
+ for prior feedback also carries the implicit message "the time of the
+ library maintainers is less valuable than my time" and might not be
+ welcome.</li>
+</ul><p>Of course, bugs reports with a suggested patch for fixing them will
+probably be processed faster.</p><p>If you're looking for help, a quick look at <a href="http://mail.gnome.org/archives/xslt/">the list archive</a> may actually
+provide the answer, I usually send source samples when answering libxslt
+usage questions. The <a href="html/libxslt-lib.html#LIBXSLT-LIB">auto-generated documentation</a> is
+not as polished as I would like (I need to learn more about Docbook), but
+it's a good starting point.</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/checkapisym.xsl b/libxslt/doc/checkapisym.xsl
new file mode 100644
index 0000000..8591393
--- /dev/null
+++ b/libxslt/doc/checkapisym.xsl
@@ -0,0 +1,48 @@
+<?xml version="1.0"?>
+<!-- This stylesheet is used to check that symbols exported
+ from libxml2-api.xml are also present in the symbol file
+ symbols.xml which is used to generate libxml2.syms setting
+ up the allowed access point to the shared libraries -->
+
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+ <xsl:output method="text" encoding="UTF-8"/>
+
+ <xsl:variable name="syms" select="document('symbols.xml')"/>
+
+ <xsl:template match="/">
+ <xsl:message terminate="no">
+ <xsl:text>Looking for functions in symbols.xml</xsl:text>
+ </xsl:message>
+ <xsl:apply-templates select="/api/symbols/function"/>
+ <xsl:message terminate="no">
+ <xsl:text>Found </xsl:text>
+ <xsl:value-of select="count(/api/symbols/function)"/>
+ <xsl:text> functions</xsl:text>
+ </xsl:message>
+ <xsl:message terminate="no">
+ <xsl:text>Looking for variables in symbols.xml</xsl:text>
+ </xsl:message>
+ <xsl:apply-templates select="/api/symbols/variable"/>
+ <xsl:message terminate="no">
+ <xsl:text>Found </xsl:text>
+ <xsl:value-of select="count(/api/symbols/variable)"/>
+ <xsl:text> variables</xsl:text>
+ </xsl:message>
+ </xsl:template>
+
+ <xsl:template match="function|variable">
+ <xsl:variable name="name" select="@name"/>
+ <xsl:variable name="symbol"
+ select="$syms/symbols/release/symbol[. = $name]"/>
+ <xsl:if test="string($symbol) != $name">
+ <xsl:message terminate="yes">
+ <xsl:text>Failed to find export in symbols.xml: </xsl:text>
+ <xsl:value-of select="$name"/>
+ </xsl:message>
+ </xsl:if>
+ </xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/libxslt/doc/contexts.fig b/libxslt/doc/contexts.fig
new file mode 100644
index 0000000..4fa4b8d
--- /dev/null
+++ b/libxslt/doc/contexts.fig
@@ -0,0 +1,175 @@
+#FIG 3.2
+Landscape
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3000 750 4650 750 4650 3150 3000 3150 3000 750
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3000 1050 4650 1050
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3000 1350 4650 1350
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3000 1650 4650 1650
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 4275 900 6450 900
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 3225 1200 1425 1425
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 3150 1500 1575 3675
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3000 2850 4650 2850
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 3150 3000 2325 5250
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2391 5400 3216 3150
+2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
+ 4950 5700 3675 5700 3675 4425 4950 4425 4950 5700
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2400 5700 3675 5250
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3825 7200 5475 7200
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3825 7500 5475 7500
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3825 7800 5475 7800
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 900 5250 2550 5250 2550 7650 900 7650 900 5250
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 900 5550 2550 5550
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 900 5850 2550 5850
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 900 6150 2550 6150
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 900 6450 2550 6450
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 900 6750 2550 6750
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 900 7050 2550 7050
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3825 6900 5475 6900 5475 8250 3825 8250 3825 6900
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 3975 7050 2550 6225
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 5175 7350 6450 5850
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 5175 7650 7275 6675
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 4
+ 225 675 225 2175 1800 2175 1800 300
+2 1 0 3 0 7 50 0 -1 8.000 0 0 -1 1 0 2
+ 0 0 3.00 180.00 360.00
+ 1500 1125 1500 300
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 225 1875 1800 1875
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 225 1575 1800 1575
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 225 1275 1800 1275
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 4
+ 225 2925 225 4425 1800 4425 1800 2550
+2 1 0 3 0 7 50 0 -1 8.000 0 0 -1 1 0 2
+ 0 0 3.00 180.00 360.00
+ 1500 3375 1500 2550
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 225 4125 1800 4125
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 225 3825 1800 3825
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 225 3525 1800 3525
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 4
+ 6450 4875 6450 6375 8025 6375 8025 4500
+2 1 0 3 0 7 50 0 -1 8.000 0 0 -1 1 0 2
+ 0 0 3.00 180.00 360.00
+ 7725 5325 7725 4500
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 6450 6075 8025 6075
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 6450 5775 8025 5775
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 6450 5475 8025 5475
+2 2 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 5
+ 7275 6525 7575 6525 7575 6825 7275 6825 7275 6525
+2 2 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 5
+ 6900 7050 7200 7050 7200 7350 6900 7350 6900 7050
+2 2 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 5
+ 6525 7500 6825 7500 6825 7800 6525 7800 6525 7500
+2 2 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 5
+ 7200 7500 7500 7500 7500 7800 7200 7800 7200 7500
+2 2 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 5
+ 7650 7050 7950 7050 7950 7350 7650 7350 7650 7050
+2 2 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 5
+ 6975 7950 7275 7950 7275 8250 6975 8250 6975 7950
+2 2 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 5
+ 7500 7950 7800 7950 7800 8250 7500 8250 7500 7950
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 7275 6825 7200 7050
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 7575 6825 7650 7050
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 6900 7350 6825 7500
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 7200 7350 7350 7500
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 3
+ 7200 7800 7200 7800 7125 7950
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 7500 7800 7575 7950
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 6450 825 8100 825 8100 3675 6450 3675 6450 825
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 6450 1200 8100 1200
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 6450 1575 8100 1575
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 6450 1950 8100 1950
+3 0 0 1 0 7 50 0 -1 0.000 0 0 0 4
+ 225 675 750 750 1350 300 1800 300
+ 0.000 1.000 1.000 0.000
+3 0 0 1 0 7 50 0 -1 0.000 0 0 0 4
+ 225 2925 750 3000 1350 2550 1800 2550
+ 0.000 1.000 1.000 0.000
+3 0 0 1 0 7 50 0 -1 0.000 0 0 0 4
+ 6450 4875 6975 4950 7575 4500 8025 4500
+ 0.000 1.000 1.000 0.000
+4 0 0 50 0 0 18 0.0000 4 195 585 3000 525 xsltT\001
+4 0 0 50 0 0 18 0.0000 4 195 1530 3600 525 ransformCtxt\001
+4 0 0 50 0 0 18 0.0000 4 255 510 3375 975 style\001
+4 0 0 50 0 0 18 0.0000 4 255 1545 6450 525 xsltStylesheet\001
+4 0 0 50 0 0 18 0.0000 4 255 645 3375 1275 templ\001
+4 0 0 50 0 0 18 0.0000 4 135 465 3375 1575 vars\001
+4 0 0 50 0 0 18 0.0000 4 255 1125 3300 3075 xpathCtxt\001
+4 0 0 50 0 0 18 0.0000 4 195 1620 450 5025 xmlXPathCtxt\001
+4 0 0 50 0 0 18 0.0000 4 195 1125 3750 5100 Functions\001
+4 0 0 50 0 0 18 0.0000 4 195 1320 1125 7020 namespaces\001
+4 0 0 50 0 0 18 0.0000 4 195 1305 1125 6705 contextSize\001
+4 0 0 50 0 0 18 0.0000 4 195 540 1125 6390 node\001
+4 0 0 50 0 0 18 0.0000 4 195 390 1125 6075 doc\001
+4 0 0 50 0 0 18 0.0000 4 195 1065 1125 5775 funcHash\001
+4 0 0 50 0 0 18 0.0000 4 165 570 1125 5475 extra\001
+4 0 0 50 0 0 18 0.0000 4 195 2325 3075 8700 xmlXPathParserCtxt\001
+4 0 0 50 0 0 18 0.0000 4 165 840 4200 7125 context\001
+4 0 0 50 0 0 18 0.0000 4 195 585 4200 7425 value\001
+4 0 0 50 0 0 18 0.0000 4 255 3015 6075 8700 XPath compiled expression\001
+4 0 0 50 0 0 18 0.0000 4 195 615 4200 7725 comp\001
+4 0 0 50 0 0 18 0.0000 4 195 570 450 2115 stack\001
+4 0 0 50 0 0 18 0.0000 4 255 1080 450 1800 templates\001
+4 0 0 50 0 0 18 0.0000 4 195 570 450 4365 stack\001
+4 0 0 50 0 0 18 0.0000 4 195 885 450 3750 variable\001
+4 0 0 50 0 0 18 0.0000 4 135 105 1350 3750 s\001
+4 0 0 50 0 0 18 0.0000 4 255 1275 450 4050 and params\001
+4 0 0 50 0 0 18 0.0000 4 195 570 6675 6315 stack\001
+4 0 0 50 0 0 18 0.0000 4 255 780 6675 6000 objects\001
+4 0 0 50 0 0 18 0.0000 4 195 690 6675 5700 XPath\001
diff --git a/libxslt/doc/contexts.gif b/libxslt/doc/contexts.gif
new file mode 100644
index 0000000..5ca52c6
--- /dev/null
+++ b/libxslt/doc/contexts.gif
Binary files differ
diff --git a/libxslt/doc/contribs.html b/libxslt/doc/contribs.html
new file mode 100644
index 0000000..e9b057c
--- /dev/null
+++ b/libxslt/doc/contribs.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>Contributions</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>Contributions</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><ul>
+ <li>Bjorn Reese is the author of the number support and worked on the
+ XSLTMark support</li>
+ <li>William Brack was an early adopted, contributed a number of patches and
+ spent quite some time debugging non-trivial problems in early versions of
+ libxslt</li>
+ <li><a href="mailto:igor@zlatkovic.com">Igor Zlatkovic</a> is now the
+ maintainer of the Windows port, <a href="http://www.zlatkovic.com/projects/libxml/index.html">he provides
+ binaries</a></li>
+ <li>Thomas Broyer provided a lot of suggestions, and drafted most of the
+ extension API</li>
+ <li>John Fleck maintains <a href="tutorial/libxslttutorial.html">a tutorial
+ for libxslt</a></li>
+ <li><a href="http://mail.gnome.org/archives/xml/2001-March/msg00014.html">Matt
+ Sergeant</a> developed <a href="http://axkit.org/download/">XML::LibXSLT</a>, a perl wrapper for
+ libxml2/libxslt as part of the <a href="http://axkit.com/">AxKit XML
+ application server</a></li>
+ <li>there is a module for <a href="http://acs-misc.sourceforge.net/nsxml.html">libxml/libxslt support
+ in OpenNSD/AOLServer</a></li>
+ <li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a> provides
+ libxml/libxslt <a href="http://www.rexx.com/~dkuhlman">wrappers for
+ Python</a></li>
+ <li><a href="mailto:Steve.Ball@explain.com.au">Steve Ball</a>, and
+ contributors maintain <a href="http://tclxml.sourceforge.net/">tcl
+ bindings for libxml2 and libxslt</a>, as well as <a href="http://tclxml.sf.net/tkxmllint.html">tkxmllint</a> a GUI for
+ xmllint and <a href="http://tclxml.sf.net/tkxsltproc.html">tkxsltproc</a>
+ a GUI for xsltproc.</li>
+ <li>If you want to use libxslt in a Mac OS X/Cocoa or Objective-C
+ framework, Marc Liyanage provides <a href="http://www.entropy.ch/software/macosx/#testxslt">an application
+ TestXSLT for XSLT and XML editing</a> including wrapper classes for the
+ XML parser and XSLT processor.</li>
+</ul><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/docbook.html b/libxslt/doc/docbook.html
new file mode 100644
index 0000000..957b9e8
--- /dev/null
+++ b/libxslt/doc/docbook.html
@@ -0,0 +1,65 @@
+<?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>DocBook</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>DocBook</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p><img src="duck.png" align="right" alt="The duck picture" /></p><p><a href="http://www.oasis-open.org/committees/docbook/">DocBook</a> is an
+XML/SGML vocabulary particularly well suited to books and papers about
+computer hardware and software.</p><p>xsltproc and libxslt are not specifically dependant on DocBook, but since
+a lot of people use xsltproc and libxml2 for DocBook formatting, here are a
+few pointers and information which may be helpful:</p><ul>
+ <li>The <a href="http://www.oasis-open.org/committees/docbook/">DocBook
+ homepage at Oasis</a> you should find pointers there on all the lastest
+ versions of the DTDs and XSLT stylesheets</li>
+ <li><a href="http://www.docbook.org/">DocBook: The Definitive Guide</a> is
+ the official reference documentation for DocBook.</li>
+ <li><a href="https://sourceforge.net/docman/index.php?group_id=21935">DocBook
+ Open Repository</a> contains a lot of information about DocBook</li>
+ <li>Bob Stayton provides a <a href="http://www.sagehill.net/">lot of
+ resources</a> and consulting services around DocBook.</li>
+ <li>Here is a <a href="/buildDocBookCatalog">shell script</a> to generate
+ XML Catalogs for DocBook 4.1.2 . If it can write to the /etc/xml/
+ directory, it will set-up /etc/xml/catalog and /etc/xml/docbook based on
+ the resources found on the system. Otherwise it will just create
+ ~/xmlcatalog and ~/dbkxmlcatalog and doing:
+ <p><code>export XMLCATALOG=$HOME/xmlcatalog</code></p>
+ <p>should allow to process DocBook documentations without requiring
+ network accesses for the DTd or stylesheets</p>
+ </li>
+ <li>I have uploaded <a href="ftp://xmlsoft.org/libxml2/test/dbk412catalog.tar.gz">a
+ small tarball</a> containing XML Catalogs for DocBook 4.1.2 which seems
+ to work fine for me too</li>
+ <li>Informations on installing a <a href="http://wiki.docbook.org/topic/CygwinPackages">Windows
+ DocBook processing setup</a> based on Cygwin (using the binaries from the
+ official Windows port should be possible too)</li>
+ <li>Alexander Kirillov's page on <a href="http://www.math.sunysb.edu/~kirillov/dbxml/">Using DocBook XML
+ 4.1.2</a> (RPM packages)</li>
+ <li>Tim Waugh's <a href="http://cyberelk.net/tim/xmlto/">xmlto front-end
+ conversion script</a></li>
+ <li>Linux Documentation Project <a href="http://www.linuxdoc.org/HOWTO/mini/DocBook-Install/">
+ DocBook-Install-mini-HOWTO</a></li>
+ <li>ScrollKeeper the open documentation cataloging project has a <a href="http://scrollkeeper.sourceforge.net/docbook.shtml">DocBook
+ section</a></li>
+ <li>Dan York presentation on <a href="http://www.lodestar2.com/people/dyork/talks/2001/xugo/docbook/index.html">Publishing
+ using DocBook XML</a></li>
+</ul><p>Do not use the --docbook option of xsltproc to process XML DocBook
+documents, this option is only intended to provide some (limited) support of
+the SGML version of DocBook.</p><p>Points which are not DocBook specific but still worth mentionning
+again:</p><ul>
+ <li>if you think DocBook processing time is too slow, make sure you have
+ XML Catalogs pointing to a local installation of the DTD of DocBook.
+ Check the <a href="http://xmlsoft.org/catalog.html">XML Catalog page</a>
+ to understand more on this subject.</li>
+ <li>before processing a new document, use the command
+ <p><code>xmllint --valid --noout path_to_document</code></p>
+ <p>to make sure that your input is valid DocBook. And fixes the errors
+ before processing further. Note that XSLT processing may work correctly
+ with some forms of validity errors left, but in general it can give
+ troubles on output.</p>
+ </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/docs.html b/libxslt/doc/docs.html
new file mode 100644
index 0000000..97a48f4
--- /dev/null
+++ b/libxslt/doc/docs.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>Documentation</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>Documentation</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p>There are some on-line resources about using libxslt:</p><ol>
+ <li>Check the <a href="html/libxslt-lib.html#LIBXSLT-LIB">API
+ documentation</a> automatically extracted from code comments (using the
+ program apibuild.py, developed for libxml, together with the xsl script
+ 'newapi.xsl' and the libxslt xsltproc program).</li>
+ <li>Look at the <a href="http://mail.gnome.org/archives/xslt/">mailing-list
+ archive</a>.</li>
+ <li>Of course since libxslt is based on libxml, it's a good idea to at
+ least read <a href="http://xmlsoft.org/">libxml description</a></li>
+</ol><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/downloads.html b/libxslt/doc/downloads.html
new file mode 100644
index 0000000..8f868a0
--- /dev/null
+++ b/libxslt/doc/downloads.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>Downloads</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>Downloads</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p>The latest versions of libxslt can be found on the <a href="ftp://xmlsoft.org/libxslt/">xmlsoft.org</a> server. (NOTE that
+you need the <a href="http://rpmfind.net/linux/RPM/libxml2.html">libxml2</a>,
+<a href="http://rpmfind.net/linux/RPM/libxml2-devel.html">libxml2-devel</a>,
+<a href="http://rpmfind.net/linux/RPM/libxslt.html">libxslt</a> and <a href="http://rpmfind.net/linux/RPM/libxslt-devel.html">libxslt-devel</a>
+packages installed to compile applications using libxslt.) <a href="mailto:igor@zlatkovic.com">Igor Zlatkovic</a> is now the maintainer of
+the Windows port, <a href="http://www.zlatkovic.com/projects/libxml/index.html">he provides
+binaries</a>. <a href="http://opencsw.org/">CSW</a> provides
+<a href="http://opencsw.org/packages/libxslt">Solaris binaries</a>, and
+<a href="mailto:Steve.Ball@explain.com.au">Steve Ball</a> provides <a href="http://www.explain.com.au/oss/libxml2xslt.html">Mac Os X
+binaries</a>.</p><p><a name="Snapshot" id="Snapshot">Snapshot:</a></p><ul>
+ <li>Code from the GNOME GIT base libxslt module, updated hourly <a href="ftp://xmlsoft.org/libxml2/libxslt-git-snapshot.tar.gz">libxslt-git-snapshot.tar.gz</a>.</li>
+</ul><p><a name="Contribs" id="Contribs">Contribs:</a></p><p>I do accept external contributions, especially if compiling on another
+platform, get in touch with me to upload the package. I will keep them in the
+<a href="ftp://xmlsoft.org/libxml2/contribs/">contrib directory</a></p><p>Libxslt is also available from GIT:</p><ul>
+ <li><p>See <a href="http://git.gnome.org/browse/libxslt/">libxslt Git web</a>.
+ To checkout a local tree use:</p>
+ <pre>git clone git://git.gnome.org/libxslt</pre>
+ </li>
+ <li>The <strong>libxml2</strong> module is also present
+ <a href="http://git.gnome.org/browse/libxml2/">there</a></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/duck.png b/libxslt/doc/duck.png
new file mode 100644
index 0000000..9c8ef74
--- /dev/null
+++ b/libxslt/doc/duck.png
Binary files differ
diff --git a/libxslt/doc/epatents.png b/libxslt/doc/epatents.png
new file mode 100644
index 0000000..6cd3a13
--- /dev/null
+++ b/libxslt/doc/epatents.png
Binary files differ
diff --git a/libxslt/doc/extensions.html b/libxslt/doc/extensions.html
new file mode 100644
index 0000000..30fa4c8
--- /dev/null
+++ b/libxslt/doc/extensions.html
@@ -0,0 +1,287 @@
+<?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>Writing extensions</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>Writing extensions</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><h3>Table of content</h3><ul>
+ <li><a href="extensions.html#Introducti">Introduction</a></li>
+ <li><a href="extensions.html#Basics">Basics</a></li>
+ <li><a href="extensions.html#Keep">Extension modules</a></li>
+ <li><a href="extensions.html#Registerin">Registering a module</a></li>
+ <li><a href="extensions.html#module">Loading a module</a></li>
+ <li><a href="extensions.html#Registerin1">Registering an extension
+ function</a></li>
+ <li><a href="extensions.html#Implementi">Implementing an extension
+ function</a></li>
+ <li><a href="extensions.html#Examples">Examples for extension
+ functions</a></li>
+ <li><a href="extensions.html#Registerin2">Registering an extension
+ element</a></li>
+ <li><a href="extensions.html#Implementi1">Implementing an extension
+ element</a></li>
+ <li><a href="extensions.html#Example">Example for extension
+ elements</a></li>
+ <li><a href="extensions.html#shutdown">The shutdown of a module</a></li>
+ <li><a href="extensions.html#Future">Future work</a></li>
+</ul><h3><a name="Introducti1" id="Introducti1">Introduction</a></h3><p>This document describes the work needed to write extensions to the
+standard XSLT library for use with <a href="http://xmlsoft.org/XSLT/">libxslt</a>, the <a href="http://www.w3.org/TR/xslt">XSLT</a> C library developed for the <a href="http://www.gnome.org/">GNOME</a> project.</p><p>Before starting reading this document it is highly recommended to get
+familiar with <a href="internals.html">the libxslt internals</a>.</p><p>Note: this documentation is by definition incomplete and I am not good at
+spelling, grammar, so patches and suggestions are <a href="mailto:veillard@redhat.com">really welcome</a>.</p><h3><a name="Basics" id="Basics">Basics</a></h3><p>The <a href="http://www.w3.org/TR/xslt">XSLT specification</a> provides
+two <a href="http://www.w3.org/TR/xslt">ways to extend an XSLT engine</a>:</p><ul>
+ <li>providing <a href="http://www.w3.org/TR/xslt">new extension
+ functions</a> which can be called from XPath expressions</li>
+ <li>providing <a href="http://www.w3.org/TR/xslt">new extension
+ elements</a> which can be inserted in stylesheets</li>
+</ul><p>In both cases the extensions need to be associated to a new namespace,
+i.e. an URI used as the name for the extension's namespace (there is no need
+to have a resource there for this to work).</p><p>libxslt provides a few extensions itself, either in the libxslt namespace
+"http://xmlsoft.org/XSLT/namespace" or in namespaces for other well known
+extensions provided by other XSLT processors like Saxon, Xalan or XT.</p><h3><a name="Keep" id="Keep">Extension modules</a></h3><p>Since extensions are bound to a namespace name, usually sets of extensions
+coming from a given source are using the same namespace name defining in
+practice a group of extensions providing elements, functions or both. From
+the libxslt point of view those are considered as an "extension module", and
+most of the APIs work at a module point of view.</p><p>Registration of new functions or elements are bound to the activation of
+the module. This is currently done by declaring the namespace as an extension
+by using the attribute <code>extension-element-prefixes</code> on the
+<code><a href="http://www.w3.org/TR/xslt">xsl:stylesheet</a></code>
+element.</p><p>An extension module is defined by 3 objects:</p><ul>
+ <li>the namespace name associated</li>
+ <li>an initialization function</li>
+ <li>a shutdown function</li>
+</ul><h3><a name="Registerin" id="Registerin">Registering a module</a></h3><p>Currently a libxslt module has to be compiled within the application using
+libxslt. There is no code to load dynamically shared libraries associated to
+a namespace (this may be added but is likely to become a portability
+nightmare).</p><p>The current way to register a module is to link the code implementing it
+with the application and to call a registration function:</p><pre>int xsltRegisterExtModule(const xmlChar *URI,
+ xsltExtInitFunction initFunc,
+ xsltExtShutdownFunction shutdownFunc);</pre><p>The associated header is read by:</p><pre>#include&lt;libxslt/extensions.h&gt;</pre><p>which also defines the type for the initialization and shutdown
+functions</p><h3><a name="module" id="module">Loading a module</a></h3><p>Once the module URI has been registered and if the XSLT processor detects
+that a given stylesheet needs the functionalities of an extended module, this
+one is initialized.</p><p>The xsltExtInitFunction type defines the interface for an initialization
+function:</p><pre>/**
+ * xsltExtInitFunction:
+ * @ctxt: an XSLT transformation context
+ * @URI: the namespace URI for the extension
+ *
+ * A function called at initialization time of an XSLT
+ * extension module
+ *
+ * Returns a pointer to the module specific data for this
+ * transformation
+ */
+typedef void *(*xsltExtInitFunction)(xsltTransformContextPtr ctxt,
+ const xmlChar *URI);</pre><p>There are 3 things to notice:</p><ul>
+ <li>The function gets passed the namespace name URI as an argument. This
+ allows a single function to provide the initialization for multiple
+ logical modules.</li>
+ <li>It also gets passed a transformation context. The initialization is
+ done at run time before any processing occurs on the stylesheet but it
+ will be invoked separately each time for each transformation.</li>
+ <li>It returns a pointer. This can be used to store module specific
+ information which can be retrieved later when a function or an element
+ from the extension is used. An obvious example is a connection to a
+ database which should be kept and reused along with the transformation.
+ NULL is a perfectly valid return; there is no way to indicate a failure
+ at this level</li>
+</ul><p>What this function is expected to do is:</p><ul>
+ <li>prepare the context for this module (like opening the database
+ connection)</li>
+ <li>register the extensions specific to this module</li>
+</ul><h3><a name="Registerin1" id="Registerin1">Registering an extension function</a></h3><p>There is a single call to do this registration:</p><pre>int xsltRegisterExtFunction(xsltTransformContextPtr ctxt,
+ const xmlChar *name,
+ const xmlChar *URI,
+ xmlXPathEvalFunc function);</pre><p>The registration is bound to a single transformation instance referred by
+ctxt, name is the UTF8 encoded name for the NCName of the function, and URI
+is the namespace name for the extension (no checking is done, a module could
+register functions or elements from a different namespace, but it is not
+recommended).</p><h3><a name="Implementi" id="Implementi">Implementing an extension function</a></h3><p>The implementation of the function must have the signature of a libxml
+XPath function:</p><pre>/**
+ * xmlXPathEvalFunc:
+ * @ctxt: an XPath parser context
+ * @nargs: the number of arguments passed to the function
+ *
+ * an XPath evaluation function, the parameters are on the
+ * XPath context stack
+ */
+
+typedef void (*xmlXPathEvalFunc)(xmlXPathParserContextPtr ctxt,
+ int nargs);</pre><p>The context passed to an XPath function is not an XSLT context but an <a href="internals.html#XPath1">XPath context</a>. However it is possible to
+find one from the other:</p><ul>
+ <li>The function xsltXPathGetTransformContext provides this lookup facility:
+ <pre>xsltTransformContextPtr
+ xsltXPathGetTransformContext
+ (xmlXPathParserContextPtr ctxt);</pre>
+ </li>
+ <li>The <code>xmlXPathContextPtr</code> associated to an
+ <code>xsltTransformContext</code> is stored in the <code>xpathCtxt</code>
+ field.</li>
+</ul><p>The first thing an extension function may want to do is to check the
+arguments passed on the stack, the <code>nargs</code> parameter will tell how
+many of them were provided on the XPath expression. The macro valuePop will
+extract them from the XPath stack:</p><pre>#include &lt;libxml/xpath.h&gt;
+#include &lt;libxml/xpathInternals.h&gt;
+
+xmlXPathObjectPtr obj = valuePop(ctxt); </pre><p>Note that <code>ctxt</code> is the XPath context not the XSLT one. It is
+then possible to examine the content of the value. Check <a href="internals.html#Descriptio">the description of XPath objects</a> if
+necessary. The following is a common sequence checking whether the argument
+passed is a string and converting it using the built-in XPath
+<code>string()</code> function if this is not the case:</p><pre>if (obj-&gt;type != XPATH_STRING) {
+ valuePush(ctxt, obj);
+ xmlXPathStringFunction(ctxt, 1);
+ obj = valuePop(ctxt);
+}</pre><p>Most common XPath functions are available directly at the C level and are
+exported either in <code>&lt;libxml/xpath.h&gt;</code> or in
+<code>&lt;libxml/xpathInternals.h&gt;</code>.</p><p>The extension function may also need to retrieve the data associated to
+this module instance (the database connection in the previous example) this
+can be done using the xsltGetExtData:</p><pre>void * xsltGetExtData(xsltTransformContextPtr ctxt,
+ const xmlChar *URI);</pre><p>Again the URI to be provided is the one which was used when registering
+the module.</p><p>Once the function finishes, don't forget to:</p><ul>
+ <li>push the return value on the stack using <code>valuePush(ctxt,
+ obj)</code></li>
+ <li>deallocate the parameters passed to the function using
+ <code>xmlXPathFreeObject(obj)</code></li>
+</ul><h3><a name="Examples" id="Examples">Examples for extension functions</a></h3><p>The module libxslt/functions.c contains the sources of the XSLT built-in
+functions, including document(), key(), generate-id(), etc. as well as a full
+example module at the end. Here is the test function implementation for the
+libxslt:test function:</p><pre>/**
+ * xsltExtFunctionTest:
+ * @ctxt: the XPath Parser context
+ * @nargs: the number of arguments
+ *
+ * function libxslt:test() for testing the extensions support.
+ */
+static void
+xsltExtFunctionTest(xmlXPathParserContextPtr ctxt, int nargs)
+{
+ xsltTransformContextPtr tctxt;
+ void *data;
+
+ tctxt = xsltXPathGetTransformContext(ctxt);
+ if (tctxt == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtFunctionTest: failed to get the transformation context\n");
+ return;
+ }
+ data = xsltGetExtData(tctxt, (const xmlChar *) XSLT_DEFAULT_URL);
+ if (data == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtFunctionTest: failed to get module data\n");
+ return;
+ }
+#ifdef WITH_XSLT_DEBUG_FUNCTION
+ xsltGenericDebug(xsltGenericDebugContext,
+ "libxslt:test() called with %d args\n", nargs);
+#endif
+}</pre><h3><a name="Registerin2" id="Registerin2">Registering an extension element</a></h3><p>There is a single call to do this registration:</p><pre>int xsltRegisterExtElement(xsltTransformContextPtr ctxt,
+ const xmlChar *name,
+ const xmlChar *URI,
+ xsltTransformFunction function);</pre><p>It is similar to the mechanism used to register an extension function,
+except that the signature of an extension element implementation is
+different.</p><p>The registration is bound to a single transformation instance referred to
+by ctxt, name is the UTF8 encoded name for the NCName of the element, and URI
+is the namespace name for the extension (no checking is done, a module could
+register elements for a different namespace, but it is not recommended).</p><h3><a name="Implementi1" id="Implementi1">Implementing an extension element</a></h3><p>The implementation of the element must have the signature of an XSLT
+transformation function:</p><pre>/**
+ * xsltTransformFunction:
+ * @ctxt: the XSLT transformation context
+ * @node: the input node
+ * @inst: the stylesheet node
+ * @comp: the compiled information from the stylesheet
+ *
+ * signature of the function associated to elements part of the
+ * stylesheet language like xsl:if or xsl:apply-templates.
+ */
+typedef void (*xsltTransformFunction)
+ (xsltTransformContextPtr ctxt,
+ xmlNodePtr node,
+ xmlNodePtr inst,
+ xsltStylePreCompPtr comp);</pre><p>The first argument is the XSLT transformation context. The second and
+third arguments are xmlNodePtr i.e. internal memory <a href="internals.html#libxml">representation of XML nodes</a>. They are
+respectively <code>node</code> from the the input document being transformed
+by the stylesheet and <code>inst</code> the extension element in the
+stylesheet. The last argument is <code>comp</code> a pointer to a precompiled
+representation of <code>inst</code> but usually for an extension function
+this value is <code>NULL</code> by default (it could be added and associated
+to the instruction in <code>inst-&gt;_private</code>).</p><p>The same functions are available from a function implementing an extension
+element as in an extension function, including
+<code>xsltGetExtData()</code>.</p><p>The goal of an extension element being usually to enrich the generated
+output, it is expected that they will grow the currently generated output
+tree. This can be done by grabbing ctxt-&gt;insert which is the current
+libxml node being generated (Note this can also be the intermediate value
+tree being built for example to initialize a variable, the processing should
+be similar). The functions for libxml tree manipulation from <a href="http://xmlsoft.org/html/libxml-tree.html">&lt;libxml/tree.h&gt;</a> can
+be employed to extend or modify the tree, but it is required to preserve the
+insertion node and its ancestors since there are existing pointers to those
+elements still in use in the XSLT template execution stack.</p><h3><a name="Example" id="Example">Example for extension elements</a></h3><p>The module libxslt/transform.c contains the sources of the XSLT built-in
+elements, including xsl:element, xsl:attribute, xsl:if, etc. There is a small
+but full example in functions.c providing the implementation for the
+libxslt:test element, it will output a comment in the result tree:</p><pre>/**
+ * xsltExtElementTest:
+ * @ctxt: an XSLT processing context
+ * @node: The current node
+ * @inst: the instruction in the stylesheet
+ * @comp: precomputed information
+ *
+ * Process a libxslt:test node
+ */
+static void
+xsltExtElementTest(xsltTransformContextPtr ctxt, xmlNodePtr node,
+ xmlNodePtr inst,
+ xsltStylePreCompPtr comp)
+{
+ xmlNodePtr comment;
+
+ if (ctxt == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtElementTest: no transformation context\n");
+ return;
+ }
+ if (node == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtElementTest: no current node\n");
+ return;
+ }
+ if (inst == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtElementTest: no instruction\n");
+ return;
+ }
+ if (ctxt-&gt;insert == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtElementTest: no insertion point\n");
+ return;
+ }
+ comment =
+ xmlNewComment((const xmlChar *)
+ "libxslt:test element test worked");
+ xmlAddChild(ctxt-&gt;insert, comment);
+}</pre><h3><a name="shutdown" id="shutdown">The shutdown of a module</a></h3><p>When the XSLT processor ends a transformation, the shutdown function (if
+it exists) for each of the modules initialized is called. The
+xsltExtShutdownFunction type defines the interface for a shutdown
+function:</p><pre>/**
+ * xsltExtShutdownFunction:
+ * @ctxt: an XSLT transformation context
+ * @URI: the namespace URI for the extension
+ * @data: the data associated to this module
+ *
+ * A function called at shutdown time of an XSLT extension module
+ */
+typedef void (*xsltExtShutdownFunction) (xsltTransformContextPtr ctxt,
+ const xmlChar *URI,
+ void *data);</pre><p>This is really similar to a module initialization function except a third
+argument is passed, it's the value that was returned by the initialization
+function. This allows the routine to deallocate resources from the module for
+example close the connection to the database to keep the same example.</p><h3><a name="Future" id="Future">Future work</a></h3><p>Well, some of the pieces missing:</p><ul>
+ <li>a way to load shared libraries to instantiate new modules</li>
+ <li>a better detection of extension functions usage and their registration
+ without having to use the extension prefix which ought to be reserved to
+ element extensions.</li>
+ <li>more examples</li>
+ <li>implementations of the <a href="http://www.exslt.org/">EXSLT</a> common
+ extension libraries, Thomas Broyer nearly finished implementing them.</li>
+</ul><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/gnome2.png b/libxslt/doc/gnome2.png
new file mode 100644
index 0000000..4a16fb1
--- /dev/null
+++ b/libxslt/doc/gnome2.png
Binary files differ
diff --git a/libxslt/doc/help.html b/libxslt/doc/help.html
new file mode 100644
index 0000000..108d616
--- /dev/null
+++ b/libxslt/doc/help.html
@@ -0,0 +1,26 @@
+<?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>How to help</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>How to help</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p>You can help the project in various ways, the best thing to do first is to
+subscribe to the mailing-list as explained before, check the <a href="http://mail.gnome.org/archives/xslt/">archives </a>and the <a href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">GNOME bug
+database:</a>:</p><ol>
+ <li>provide patches when you find problems</li>
+ <li>provide the diffs when you port libxslt to a new platform. They may not
+ be integrated in all cases but help pinpointing portability problems
+ and</li>
+ <li>provide documentation fixes (either as patches to the code comments or
+ as HTML diffs).</li>
+ <li>provide new documentations pieces (translations, examples, etc ...)</li>
+ <li>Check the TODO file and try to close one of the items</li>
+ <li>take one of the points raised in the archive or the bug database and
+ provide a fix. <a href="mailto:daniel@veillard.com">Get in touch with me
+ </a>before to avoid synchronization problems and check that the suggested
+ fix will fit in nicely :-)</li>
+</ol><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/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
diff --git a/libxslt/doc/images/callouts/1.png b/libxslt/doc/images/callouts/1.png
new file mode 100644
index 0000000..7d47343
--- /dev/null
+++ b/libxslt/doc/images/callouts/1.png
Binary files differ
diff --git a/libxslt/doc/images/callouts/10.png b/libxslt/doc/images/callouts/10.png
new file mode 100644
index 0000000..997bbc8
--- /dev/null
+++ b/libxslt/doc/images/callouts/10.png
Binary files differ
diff --git a/libxslt/doc/images/callouts/2.png b/libxslt/doc/images/callouts/2.png
new file mode 100644
index 0000000..5d09341
--- /dev/null
+++ b/libxslt/doc/images/callouts/2.png
Binary files differ
diff --git a/libxslt/doc/images/callouts/3.png b/libxslt/doc/images/callouts/3.png
new file mode 100644
index 0000000..ef7b700
--- /dev/null
+++ b/libxslt/doc/images/callouts/3.png
Binary files differ
diff --git a/libxslt/doc/images/callouts/4.png b/libxslt/doc/images/callouts/4.png
new file mode 100644
index 0000000..adb8364
--- /dev/null
+++ b/libxslt/doc/images/callouts/4.png
Binary files differ
diff --git a/libxslt/doc/images/callouts/5.png b/libxslt/doc/images/callouts/5.png
new file mode 100644
index 0000000..4d7eb46
--- /dev/null
+++ b/libxslt/doc/images/callouts/5.png
Binary files differ
diff --git a/libxslt/doc/images/callouts/6.png b/libxslt/doc/images/callouts/6.png
new file mode 100644
index 0000000..0ba694a
--- /dev/null
+++ b/libxslt/doc/images/callouts/6.png
Binary files differ
diff --git a/libxslt/doc/images/callouts/7.png b/libxslt/doc/images/callouts/7.png
new file mode 100644
index 0000000..472e96f
--- /dev/null
+++ b/libxslt/doc/images/callouts/7.png
Binary files differ
diff --git a/libxslt/doc/images/callouts/8.png b/libxslt/doc/images/callouts/8.png
new file mode 100644
index 0000000..5e60973
--- /dev/null
+++ b/libxslt/doc/images/callouts/8.png
Binary files differ
diff --git a/libxslt/doc/images/callouts/9.png b/libxslt/doc/images/callouts/9.png
new file mode 100644
index 0000000..a0676d2
--- /dev/null
+++ b/libxslt/doc/images/callouts/9.png
Binary files differ
diff --git a/libxslt/doc/index.html b/libxslt/doc/index.html
new file mode 100644
index 0000000..38781e0
--- /dev/null
+++ b/libxslt/doc/index.html
@@ -0,0 +1,26 @@
+<?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>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>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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p>Libxslt is the <a href="http://www.w3.org/TR/xslt">XSLT</a> C library
+developed for the GNOME project. XSLT itself is a an XML language to define
+transformation for XML. Libxslt is based on <a href="http://xmlsoft.org/">libxml2</a> the XML C library developed for the
+GNOME project. It also implements most of the <a href="http://www.exslt.org/">EXSLT</a> set of processor-portable extensions
+functions and some of Saxon's evaluate and expressions extensions.</p><p>People can either embed the library in their application or use xsltproc
+the command line processing tool. This library is free software and can be
+reused in commercial applications (see the <a href="intro.html">intro</a>)</p><p>External documents:</p><ul>
+ <li>John Fleck wrote <a href="tutorial/libxslttutorial.html">a tutorial for
+ libxslt</a></li>
+ <li><a href="xsltproc.html">xsltproc user manual</a></li>
+ <li><a href="http://xmlsoft.org/">the libxml documentation</a></li>
+</ul><p></p><p>Logo designed by <a href="mailto:liyanage@access.ch">Marc Liyanage</a>.</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/index.py b/libxslt/doc/index.py
new file mode 100755
index 0000000..3cb3fec
--- /dev/null
+++ b/libxslt/doc/index.py
@@ -0,0 +1,1248 @@
+#!/usr/bin/python -u
+#
+# imports the API description and fills up a database with
+# name relevance to modules, functions or web pages
+#
+# Operation needed:
+# =================
+#
+# install mysqld, the python wrappers for mysql and libxml2, start mysqld
+# Change the root passwd of mysql:
+# mysqladmin -u root password new_password
+# Create the new database xmlsoft
+# mysqladmin -p create xmlsoft
+# Create a database user 'veillard' and give him passord access
+# change veillard and abcde with the right user name and passwd
+# mysql -p
+# password:
+# mysql> GRANT ALL PRIVILEGES ON xmlsoft TO veillard@localhost
+# IDENTIFIED BY 'abcde' WITH GRANT OPTION;
+#
+# As the user check the access:
+# mysql -p xmlsoft
+# Enter password:
+# Welcome to the MySQL monitor....
+# mysql> use xmlsoft
+# Database changed
+# mysql> quit
+# Bye
+#
+# Then run the script in the doc subdir, it will create the XSLTsymbols and
+# word tables and populate them with informations extracted from
+# the libxml2-api.xml API description, and make then accessible read-only
+# by nobody@loaclhost the user expected to be Apache's one
+#
+# On the Apache configuration, make sure you have php support enabled
+#
+
+import MySQLdb
+import libxml2
+import sys
+import string
+import os
+
+#
+# We are not interested in parsing errors here
+#
+def callback(ctx, str):
+ return
+libxml2.registerErrorHandler(callback, None)
+
+#
+# The dictionary of tables required and the SQL command needed
+# to create them
+#
+TABLES={
+ "XSLTsymbols" : """CREATE TABLE XSLTsymbols (
+ name varchar(255) BINARY NOT NULL,
+ module varchar(255) BINARY NOT NULL,
+ type varchar(25) NOT NULL,
+ descr varchar(255),
+ UNIQUE KEY name (name),
+ KEY module (module))""",
+ "XSLTwords" : """CREATE TABLE XSLTwords (
+ name varchar(50) BINARY NOT NULL,
+ symbol varchar(255) BINARY NOT NULL,
+ relevance int,
+ KEY name (name),
+ KEY symbol (symbol),
+ UNIQUE KEY ID (name, symbol))""",
+ "XSLTwordsHTML" : """CREATE TABLE XSLTwordsHTML (
+ name varchar(50) BINARY NOT NULL,
+ resource varchar(255) BINARY NOT NULL,
+ section varchar(255),
+ id varchar(50),
+ relevance int,
+ KEY name (name),
+ KEY resource (resource),
+ UNIQUE KEY ref (name, resource))""",
+ "XSLTwordsArchive" : """CREATE TABLE XSLTwordsArchive (
+ name varchar(50) BINARY NOT NULL,
+ ID int(11) NOT NULL,
+ relevance int,
+ KEY name (name),
+ UNIQUE KEY ref (name, ID))""",
+ "XSLTpages" : """CREATE TABLE XSLTpages (
+ resource varchar(255) BINARY NOT NULL,
+ title varchar(255) BINARY NOT NULL,
+ UNIQUE KEY name (resource))""",
+ "archives" : """CREATE TABLE archives (
+ ID int(11) NOT NULL auto_increment,
+ resource varchar(255) BINARY NOT NULL,
+ title varchar(255) BINARY NOT NULL,
+ UNIQUE KEY id (ID,resource(255)),
+ INDEX (ID),
+ INDEX (resource))""",
+ "Queries" : """CREATE TABLE Queries (
+ ID int(11) NOT NULL auto_increment,
+ Value varchar(50) NOT NULL,
+ Count int(11) NOT NULL,
+ UNIQUE KEY id (ID,Value(35)),
+ INDEX (ID))""",
+}
+
+#
+# The XML API description file to parse
+#
+API="libxslt-api.xml"
+DB=None
+
+#########################################################################
+# #
+# MySQL database interfaces #
+# #
+#########################################################################
+def createTable(db, name):
+ global TABLES
+
+ if db == None:
+ return -1
+ if name == None:
+ return -1
+ c = db.cursor()
+
+ ret = c.execute("DROP TABLE IF EXISTS %s" % (name))
+ if ret == 1:
+ print "Removed table %s" % (name)
+ print "Creating table %s" % (name)
+ try:
+ ret = c.execute(TABLES[name])
+ except:
+ print "Failed to create table %s" % (name)
+ return -1
+ return ret
+
+def checkTables(db):
+ global TABLES
+
+ if db == None:
+ return -1
+ c = db.cursor()
+ nbtables = c.execute("show tables")
+ print "Found %d tables" % (nbtables)
+ tables = {}
+ i = 0
+ while i < nbtables:
+ l = c.fetchone()
+ name = l[0]
+ tables[name] = {}
+ i = i + 1
+
+ for table in TABLES.keys():
+ if not tables.has_key(table):
+ print "table %s missing" % (table)
+ createTable(db, table)
+ try:
+ ret = c.execute("SELECT count(*) from %s" % table);
+ row = c.fetchone()
+ print "Table %s contains %d records" % (table, row[0])
+ except:
+ print "Troubles with table %s : repairing" % (table)
+ ret = c.execute("repair table %s" % table);
+ print "repairing returned %d" % (ret)
+ ret = c.execute("SELECT count(*) from %s" % table);
+ row = c.fetchone()
+ print "Table %s contains %d records" % (table, row[0])
+ print "checkTables finished"
+
+ # make sure apache can access the tables read-only
+ try:
+ ret = c.execute("GRANT SELECT ON xmlsoft.* TO nobody@localhost")
+ ret = c.execute("GRANT INSERT,SELECT,UPDATE ON xmlsoft.Queries TO nobody@localhost")
+ except:
+ pass
+ return 0
+
+def openMySQL(db="xmlsoft", passwd=None):
+ global DB
+
+ if passwd == None:
+ try:
+ passwd = os.environ["MySQL_PASS"]
+ except:
+ print "No password available, set environment MySQL_PASS"
+ sys.exit(1)
+
+ DB = MySQLdb.connect(passwd=passwd, db=db)
+ if DB == None:
+ return -1
+ ret = checkTables(DB)
+ return ret
+
+def updateWord(name, symbol, relevance):
+ global DB
+
+ if DB == None:
+ openMySQL()
+ if DB == None:
+ return -1
+ if name == None:
+ return -1
+ if symbol == None:
+ return -1
+
+ c = DB.cursor()
+ try:
+ ret = c.execute(
+"""INSERT INTO XSLTwords (name, symbol, relevance) VALUES ('%s','%s', %d)""" %
+ (name, symbol, relevance))
+ except:
+ try:
+ ret = c.execute(
+ """UPDATE XSLTwords SET relevance = %d where name = '%s' and symbol = '%s'""" %
+ (relevance, name, symbol))
+ except:
+ print "Update word (%s, %s, %s) failed command" % (name, symbol, relevance)
+ print "UPDATE XSLTwords SET relevance = %d where name = '%s' and symbol = '%s'" % (relevance, name, symbol)
+ print sys.exc_type, sys.exc_value
+ return -1
+
+ return ret
+
+def updateSymbol(name, module, type, desc):
+ global DB
+
+ updateWord(name, name, 50)
+ if DB == None:
+ openMySQL()
+ if DB == None:
+ return -1
+ if name == None:
+ return -1
+ if module == None:
+ return -1
+ if type == None:
+ return -1
+
+ try:
+ desc = string.replace(desc, "'", " ")
+ l = string.split(desc, ".")
+ desc = l[0]
+ desc = desc[0:99]
+ except:
+ desc = ""
+
+ c = DB.cursor()
+ try:
+ ret = c.execute(
+"""INSERT INTO XSLTsymbols (name, module, type, descr) VALUES ('%s','%s', '%s', '%s')""" %
+ (name, module, type, desc))
+ except:
+ try:
+ ret = c.execute(
+"""UPDATE XSLTsymbols SET module='%s', type='%s', descr='%s' where name='%s'""" %
+ (module, type, desc, name))
+ except:
+ print "Update symbol (%s, %s, %s) failed command" % (name, module, type)
+ print """UPDATE XSLTsymbols SET module='%s', type='%s', descr='%s' where name='%s'""" % (module, type, desc, name)
+ print sys.exc_type, sys.exc_value
+ return -1
+
+ return ret
+
+def addFunction(name, module, desc = ""):
+ return updateSymbol(name, module, 'function', desc)
+
+def addMacro(name, module, desc = ""):
+ return updateSymbol(name, module, 'macro', desc)
+
+def addEnum(name, module, desc = ""):
+ return updateSymbol(name, module, 'enum', desc)
+
+def addStruct(name, module, desc = ""):
+ return updateSymbol(name, module, 'struct', desc)
+
+def addConst(name, module, desc = ""):
+ return updateSymbol(name, module, 'const', desc)
+
+def addType(name, module, desc = ""):
+ return updateSymbol(name, module, 'type', desc)
+
+def addFunctype(name, module, desc = ""):
+ return updateSymbol(name, module, 'functype', desc)
+
+def addPage(resource, title):
+ global DB
+
+ if DB == None:
+ openMySQL()
+ if DB == None:
+ return -1
+ if resource == None:
+ return -1
+
+ c = DB.cursor()
+ try:
+ ret = c.execute(
+ """INSERT INTO XSLTpages (resource, title) VALUES ('%s','%s')""" %
+ (resource, title))
+ except:
+ try:
+ ret = c.execute(
+ """UPDATE XSLTpages SET title='%s' WHERE resource='%s'""" %
+ (title, resource))
+ except:
+ print "Update symbol (%s, %s, %s) failed command" % (name, module, type)
+ print """UPDATE XSLTpages SET title='%s' WHERE resource='%s'""" % (title, resource)
+ print sys.exc_type, sys.exc_value
+ return -1
+
+ return ret
+
+def updateWordHTML(name, resource, desc, id, relevance):
+ global DB
+
+ if DB == None:
+ openMySQL()
+ if DB == None:
+ return -1
+ if name == None:
+ return -1
+ if resource == None:
+ return -1
+ if id == None:
+ id = ""
+ if desc == None:
+ desc = ""
+ else:
+ try:
+ desc = string.replace(desc, "'", " ")
+ desc = desc[0:99]
+ except:
+ desc = ""
+
+ c = DB.cursor()
+ try:
+ ret = c.execute(
+"""INSERT INTO XSLTwordsHTML (name, resource, section, id, relevance) VALUES ('%s','%s', '%s', '%s', '%d')""" %
+ (name, resource, desc, id, relevance))
+ except:
+ try:
+ ret = c.execute(
+"""UPDATE XSLTwordsHTML SET section='%s', id='%s', relevance='%d' where name='%s' and resource='%s'""" %
+ (desc, id, relevance, name, resource))
+ except:
+ print "Update symbol (%s, %s, %d) failed command" % (name, resource, relevance)
+ print """UPDATE XSLTwordsHTML SET section='%s', id='%s', relevance='%d' where name='%s' and resource='%s'""" % (desc, id, relevance, name, resource)
+ print sys.exc_type, sys.exc_value
+ return -1
+
+ return ret
+
+def checkXMLMsgArchive(url):
+ global DB
+
+ if DB == None:
+ openMySQL()
+ if DB == None:
+ return -1
+ if url == None:
+ return -1
+
+ c = DB.cursor()
+ try:
+ ret = c.execute(
+ """SELECT ID FROM archives WHERE resource='%s'""" % (url))
+ row = c.fetchone()
+ if row == None:
+ return -1
+ except:
+ return -1
+
+ return row[0]
+
+def addXMLMsgArchive(url, title):
+ global DB
+
+ if DB == None:
+ openMySQL()
+ if DB == None:
+ return -1
+ if url == None:
+ return -1
+ if title == None:
+ title = ""
+ else:
+ title = string.replace(title, "'", " ")
+ title = title[0:99]
+
+ c = DB.cursor()
+ try:
+ cmd = """INSERT INTO archives (resource, title) VALUES ('%s','%s')""" % (url, title)
+ ret = c.execute(cmd)
+ cmd = """SELECT ID FROM archives WHERE resource='%s'""" % (url)
+ ret = c.execute(cmd)
+ row = c.fetchone()
+ if row == None:
+ print "addXMLMsgArchive failed to get the ID: %s" % (url)
+ return -1
+ except:
+ print "addXMLMsgArchive failed command: %s" % (cmd)
+ return -1
+
+ return((int)(row[0]))
+
+def updateWordArchive(name, id, relevance):
+ global DB
+
+ if DB == None:
+ openMySQL()
+ if DB == None:
+ return -1
+ if name == None:
+ return -1
+ if id == None:
+ return -1
+
+ c = DB.cursor()
+ try:
+ ret = c.execute(
+"""INSERT INTO XSLTwordsArchive (name, id, relevance) VALUES ('%s', '%d', '%d')""" %
+ (name, id, relevance))
+ except:
+ try:
+ ret = c.execute(
+"""UPDATE XSLTwordsArchive SET relevance='%d' where name='%s' and ID='%d'""" %
+ (relevance, name, id))
+ except:
+ print "Update word archive (%s, %d, %d) failed command" % (name, id, relevance)
+ print """UPDATE XSLTwordsArchive SET relevance='%d' where name='%s' and ID='%d'""" % (relevance, name, id)
+ print sys.exc_type, sys.exc_value
+ return -1
+
+ return ret
+
+#########################################################################
+# #
+# Word dictionary and analysis routines #
+# #
+#########################################################################
+
+#
+# top 100 english word without the one len < 3 + own set
+#
+dropWords = {
+ 'the':0, 'this':0, 'can':0, 'man':0, 'had':0, 'him':0, 'only':0,
+ 'and':0, 'not':0, 'been':0, 'other':0, 'even':0, 'are':0, 'was':0,
+ 'new':0, 'most':0, 'but':0, 'when':0, 'some':0, 'made':0, 'from':0,
+ 'who':0, 'could':0, 'after':0, 'that':0, 'will':0, 'time':0, 'also':0,
+ 'have':0, 'more':0, 'these':0, 'did':0, 'was':0, 'two':0, 'many':0,
+ 'they':0, 'may':0, 'before':0, 'for':0, 'which':0, 'out':0, 'then':0,
+ 'must':0, 'one':0, 'through':0, 'with':0, 'you':0, 'said':0,
+ 'first':0, 'back':0, 'were':0, 'what':0, 'any':0, 'years':0, 'his':0,
+ 'her':0, 'where':0, 'all':0, 'its':0, 'now':0, 'much':0, 'she':0,
+ 'about':0, 'such':0, 'your':0, 'there':0, 'into':0, 'like':0, 'may':0,
+ 'would':0, 'than':0, 'our':0, 'well':0, 'their':0, 'them':0, 'over':0,
+ 'down':0,
+ 'net':0, 'www':0, 'bad':0, 'Okay':0, 'bin':0, 'cur':0,
+}
+
+wordsDict = {}
+wordsDictHTML = {}
+wordsDictArchive = {}
+
+def cleanupWordsString(str):
+ str = string.replace(str, ".", " ")
+ str = string.replace(str, "!", " ")
+ str = string.replace(str, "?", " ")
+ str = string.replace(str, ",", " ")
+ str = string.replace(str, "'", " ")
+ str = string.replace(str, '"', " ")
+ str = string.replace(str, ";", " ")
+ str = string.replace(str, "(", " ")
+ str = string.replace(str, ")", " ")
+ str = string.replace(str, "{", " ")
+ str = string.replace(str, "}", " ")
+ str = string.replace(str, "<", " ")
+ str = string.replace(str, ">", " ")
+ str = string.replace(str, "=", " ")
+ str = string.replace(str, "/", " ")
+ str = string.replace(str, "*", " ")
+ str = string.replace(str, ":", " ")
+ str = string.replace(str, "#", " ")
+ str = string.replace(str, "\\", " ")
+ str = string.replace(str, "\n", " ")
+ str = string.replace(str, "\r", " ")
+ str = string.replace(str, "\xc2", " ")
+ str = string.replace(str, "\xa0", " ")
+ return str
+
+def cleanupDescrString(str):
+ str = string.replace(str, "'", " ")
+ str = string.replace(str, "\n", " ")
+ str = string.replace(str, "\r", " ")
+ str = string.replace(str, "\xc2", " ")
+ str = string.replace(str, "\xa0", " ")
+ l = string.split(str)
+ str = string.join(str)
+ return str
+
+def splitIdentifier(str):
+ ret = []
+ while str != "":
+ cur = string.lower(str[0])
+ str = str[1:]
+ if ((cur < 'a') or (cur > 'z')):
+ continue
+ while (str != "") and (str[0] >= 'A') and (str[0] <= 'Z'):
+ cur = cur + string.lower(str[0])
+ str = str[1:]
+ while (str != "") and (str[0] >= 'a') and (str[0] <= 'z'):
+ cur = cur + str[0]
+ str = str[1:]
+ while (str != "") and (str[0] >= '0') and (str[0] <= '9'):
+ str = str[1:]
+ ret.append(cur)
+ return ret
+
+def addWord(word, module, symbol, relevance):
+ global wordsDict
+
+ if word == None or len(word) < 3:
+ return -1
+ if module == None or symbol == None:
+ return -1
+ if dropWords.has_key(word):
+ return 0
+ if ord(word[0]) > 0x80:
+ return 0
+
+ if wordsDict.has_key(word):
+ d = wordsDict[word]
+ if d == None:
+ return 0
+ if len(d) > 500:
+ wordsDict[word] = None
+ return 0
+ try:
+ relevance = relevance + d[(module, symbol)]
+ except:
+ pass
+ else:
+ wordsDict[word] = {}
+ wordsDict[word][(module, symbol)] = relevance
+ return relevance
+
+def addString(str, module, symbol, relevance):
+ if str == None or len(str) < 3:
+ return -1
+ ret = 0
+ str = cleanupWordsString(str)
+ l = string.split(str)
+ for word in l:
+ if len(word) > 2:
+ ret = ret + addWord(word, module, symbol, 5)
+
+ return ret
+
+def addWordHTML(word, resource, id, section, relevance):
+ global wordsDictHTML
+
+ if word == None or len(word) < 3:
+ return -1
+ if resource == None or section == None:
+ return -1
+ if dropWords.has_key(word):
+ return 0
+ if ord(word[0]) > 0x80:
+ return 0
+
+ section = cleanupDescrString(section)
+
+ if wordsDictHTML.has_key(word):
+ d = wordsDictHTML[word]
+ if d == None:
+ print "skipped %s" % (word)
+ return 0
+ try:
+ (r,i,s) = d[resource]
+ if i != None:
+ id = i
+ if s != None:
+ section = s
+ relevance = relevance + r
+ except:
+ pass
+ else:
+ wordsDictHTML[word] = {}
+ d = wordsDictHTML[word];
+ d[resource] = (relevance, id, section)
+ return relevance
+
+def addStringHTML(str, resource, id, section, relevance):
+ if str == None or len(str) < 3:
+ return -1
+ ret = 0
+ str = cleanupWordsString(str)
+ l = string.split(str)
+ for word in l:
+ if len(word) > 2:
+ try:
+ r = addWordHTML(word, resource, id, section, relevance)
+ if r < 0:
+ print "addWordHTML failed: %s %s" % (word, resource)
+ ret = ret + r
+ except:
+ print "addWordHTML failed: %s %s %d" % (word, resource, relevance)
+ print sys.exc_type, sys.exc_value
+
+ return ret
+
+def addWordArchive(word, id, relevance):
+ global wordsDictArchive
+
+ if word == None or len(word) < 3:
+ return -1
+ if id == None or id == -1:
+ return -1
+ if dropWords.has_key(word):
+ return 0
+ if ord(word[0]) > 0x80:
+ return 0
+
+ if wordsDictArchive.has_key(word):
+ d = wordsDictArchive[word]
+ if d == None:
+ print "skipped %s" % (word)
+ return 0
+ try:
+ r = d[id]
+ relevance = relevance + r
+ except:
+ pass
+ else:
+ wordsDictArchive[word] = {}
+ d = wordsDictArchive[word];
+ d[id] = relevance
+ return relevance
+
+def addStringArchive(str, id, relevance):
+ if str == None or len(str) < 3:
+ return -1
+ ret = 0
+ str = cleanupWordsString(str)
+ l = string.split(str)
+ for word in l:
+ i = len(word)
+ if i > 2:
+ try:
+ r = addWordArchive(word, id, relevance)
+ if r < 0:
+ print "addWordArchive failed: %s %s" % (word, id)
+ else:
+ ret = ret + r
+ except:
+ print "addWordArchive failed: %s %s %d" % (word, id, relevance)
+ print sys.exc_type, sys.exc_value
+ return ret
+
+#########################################################################
+# #
+# XML API description analysis #
+# #
+#########################################################################
+
+def loadAPI(filename):
+ doc = libxml2.parseFile(filename)
+ print "loaded %s" % (filename)
+ return doc
+
+def foundExport(file, symbol):
+ if file == None:
+ return 0
+ if symbol == None:
+ return 0
+ addFunction(symbol, file)
+ l = splitIdentifier(symbol)
+ for word in l:
+ addWord(word, file, symbol, 10)
+ return 1
+
+def analyzeAPIFile(top):
+ count = 0
+ name = top.prop("name")
+ cur = top.children
+ while cur != None:
+ if cur.type == 'text':
+ cur = cur.next
+ continue
+ if cur.name == "exports":
+ count = count + foundExport(name, cur.prop("symbol"))
+ else:
+ print "unexpected element %s in API doc <file name='%s'>" % (name)
+ cur = cur.next
+ return count
+
+def analyzeAPIFiles(top):
+ count = 0
+ cur = top.children
+
+ while cur != None:
+ if cur.type == 'text':
+ cur = cur.next
+ continue
+ if cur.name == "file":
+ count = count + analyzeAPIFile(cur)
+ else:
+ print "unexpected element %s in API doc <files>" % (cur.name)
+ cur = cur.next
+ return count
+
+def analyzeAPIEnum(top):
+ file = top.prop("file")
+ if file == None:
+ return 0
+ symbol = top.prop("name")
+ if symbol == None:
+ return 0
+
+ addEnum(symbol, file)
+ l = splitIdentifier(symbol)
+ for word in l:
+ addWord(word, file, symbol, 10)
+
+ return 1
+
+def analyzeAPIConst(top):
+ file = top.prop("file")
+ if file == None:
+ return 0
+ symbol = top.prop("name")
+ if symbol == None:
+ return 0
+
+ addConst(symbol, file)
+ l = splitIdentifier(symbol)
+ for word in l:
+ addWord(word, file, symbol, 10)
+
+ return 1
+
+def analyzeAPIType(top):
+ file = top.prop("file")
+ if file == None:
+ return 0
+ symbol = top.prop("name")
+ if symbol == None:
+ return 0
+
+ addType(symbol, file)
+ l = splitIdentifier(symbol)
+ for word in l:
+ addWord(word, file, symbol, 10)
+ return 1
+
+def analyzeAPIFunctype(top):
+ file = top.prop("file")
+ if file == None:
+ return 0
+ symbol = top.prop("name")
+ if symbol == None:
+ return 0
+
+ addFunctype(symbol, file)
+ l = splitIdentifier(symbol)
+ for word in l:
+ addWord(word, file, symbol, 10)
+ return 1
+
+def analyzeAPIStruct(top):
+ file = top.prop("file")
+ if file == None:
+ return 0
+ symbol = top.prop("name")
+ if symbol == None:
+ return 0
+
+ addStruct(symbol, file)
+ l = splitIdentifier(symbol)
+ for word in l:
+ addWord(word, file, symbol, 10)
+
+ info = top.prop("info")
+ if info != None:
+ info = string.replace(info, "'", " ")
+ info = string.strip(info)
+ l = string.split(info)
+ for word in l:
+ if len(word) > 2:
+ addWord(word, file, symbol, 5)
+ return 1
+
+def analyzeAPIMacro(top):
+ file = top.prop("file")
+ if file == None:
+ return 0
+ symbol = top.prop("name")
+ if symbol == None:
+ return 0
+ symbol = string.replace(symbol, "'", " ")
+ symbol = string.strip(symbol)
+
+ info = None
+ cur = top.children
+ while cur != None:
+ if cur.type == 'text':
+ cur = cur.next
+ continue
+ if cur.name == "info":
+ info = cur.content
+ break
+ cur = cur.next
+
+ l = splitIdentifier(symbol)
+ for word in l:
+ addWord(word, file, symbol, 10)
+
+ if info == None:
+ addMacro(symbol, file)
+ print "Macro %s description has no <info>" % (symbol)
+ return 0
+
+ info = string.replace(info, "'", " ")
+ info = string.strip(info)
+ addMacro(symbol, file, info)
+ l = string.split(info)
+ for word in l:
+ if len(word) > 2:
+ addWord(word, file, symbol, 5)
+ return 1
+
+def analyzeAPIFunction(top):
+ file = top.prop("file")
+ if file == None:
+ return 0
+ symbol = top.prop("name")
+ if symbol == None:
+ return 0
+
+ symbol = string.replace(symbol, "'", " ")
+ symbol = string.strip(symbol)
+ info = None
+ cur = top.children
+ while cur != None:
+ if cur.type == 'text':
+ cur = cur.next
+ continue
+ if cur.name == "info":
+ info = cur.content
+ elif cur.name == "return":
+ rinfo = cur.prop("info")
+ if rinfo != None:
+ rinfo = string.replace(rinfo, "'", " ")
+ rinfo = string.strip(rinfo)
+ addString(rinfo, file, symbol, 7)
+ elif cur.name == "arg":
+ ainfo = cur.prop("info")
+ if ainfo != None:
+ ainfo = string.replace(ainfo, "'", " ")
+ ainfo = string.strip(ainfo)
+ addString(ainfo, file, symbol, 5)
+ name = cur.prop("name")
+ if name != None:
+ name = string.replace(name, "'", " ")
+ name = string.strip(name)
+ addWord(name, file, symbol, 7)
+ cur = cur.next
+ if info == None:
+ print "Function %s description has no <info>" % (symbol)
+ addFunction(symbol, file, "")
+ else:
+ info = string.replace(info, "'", " ")
+ info = string.strip(info)
+ addFunction(symbol, file, info)
+ addString(info, file, symbol, 5)
+
+ l = splitIdentifier(symbol)
+ for word in l:
+ addWord(word, file, symbol, 10)
+
+ return 1
+
+def analyzeAPISymbols(top):
+ count = 0
+ cur = top.children
+
+ while cur != None:
+ if cur.type == 'text':
+ cur = cur.next
+ continue
+ if cur.name == "macro":
+ count = count + analyzeAPIMacro(cur)
+ elif cur.name == "function":
+ count = count + analyzeAPIFunction(cur)
+ elif cur.name == "const":
+ count = count + analyzeAPIConst(cur)
+ elif cur.name == "typedef":
+ count = count + analyzeAPIType(cur)
+ elif cur.name == "struct":
+ count = count + analyzeAPIStruct(cur)
+ elif cur.name == "enum":
+ count = count + analyzeAPIEnum(cur)
+ elif cur.name == "functype":
+ count = count + analyzeAPIFunctype(cur)
+ else:
+ print "unexpected element %s in API doc <files>" % (cur.name)
+ cur = cur.next
+ return count
+
+def analyzeAPI(doc):
+ count = 0
+ if doc == None:
+ return -1
+ root = doc.getRootElement()
+ if root.name != "api":
+ print "Unexpected root name"
+ return -1
+ cur = root.children
+ while cur != None:
+ if cur.type == 'text':
+ cur = cur.next
+ continue
+ if cur.name == "files":
+ pass
+# count = count + analyzeAPIFiles(cur)
+ elif cur.name == "symbols":
+ count = count + analyzeAPISymbols(cur)
+ else:
+ print "unexpected element %s in API doc" % (cur.name)
+ cur = cur.next
+ return count
+
+#########################################################################
+# #
+# Web pages parsing and analysis #
+# #
+#########################################################################
+
+import glob
+
+def analyzeHTMLText(doc, resource, p, section, id):
+ words = 0
+ try:
+ content = p.content
+ words = words + addStringHTML(content, resource, id, section, 5)
+ except:
+ return -1
+ return words
+
+def analyzeHTMLPara(doc, resource, p, section, id):
+ words = 0
+ try:
+ content = p.content
+ words = words + addStringHTML(content, resource, id, section, 5)
+ except:
+ return -1
+ return words
+
+def analyzeHTMLPre(doc, resource, p, section, id):
+ words = 0
+ try:
+ content = p.content
+ words = words + addStringHTML(content, resource, id, section, 5)
+ except:
+ return -1
+ return words
+
+def analyzeHTML(doc, resource, p, section, id):
+ words = 0
+ try:
+ content = p.content
+ words = words + addStringHTML(content, resource, id, section, 5)
+ except:
+ return -1
+ return words
+
+def analyzeHTML(doc, resource):
+ para = 0;
+ ctxt = doc.xpathNewContext()
+ try:
+ res = ctxt.xpathEval("//head/title")
+ title = res[0].content
+ except:
+ title = "Page %s" % (resource)
+ addPage(resource, title)
+ try:
+ items = ctxt.xpathEval("//h1 | //h2 | //h3 | //text()")
+ section = title
+ id = ""
+ for item in items:
+ if item.name == 'h1' or item.name == 'h2' or item.name == 'h3':
+ section = item.content
+ if item.prop("id"):
+ id = item.prop("id")
+ elif item.prop("name"):
+ id = item.prop("name")
+ elif item.type == 'text':
+ analyzeHTMLText(doc, resource, item, section, id)
+ para = para + 1
+ elif item.name == 'p':
+ analyzeHTMLPara(doc, resource, item, section, id)
+ para = para + 1
+ elif item.name == 'pre':
+ analyzeHTMLPre(doc, resource, item, section, id)
+ para = para + 1
+ else:
+ print "Page %s, unexpected %s element" % (resource, item.name)
+ except:
+ print "Page %s: problem analyzing" % (resource)
+ print sys.exc_type, sys.exc_value
+
+ return para
+
+def analyzeHTMLPages():
+ ret = 0
+ HTMLfiles = glob.glob("*.html") + glob.glob("tutorial/*.html")
+ for html in HTMLfiles:
+ if html[0:3] == "API":
+ continue
+ if html == "xslt.html":
+ continue
+ try:
+ doc = libxml2.htmlParseFile(html, None)
+ res = analyzeHTML(doc, html)
+ print "Parsed %s : %d paragraphs" % (html, res)
+ ret = ret + 1
+ except:
+ print "could not parse %s" % (html)
+ return ret
+
+#########################################################################
+# #
+# Mail archives parsing and analysis #
+# #
+#########################################################################
+
+import time
+
+def getXMLDateArchive(t = None):
+ if t == None:
+ t = time.time()
+ T = time.gmtime(t)
+ month = time.strftime("%B", T)
+ year = T[0]
+ url = "http://mail.gnome.org/archives/xslt/%d-%s/date.html" % (year, month)
+ return url
+
+def scanXMLMsgArchive(url, title, force = 0):
+ if url == None or title == None:
+ return 0
+
+ ID = checkXMLMsgArchive(url)
+ if force == 0 and ID != -1:
+ return 0
+
+ if ID == -1:
+ ID = addXMLMsgArchive(url, title)
+ if ID == -1:
+ return 0
+
+ try:
+ print "Loading %s" % (url)
+ doc = libxml2.htmlParseFile(url, None);
+ except:
+ doc = None
+ if doc == None:
+ print "Failed to parse %s" % (url)
+ return 0
+
+ addStringArchive(title, ID, 20)
+ ctxt = doc.xpathNewContext()
+ texts = ctxt.xpathEval("//pre//text()")
+ for text in texts:
+ addStringArchive(text.content, ID, 5)
+
+ return 1
+
+def scanXMLDateArchive(t = None, force = 0):
+ global wordsDictArchive
+
+ wordsDictArchive = {}
+
+ url = getXMLDateArchive(t)
+ print "loading %s" % (url)
+ try:
+ doc = libxml2.htmlParseFile(url, None);
+ except:
+ doc = None
+ if doc == None:
+ print "Failed to parse %s" % (url)
+ return -1
+ ctxt = doc.xpathNewContext()
+ anchors = ctxt.xpathEval("//a[@href]")
+ links = 0
+ newmsg = 0
+ for anchor in anchors:
+ href = anchor.prop("href")
+ if href == None or href[0:3] != "msg":
+ continue
+ try:
+ links = links + 1
+
+ msg = libxml2.buildURI(href, url)
+ title = anchor.content
+ if title != None and title[0:4] == 'Re: ':
+ title = title[4:]
+ if title != None and title[0:6] == '[xml] ':
+ title = title[6:]
+ if title != None and title[0:7] == '[xslt] ':
+ title = title[7:]
+ newmsg = newmsg + scanXMLMsgArchive(msg, title, force)
+
+ except:
+ pass
+
+ return newmsg
+
+
+#########################################################################
+# #
+# Main code: open the DB, the API XML and analyze it #
+# #
+#########################################################################
+try:
+ openMySQL()
+except:
+ print "Failed to open the database"
+ print sys.exc_type, sys.exc_value
+ sys.exit(1)
+
+def analyzeArchives(t = None, force = 0):
+ global wordsDictArchive
+
+ ret = scanXMLDateArchive(t, force)
+ print "Indexed %d words in %d archive pages" % (len(wordsDictArchive), ret)
+
+ i = 0
+ skipped = 0
+ for word in wordsDictArchive.keys():
+ refs = wordsDictArchive[word]
+ if refs == None:
+ skipped = skipped + 1
+ continue;
+ for id in refs.keys():
+ relevance = refs[id]
+ updateWordArchive(word, id, relevance)
+ i = i + 1
+
+ print "Found %d associations in HTML pages" % (i)
+
+def analyzeHTMLTop():
+ global wordsDictHTML
+
+ ret = analyzeHTMLPages()
+ print "Indexed %d words in %d HTML pages" % (len(wordsDictHTML), ret)
+
+ i = 0
+ skipped = 0
+ for word in wordsDictHTML.keys():
+ refs = wordsDictHTML[word]
+ if refs == None:
+ skipped = skipped + 1
+ continue;
+ for resource in refs.keys():
+ (relevance, id, section) = refs[resource]
+ updateWordHTML(word, resource, section, id, relevance)
+ i = i + 1
+
+ print "Found %d associations in HTML pages" % (i)
+
+def analyzeAPITop():
+ global wordsDict
+ global API
+
+ try:
+ doc = loadAPI(API)
+ ret = analyzeAPI(doc)
+ print "Analyzed %d blocs" % (ret)
+ doc.freeDoc()
+ except:
+ print "Failed to parse and analyze %s" % (API)
+ print sys.exc_type, sys.exc_value
+ sys.exit(1)
+
+ print "Indexed %d words" % (len(wordsDict))
+ i = 0
+ skipped = 0
+ for word in wordsDict.keys():
+ refs = wordsDict[word]
+ if refs == None:
+ skipped = skipped + 1
+ continue;
+ for (module, symbol) in refs.keys():
+ updateWord(word, symbol, refs[(module, symbol)])
+ i = i + 1
+
+ print "Found %d associations, skipped %d words" % (i, skipped)
+
+def usage():
+ print "Usage index.py [--force] [--archive] [--archive-year year] [--archive-month month] [--API] [--docs]"
+ sys.exit(1)
+
+def main():
+ args = sys.argv[1:]
+ force = 0
+ if args:
+ i = 0
+ while i < len(args):
+ if args[i] == '--force':
+ force = 1
+ elif args[i] == '--archive':
+ analyzeArchives(None, force)
+ elif args[i] == '--archive-year':
+ i = i + 1;
+ year = args[i]
+ months = ["January" , "February", "March", "April", "May",
+ "June", "July", "August", "September", "October",
+ "November", "December"];
+ for month in months:
+ try:
+ str = "%s-%s" % (year, month)
+ T = time.strptime(str, "%Y-%B")
+ t = time.mktime(T) + 3600 * 24 * 10;
+ analyzeArchives(t, force)
+ except:
+ print "Failed to index month archive:"
+ print sys.exc_type, sys.exc_value
+ elif args[i] == '--archive-month':
+ i = i + 1;
+ month = args[i]
+ try:
+ T = time.strptime(month, "%Y-%B")
+ t = time.mktime(T) + 3600 * 24 * 10;
+ analyzeArchives(t, force)
+ except:
+ print "Failed to index month archive:"
+ print sys.exc_type, sys.exc_value
+ elif args[i] == '--API':
+ analyzeAPITop()
+ elif args[i] == '--docs':
+ analyzeHTMLTop()
+ else:
+ usage()
+ i = i + 1
+ else:
+ usage()
+
+if __name__ == "__main__":
+ main()
diff --git a/libxslt/doc/internals.html b/libxslt/doc/internals.html
new file mode 100644
index 0000000..fb51345
--- /dev/null
+++ b/libxslt/doc/internals.html
@@ -0,0 +1,312 @@
+<?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>Library internals</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>Library internals</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><h3>Table of contents</h3><ul>
+ <li><a href="internals.html#Introducti">Introduction</a></li>
+ <li><a href="internals.html#Basics">Basics</a></li>
+ <li><a href="internals.html#Keep">Keep it simple stupid</a></li>
+ <li><a href="internals.html#libxml">The libxml nodes</a></li>
+ <li><a href="internals.html#XSLT">The XSLT processing steps</a></li>
+ <li><a href="internals.html#XSLT1">The XSLT stylesheet compilation</a></li>
+ <li><a href="internals.html#XSLT2">The XSLT template compilation</a></li>
+ <li><a href="internals.html#processing">The processing itself</a></li>
+ <li><a href="internals.html#XPath">XPath expressions compilation</a></li>
+ <li><a href="internals.html#XPath1">XPath interpretation</a></li>
+ <li><a href="internals.html#Descriptio">Description of XPath
+ Objects</a></li>
+ <li><a href="internals.html#XPath3">XPath functions</a></li>
+ <li><a href="internals.html#stack">The variables stack frame</a></li>
+ <li><a href="internals.html#Extension">Extension support</a></li>
+ <li><a href="internals.html#Futher">Further reading</a></li>
+ <li><a href="internals.html#TODOs">TODOs</a></li>
+ <li><a href="internals.html#Thanks">Thanks</a></li>
+</ul><h3><a name="Introducti2" id="Introducti2">Introduction</a></h3><p>This document describes the processing of <a href="http://xmlsoft.org/XSLT/">libxslt</a>, the <a href="http://www.w3.org/TR/xslt">XSLT</a> C library developed for the <a href="http://www.gnome.org/">GNOME</a> project.</p><p>Note: this documentation is by definition incomplete and I am not good at
+spelling, grammar, so patches and suggestions are <a href="mailto:veillard@redhat.com">really welcome</a>.</p><h3><a name="Basics1" id="Basics1">Basics</a></h3><p>XSLT is a transformation language. It takes an input document and a
+stylesheet document and generates an output document:</p><p align="center"><img src="processing.gif" alt="the XSLT processing model" /></p><p>Libxslt is written in C. It relies on <a href="http://www.xmlsoft.org/">libxml</a>, the XML C library for GNOME, for
+the following operations:</p><ul>
+ <li>parsing files</li>
+ <li>building the in-memory DOM structure associated with the documents
+ handled</li>
+ <li>the XPath implementation</li>
+ <li>serializing back the result document to XML and HTML. (Text is handled
+ directly.)</li>
+</ul><h3><a name="Keep1" id="Keep1">Keep it simple stupid</a></h3><p>Libxslt is not very specialized. It is built under the assumption that all
+nodes from the source and output document can fit in the virtual memory of
+the system. There is a big trade-off there. It is fine for reasonably sized
+documents but may not be suitable for large sets of data. The gain is that it
+can be used in a relatively versatile way. The input or output may never be
+serialized, but the size of documents it can handle are limited by the size
+of the memory available.</p><p>More specialized memory handling approaches are possible, like building
+the input tree from a serialization progressively as it is consumed,
+factoring repetitive patterns, or even on-the-fly generation of the output as
+the input is parsed but it is possible only for a limited subset of the
+stylesheets. In general the implementation of libxslt follows the following
+pattern:</p><ul>
+ <li>KISS (keep it simple stupid)</li>
+ <li>when there is a clear bottleneck optimize on top of this simple
+ framework and refine only as much as is needed to reach the expected
+ result</li>
+</ul><p>The result is not that bad, clearly one can do a better job but more
+specialized too. Most optimization like building the tree on-demand would
+need serious changes to the libxml XPath framework. An easy step would be to
+serialize the output directly (or call a set of SAX-like output handler to
+keep this a flexible interface) and hence avoid the memory consumption of the
+result.</p><h3><a name="libxml" id="libxml">The libxml nodes</a></h3><p>DOM-like trees, as used and generated by libxml and libxslt, are
+relatively complex. Most node types follow the given structure except a few
+variations depending on the node type:</p><p align="center"><img src="node.gif" alt="description of a libxml node" /></p><p>Nodes carry a <strong>name</strong> and the node <strong>type</strong>
+indicates the kind of node it represents, the most common ones are:</p><ul>
+ <li>document nodes</li>
+ <li>element nodes</li>
+ <li>text nodes</li>
+</ul><p>For the XSLT processing, entity nodes should not be generated (i.e. they
+should be replaced by their content). Most nodes also contains the following
+"navigation" information:</p><ul>
+ <li>the containing <strong>doc</strong>ument</li>
+ <li>the <strong>parent</strong> node</li>
+ <li>the first <strong>children</strong> node</li>
+ <li>the <strong>last</strong> children node</li>
+ <li>the <strong>prev</strong>ious sibling</li>
+ <li>the following sibling (<strong>next</strong>)</li>
+</ul><p>Elements nodes carries the list of attributes in the properties, an
+attribute itself holds the navigation pointers and the children list (the
+attribute value is not represented as a simple string to allow usage of
+entities references).</p><p>The <strong>ns</strong> points to the namespace declaration for the
+namespace associated to the node, <strong>nsDef</strong> is the linked list
+of namespace declaration present on element nodes.</p><p>Most nodes also carry an <strong>_private</strong> pointer which can be
+used by the application to hold specific data on this node.</p><h3><a name="XSLT" id="XSLT">The XSLT processing steps</a></h3><p>There are a few steps which are clearly decoupled at the interface
+level:</p><ol>
+ <li>parse the stylesheet and generate a DOM tree</li>
+ <li>take the stylesheet tree and build a compiled version of it (the
+ compilation phase)</li>
+ <li>take the input and generate a DOM tree</li>
+ <li>process the stylesheet against the input tree and generate an output
+ tree</li>
+ <li>serialize the output tree</li>
+</ol><p>A few things should be noted here:</p><ul>
+ <li>the steps 1/ 3/ and 5/ are optional: the DOM representing the
+ stylesheet and input can be created by other means, not just by parsing
+ serialized XML documents, and similarly the result tree DOM can be
+ made available to other processeswithout being serialized.
+ </li><li>the stylesheet obtained at 2/ can be reused by multiple processing 4/
+ (and this should also work in threaded programs)</li>
+ <li>the tree provided in 2/ should never be freed using xmlFreeDoc, but by
+ freeing the stylesheet.</li>
+ <li>the input tree created in step 3/ is not modified except the
+ _private field which may be used for labelling keys if used by the
+ stylesheet. It's not modified at all in step 4/ to allow parallel
+ processing using a shared precompiled stylesheet.</li>
+</ul><h3><a name="XSLT1" id="XSLT1">The XSLT stylesheet compilation</a></h3><p>This is the second step described. It takes a stylesheet tree, and
+"compiles" it. This associates to each node a structure stored in the
+_private field and containing information computed in the stylesheet:</p><p align="center"><img src="stylesheet.gif" alt="a compiled XSLT stylesheet" /></p><p>One xsltStylesheet structure is generated per document parsed for the
+stylesheet. XSLT documents allow includes and imports of other documents,
+imports are stored in the <strong>imports</strong> list (hence keeping the
+tree hierarchy of includes which is very important for a proper XSLT
+processing model) and includes are stored in the <strong>doclist</strong>
+list. An imported stylesheet has a parent link to allow browsing of the
+tree.</p><p>The DOM tree associated to the document is stored in <strong>doc</strong>.
+It is preprocessed to remove ignorable empty nodes and all the nodes in the
+XSLT namespace are subject to precomputing. This usually consist of
+extracting all the context information from the context tree (attributes,
+namespaces, XPath expressions), and storing them in an xsltStylePreComp
+structure associated to the <strong>_private</strong> field of the node.</p><p>A couple of notable exceptions to this are XSLT template nodes (more on
+this later) and attribute value templates. If they are actually templates,
+the value cannot be computed at compilation time. (Some preprocessing could
+be done like isolation and preparsing of the XPath subexpressions but it's
+not done, yet.)</p><p>The xsltStylePreComp structure also allows storing of the precompiled form
+of an XPath expression that can be associated to an XSLT element (more on
+this later).</p><h3><a name="XSLT2" id="XSLT2">The XSLT template compilation</a></h3><p>A proper handling of templates lookup is one of the keys of fast XSLT
+processing. (Given a node in the source document this is the process of
+finding which templates should be applied to this node.) Libxslt follows the
+hint suggested in the <a href="http://www.w3.org/TR/xslt#patterns">5.2
+Patterns</a> section of the XSLT Recommendation, i.e. it doesn't evaluate it
+as an XPath expression but tokenizes it and compiles it as a set of rules to
+be evaluated on a candidate node. There usually is an indication of the node
+name in the last step of this evaluation and this is used as a key check for
+the match. As a result libxslt builds a relatively more complex set of
+structures for the templates:</p><p align="center"><img src="templates.gif" alt="The templates related structure" /></p><p>Let's describe a bit more closely what is built. First the xsltStylesheet
+structure holds a pointer to the template hash table. All the XSLT patterns
+compiled in this stylesheet are indexed by the value of the the target
+element (or attribute, pi ...) name, so when a element or an attribute "foo"
+needs to be processed the lookup is done using the name as a key.</p><p>Each of the patterns is compiled into an xsltCompMatch
+(i.e. an ''XSLT compiled match') structure. It holds
+the set of rules based on the tokenization of the pattern stored in reverse
+order (matching is easier this way). </p><p>The xsltCompMatch are then stored in the hash table, the clash list is
+itself sorted by priority of the template to implement "naturally" the XSLT
+priority rules.</p><p>Associated to the compiled pattern is the xsltTemplate itself containing
+the information required for the processing of the pattern including, of
+course, a pointer to the list of elements used for building the pattern
+result.</p><p>Last but not least a number of patterns do not fit in the hash table
+because they are not associated to a name, this is the case for patterns
+applying to the root, any element, any attributes, text nodes, pi nodes, keys
+etc. Those are stored independently in the stylesheet structure as separate
+linked lists of xsltCompMatch.</p><h3><a name="processing" id="processing">The processing itself</a></h3><p>The processing is defined by the XSLT specification (the basis of the
+algorithm is explained in <a href="http://www.w3.org/TR/xslt#section-Introduction">the Introduction</a>
+section). Basically it works by taking the root of the input document
+as the cureent node and applying the following algorithm:</p><ol>
+ <li>Finding the template applying to current node.
+ This is a lookup in the template hash table, walking the hash list until
+ the node satisfies all the steps of the pattern, then checking the
+ appropriate global template(s) (i.e. templates applying to a node type)
+ to see if there isn't a higher priority rule to apply</li>
+ <li>If there is no template, apply the default rule (recurse on the
+ children as the current node)</li>
+ <li>else walk the content list of the selected templates, for each of them:
+ <ul>
+ <li>if the node is in the XSLT namespace then the node has a _private
+ field pointing to the preprocessed values, jump to the specific
+ code</li>
+ <li>if the node is in an extension namespace, look up the associated
+ behavior</li>
+ <li>otherwise copy the node.</li>
+ </ul>
+ <p>The closure is usually done through the XSLT
+ <strong>apply-templates</strong>construct, which invokes this process
+ recursively starting at step 1, to find the appropriate template
+ for the nodes selected by the 'select' attribute of the apply-templates
+ instruction (default: the children of the node currently being
+ processed)</p>
+ </li>
+</ol><p>Note that large parts of the input tree may not be processed by a given
+stylesheet and that conversely some may be processed multiple times.
+(This often is the case when a Table of Contents is built).</p><p>The module <code>transform.c</code> is the one implementing most of this
+logic. <strong>xsltApplyStylesheet()</strong> is the entry point, it
+allocates an xsltTransformContext containing the following:</p><ul>
+ <li>a pointer to the stylesheet being processed</li>
+ <li>a stack of templates</li>
+ <li>a stack of variables and parameters</li>
+ <li>an XPath context</li>
+ <li>the template mode</li>
+ <li>current document</li>
+ <li>current input node</li>
+ <li>current selected node list</li>
+ <li>the current insertion points in the output document</li>
+ <li>a couple of hash tables for extension elements and functions</li>
+</ul><p>Then a new document gets allocated (HTML or XML depending on the type of
+output), the user parameters and global variables and parameters are
+evaluated. Then <strong>xsltProcessOneNode()</strong> which implements the
+1-2-3 algorithm is called on the docuemnt node of the input. Step 1/ is
+implemented by calling <strong>xsltGetTemplate()</strong>, step 2/ is
+implemented by <strong>xsltDefaultProcessOneNode()</strong> and step 3/ is
+implemented by <strong>xsltApplyOneTemplate()</strong>.</p><h3><a name="XPath" id="XPath">XPath expression compilation</a></h3><p>The XPath support is actually implemented in the libxml module (where it
+is reused by the XPointer implementation). XPath is a relatively classic
+expression language. The only uncommon feature is that it is working on XML
+trees and hence has specific syntax and types to handle them.</p><p>XPath expressions are compiled using <strong>xmlXPathCompile()</strong>.
+It will take an expression string in input and generate a structure
+containing the parsed expression tree, for example the expression:</p><pre>/doc/chapter[title='Introduction']</pre><p>will be compiled as</p><pre>Compiled Expression : 10 elements
+ SORT
+ COLLECT 'child' 'name' 'node' chapter
+ COLLECT 'child' 'name' 'node' doc
+ ROOT
+ PREDICATE
+ SORT
+ EQUAL =
+ COLLECT 'child' 'name' 'node' title
+ NODE
+ ELEM Object is a string : Introduction
+ COLLECT 'child' 'name' 'node' title
+ NODE</pre><p>This can be tested using the <code>testXPath</code> command (in the
+libxml codebase) using the <code>--tree</code> option.</p><p>Again, the KISS approach is used. No optimization is done. This could be
+an interesting thing to add. <a href="http://www-106.ibm.com/developerworks/library/x-xslt2/?dwzone=x?open&amp;l=132%2ct=gr%2c+p=saxon">Michael
+Kay describes</a> a lot of possible and interesting optimizations done in
+Saxon which would be possible at this level. I'm unsure they would provide
+much gain since the expressions tends to be relatively simple in general and
+stylesheets are still hand generated. Optimizations at the interpretation
+sounds likely to be more efficient.</p><h3><a name="XPath1" id="XPath1">XPath interpretation</a></h3><p>The interpreter is implemented by <strong>xmlXPathCompiledEval()</strong>
+which is the front-end to <strong>xmlXPathCompOpEval()</strong> the function
+implementing the evaluation of the expression tree. This evaluation follows
+the KISS approach again. It's recursive and calls
+<strong>xmlXPathNodeCollectAndTest()</strong> to collect a set of nodes when
+evaluating a <code>COLLECT</code> node.</p><p>An evaluation is done within the framework of an XPath context stored in
+an <strong>xmlXPathContext</strong> structure, in the framework of a
+transformation the context is maintained within the XSLT context. Its content
+follows the requirements from the XPath specification:</p><ul>
+ <li>the current document</li>
+ <li>the current node</li>
+ <li>a hash table of defined variables (but not used by XSLT,
+ which uses its own stack frame for variables, described below)</li>
+ <li>a hash table of defined functions</li>
+ <li>the proximity position (the place of the node in the current node
+ list)</li>
+ <li>the context size (the size of the current node list)</li>
+ <li>the array of namespace declarations in scope (there also is a namespace
+ hash table but it is not used in the XSLT transformation).</li>
+</ul><p>For the purpose of XSLT an <strong>extra</strong> pointer has been added
+allowing to retrieve the XSLT transformation context. When an XPath
+evaluation is about to be performed, an XPath parser context is allocated
+containing an XPath object stack (this is actually an XPath evaluation
+context, this is a relic of the time where there was no separate parsing and
+evaluation phase in the XPath implementation). Here is an overview of the set
+of contexts associated to an XPath evaluation within an XSLT
+transformation:</p><p align="center"><img src="contexts.gif" alt="The set of contexts associated " /></p><p>Clearly this is a bit too complex and confusing and should be refactored
+at the next set of binary incompatible releases of libxml. For example the
+xmlXPathCtxt has a lot of unused parts and should probably be merged with
+xmlXPathParserCtxt.</p><h3><a name="Descriptio" id="Descriptio">Description of XPath Objects</a></h3><p>An XPath expression manipulates XPath objects. XPath defines the default
+types boolean, numbers, strings and node sets. XSLT adds the result tree
+fragment type which is basically an unmodifiable node set.</p><p>Implementation-wise, libxml follows again a KISS approach, the
+xmlXPathObject is a structure containing a type description and the various
+possibilities. (Using an enum could have gained some bytes.) In the case of
+node sets (or result tree fragments), it points to a separate xmlNodeSet
+object which contains the list of pointers to the document nodes:</p><p align="center"><img src="object.gif" alt="An Node set object pointing to " /></p><p>The <a href="http://xmlsoft.org/html/libxml-xpath.html">XPath API</a> (and
+its <a href="http://xmlsoft.org/html/libxml-xpathinternals.html">'internal'
+part</a>) includes a number of functions to create, copy, compare, convert or
+free XPath objects.</p><h3><a name="XPath3" id="XPath3">XPath functions</a></h3><p>All the XPath functions available to the interpreter are registered in the
+function hash table linked from the XPath context. They all share the same
+signature:</p><pre>void xmlXPathFunc (xmlXPathParserContextPtr ctxt, int nargs);</pre><p>The first argument is the XPath interpretation context, holding the
+interpretation stack. The second argument defines the number of objects
+passed on the stack for the function to consume (last argument is on top of
+the stack).</p><p>Basically an XPath function does the following:</p><ul>
+ <li>check <code>nargs</code> for proper handling of errors or functions
+ with variable numbers of parameters</li>
+ <li>pop the parameters from the stack using <code>obj =
+ valuePop(ctxt);</code></li>
+ <li>do the function specific computation</li>
+ <li>push the result parameter on the stack using <code>valuePush(ctxt,
+ res);</code></li>
+ <li>free up the input parameters with
+ <code>xmlXPathFreeObject(obj);</code></li>
+ <li>return</li>
+</ul><p>Sometime the work can be done directly by modifying in-situ the top object
+on the stack <code>ctxt-&gt;value</code>.</p><h3><a name="stack" id="stack">The XSLT variables stack frame</a></h3><p>Not to be confused with XPath object stack, this stack holds the XSLT
+variables and parameters as they are defined through the recursive calls of
+call-template, apply-templates and default templates. This is used to define
+the scope of variables being called.</p><p>This part seems to be one needing most work , first it is
+done in a very inefficient way since the location of the variables and
+parameters within the stylesheet tree is still done at run time (it really
+should be done statically at compile time), and I am still unsure that my
+understanding of the template variables and parameter scope is actually
+right.</p><p>This part of the documentation is still to be written once this part of
+the code will be stable. <span style="background-color: #FF0000">TODO</span></p><h3><a name="Extension" id="Extension">Extension support</a></h3><p>There is a separate document explaining <a href="extensions.html">how the
+extension support works</a>.</p><h3><a name="Futher" id="Futher">Further reading</a></h3><p>Michael Kay wrote <a href="http://www-106.ibm.com/developerworks/library/x-xslt2/?dwzone=x?open&amp;l=132%2ct=gr%2c+p=saxon">a
+really interesting article on Saxon internals</a> and the work he did on
+performance issues. I wish I had read it before starting libxslt design (I
+would probably have avoided a few mistakes and progressed faster). A lot of
+the ideas in his papers should be implemented or at least tried in
+libxslt.</p><p>The <a href="http://xmlsoft.org/">libxml documentation</a>, especially <a href="http://xmlsoft.org/xmlio.html">the I/O interfaces</a> and the <a href="http://xmlsoft.org/xmlmem.html">memory management</a>.</p><h3><a name="TODOs" id="TODOs">TODOs</a></h3><p>redesign the XSLT stack frame handling. Far too much work is done at
+execution time. Similarly for the attribute value templates handling, at
+least the embedded subexpressions ought to be precompiled.</p><p>Allow output to be saved to a SAX like output (this notion of SAX like API
+for output should be added directly to libxml).</p><p>Implement and test some of the optimization explained by Michael Kay
+especially:</p><ul>
+ <li>static slot allocation on the stack frame</li>
+ <li>specific boolean interpretation of an XPath expression</li>
+ <li>some of the sorting optimization</li>
+ <li>Lazy evaluation of location path. (this may require more changes but
+ sounds really interesting. XT does this too.)</li>
+ <li>Optimization of an expression tree (This could be done as a completely
+ independent module.)</li>
+</ul><p></p><p>Error reporting, there is a lot of case where the XSLT specification
+specify that a given construct is an error are not checked adequately by
+libxslt. Basically one should do a complete pass on the XSLT spec again and
+add all tests to the stylesheet compilation. Using the DTD provided in the
+appendix and making direct checks using the libxml validation API sounds a
+good idea too (though one should take care of not raising errors for
+elements/attributes in different namespaces).</p><p>Double check all the places where the stylesheet compiled form might be
+modified at run time (extra removal of blanks nodes, hint on the
+xsltCompMatch).</p><h3><a name="Thanks" id="Thanks">Thanks:</a></h3><p>Thanks to <a href="http://cmsmcq.com/">Michael Sperberg-McQueen</a> for
+ various fixes and clarifications on this document!</p><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/intro.html b/libxslt/doc/intro.html
new file mode 100644
index 0000000..0243ece
--- /dev/null
+++ b/libxslt/doc/intro.html
@@ -0,0 +1,24 @@
+<?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>Introduction</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>Introduction</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p>This document describes <a href="http://xmlsoft.org/XSLT/">libxslt</a>,
+the <a href="http://www.w3.org/TR/xslt">XSLT</a> C library developed for the
+<a href="http://www.gnome.org/">GNOME</a> project.</p><p>Here are some key points about libxslt:</p><ul>
+ <li>Libxslt is a C implementation</li>
+ <li>Libxslt is based on libxml for XML parsing, tree manipulation and XPath
+ support</li>
+ <li>It is written in plain C, making as few assumptions as possible, and
+ sticking closely to ANSI C/POSIX for easy embedding. Should works on
+ Linux/Unix/Windows.</li>
+ <li>This library is released under the <a href="http://www.opensource.org/licenses/mit-license.html">MIT
+ Licence</a></li>
+ <li>Though not designed primarily with performances in mind, libxslt seems
+ to be a relatively fast processor.</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/libxslt-api.xml b/libxslt/doc/libxslt-api.xml
new file mode 100644
index 0000000..1cf7c89
--- /dev/null
+++ b/libxslt/doc/libxslt-api.xml
@@ -0,0 +1,3201 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<api name='libxslt'>
+ <files>
+ <file name='attributes'>
+ <summary>interface for the XSLT attribute handling</summary>
+ <description>this module handles the specificities of attribute and attribute groups processing. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='xsltResolveStylesheetAttributeSet' type='function'/>
+ <exports symbol='xsltParseStylesheetAttributeSet' type='function'/>
+ <exports symbol='xsltApplyAttributeSet' type='function'/>
+ <exports symbol='xsltFreeAttributeSetsHashes' type='function'/>
+ </file>
+ <file name='documents'>
+ <summary>interface for the document handling</summary>
+ <description>implements document loading and cache (multiple document() reference for the same resources must be equal. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='XSLT_LOAD_START' type='enum'/>
+ <exports symbol='XSLT_LOAD_DOCUMENT' type='enum'/>
+ <exports symbol='XSLT_LOAD_STYLESHEET' type='enum'/>
+ <exports symbol='xsltLoadType' type='typedef'/>
+ <exports symbol='xsltDocDefaultLoader' type='variable'/>
+ <exports symbol='xsltFreeStyleDocuments' type='function'/>
+ <exports symbol='xsltDocLoaderFunc' type='function'/>
+ <exports symbol='xsltLoadDocument' type='function'/>
+ <exports symbol='xsltNewStyleDocument' type='function'/>
+ <exports symbol='xsltSetLoaderFunc' type='function'/>
+ <exports symbol='xsltFreeDocuments' type='function'/>
+ <exports symbol='xsltNewDocument' type='function'/>
+ <exports symbol='xsltLoadStyleDocument' type='function'/>
+ <exports symbol='xsltFindDocument' type='function'/>
+ </file>
+ <file name='extensions'>
+ <summary>interface for the extension support</summary>
+ <description>This provide the API needed for simple and module extension support. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='xsltRegisterExtFunction' type='function'/>
+ <exports symbol='xsltRegisterExtModuleElement' type='function'/>
+ <exports symbol='xsltInitCtxtExts' type='function'/>
+ <exports symbol='xsltGetExtData' type='function'/>
+ <exports symbol='xsltStyleGetExtData' type='function'/>
+ <exports symbol='xsltStyleExtInitFunction' type='function'/>
+ <exports symbol='xsltInitGlobals' type='function'/>
+ <exports symbol='xsltShutdownExts' type='function'/>
+ <exports symbol='xsltExtModuleElementPreComputeLookup' type='function'/>
+ <exports symbol='xsltRegisterTestModule' type='function'/>
+ <exports symbol='xsltStyleStylesheetLevelGetExtData' type='function'/>
+ <exports symbol='xsltExtModuleElementLookup' type='function'/>
+ <exports symbol='xsltStyleExtShutdownFunction' type='function'/>
+ <exports symbol='xsltInitElemPreComp' type='function'/>
+ <exports symbol='xsltDebugDumpExtensions' type='function'/>
+ <exports symbol='xsltGetExtInfo' type='function'/>
+ <exports symbol='xsltExtModuleTopLevelLookup' type='function'/>
+ <exports symbol='xsltFreeExts' type='function'/>
+ <exports symbol='xsltCheckExtURI' type='function'/>
+ <exports symbol='xsltExtModuleFunctionLookup' type='function'/>
+ <exports symbol='xsltPreComputeExtModuleElement' type='function'/>
+ <exports symbol='xsltRegisterExtModuleTopLevel' type='function'/>
+ <exports symbol='xsltPreComputeFunction' type='function'/>
+ <exports symbol='xsltTopLevelFunction' type='function'/>
+ <exports symbol='xsltShutdownCtxtExts' type='function'/>
+ <exports symbol='xsltXPathGetTransformContext' type='function'/>
+ <exports symbol='xsltRegisterExtElement' type='function'/>
+ <exports symbol='xsltExtInitFunction' type='function'/>
+ <exports symbol='xsltFreeCtxtExts' type='function'/>
+ <exports symbol='xsltUnregisterExtModule' type='function'/>
+ <exports symbol='xsltRegisterExtModuleFull' type='function'/>
+ <exports symbol='xsltUnregisterExtModuleTopLevel' type='function'/>
+ <exports symbol='xsltNewElemPreComp' type='function'/>
+ <exports symbol='xsltUnregisterExtModuleElement' type='function'/>
+ <exports symbol='xsltUnregisterExtModuleFunction' type='function'/>
+ <exports symbol='xsltCheckExtPrefix' type='function'/>
+ <exports symbol='xsltRegisterExtModule' type='function'/>
+ <exports symbol='xsltExtElementLookup' type='function'/>
+ <exports symbol='xsltRegisterExtModuleFunction' type='function'/>
+ <exports symbol='xsltRegisterExtPrefix' type='function'/>
+ <exports symbol='xsltExtShutdownFunction' type='function'/>
+ </file>
+ <file name='extra'>
+ <summary>interface for the non-standard features</summary>
+ <description>implement some extension outside the XSLT namespace but not EXSLT with is in a different library. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='XSLT_XT_NAMESPACE' type='macro'/>
+ <exports symbol='XSLT_XALAN_NAMESPACE' type='macro'/>
+ <exports symbol='XSLT_SAXON_NAMESPACE' type='macro'/>
+ <exports symbol='XSLT_LIBXSLT_NAMESPACE' type='macro'/>
+ <exports symbol='XSLT_NORM_SAXON_NAMESPACE' type='macro'/>
+ <exports symbol='xsltFunctionNodeSet' type='function'/>
+ <exports symbol='xsltRegisterExtras' type='function'/>
+ <exports symbol='xsltDebug' type='function'/>
+ <exports symbol='xsltRegisterAllExtras' type='function'/>
+ </file>
+ <file name='functions'>
+ <summary>interface for the XSLT functions not from XPath</summary>
+ <description>a set of extra functions coming from XSLT but not in XPath </description>
+ <author>Daniel Veillard and Bjorn Reese &lt;breese@users.sourceforge.net&gt; </author>
+ <exports symbol='XSLT_REGISTER_FUNCTION_LOOKUP' type='macro'/>
+ <exports symbol='xsltXPathFunctionLookup' type='function'/>
+ <exports symbol='xsltFunctionAvailableFunction' type='function'/>
+ <exports symbol='xsltFormatNumberFunction' type='function'/>
+ <exports symbol='xsltRegisterAllFunctions' type='function'/>
+ <exports symbol='xsltKeyFunction' type='function'/>
+ <exports symbol='xsltUnparsedEntityURIFunction' type='function'/>
+ <exports symbol='xsltDocumentFunction' type='function'/>
+ <exports symbol='xsltSystemPropertyFunction' type='function'/>
+ <exports symbol='xsltElementAvailableFunction' type='function'/>
+ <exports symbol='xsltGenerateIdFunction' type='function'/>
+ </file>
+ <file name='imports'>
+ <summary>interface for the XSLT import support</summary>
+ <description>macros and fuctions needed to implement and access the import tree </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='XSLT_GET_IMPORT_PTR' type='macro'/>
+ <exports symbol='XSLT_GET_IMPORT_INT' type='macro'/>
+ <exports symbol='xsltFindTemplate' type='function'/>
+ <exports symbol='xsltNextImport' type='function'/>
+ <exports symbol='xsltParseStylesheetInclude' type='function'/>
+ <exports symbol='xsltNeedElemSpaceHandling' type='function'/>
+ <exports symbol='xsltFindElemSpaceHandling' type='function'/>
+ <exports symbol='xsltParseStylesheetImport' type='function'/>
+ </file>
+ <file name='keys'>
+ <summary>interface for the key matching used in key() and template matches.</summary>
+ <description>implementation of the key mechanims. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='NODE_IS_KEYED' type='macro'/>
+ <exports symbol='xsltInitCtxtKeys' type='function'/>
+ <exports symbol='xsltFreeKeys' type='function'/>
+ <exports symbol='xsltGetKey' type='function'/>
+ <exports symbol='xsltFreeDocumentKeys' type='function'/>
+ <exports symbol='xsltAddKey' type='function'/>
+ </file>
+ <file name='namespaces'>
+ <summary>interface for the XSLT namespace handling</summary>
+ <description>set of function easing the processing and generation of namespace nodes in XSLT. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='UNDEFINED_DEFAULT_NS' type='macro'/>
+ <exports symbol='xsltFreeNamespaceAliasHashes' type='function'/>
+ <exports symbol='xsltCopyNamespace' type='function'/>
+ <exports symbol='xsltCopyNamespaceList' type='function'/>
+ <exports symbol='xsltGetNamespace' type='function'/>
+ <exports symbol='xsltGetPlainNamespace' type='function'/>
+ <exports symbol='xsltGetSpecialNamespace' type='function'/>
+ <exports symbol='xsltNamespaceAlias' type='function'/>
+ </file>
+ <file name='numbersInternals'>
+ <summary>Implementation of the XSLT number functions</summary>
+ <description>Implementation of the XSLT number functions </description>
+ <author>Bjorn Reese &lt;breese@users.sourceforge.net&gt; and Daniel Veillard </author>
+ <exports symbol='xsltFormatNumberInfo' type='typedef'/>
+ <exports symbol='xsltNumberData' type='typedef'/>
+ <exports symbol='xsltNumberDataPtr' type='typedef'/>
+ <exports symbol='xsltFormatNumberInfoPtr' type='typedef'/>
+ <exports symbol='_xsltNumberData' type='struct'/>
+ <exports symbol='_xsltCompMatch' type='struct'/>
+ <exports symbol='_xsltFormatNumberInfo' type='struct'/>
+ </file>
+ <file name='pattern'>
+ <summary>interface for the pattern matching used in template matches.</summary>
+ <description>the implementation of the lookup of the right template for a given node must be really fast in order to keep decent performances. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='xsltCompMatch' type='typedef'/>
+ <exports symbol='xsltCompMatchPtr' type='typedef'/>
+ <exports symbol='xsltNormalizeCompSteps' type='function'/>
+ <exports symbol='xsltAddTemplate' type='function'/>
+ <exports symbol='xsltCompilePattern' type='function'/>
+ <exports symbol='xsltMatchPattern' type='function'/>
+ <exports symbol='xsltGetTemplate' type='function'/>
+ <exports symbol='xsltTestCompMatchList' type='function'/>
+ <exports symbol='xsltFreeCompMatchList' type='function'/>
+ <exports symbol='xsltFreeTemplateHashes' type='function'/>
+ <exports symbol='xsltCleanupTemplates' type='function'/>
+ </file>
+ <file name='preproc'>
+ <summary>precomputing stylesheets</summary>
+ <description>this is the compilation phase, where most of the stylesheet is &quot;compiled&quot; into faster to use data. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='xsltExtMarker' type='variable'/>
+ <exports symbol='xsltFreeStylePreComps' type='function'/>
+ <exports symbol='xsltDocumentComp' type='function'/>
+ <exports symbol='xsltStylePreCompute' type='function'/>
+ </file>
+ <file name='security'>
+ <summary>interface for the libxslt security framework</summary>
+ <description>the libxslt security framework allow to restrict the access to new resources (file or URL) from the stylesheet at runtime. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='XSLT_SECPREF_CREATE_DIRECTORY' type='enum'/>
+ <exports symbol='XSLT_SECPREF_WRITE_FILE' type='enum'/>
+ <exports symbol='XSLT_SECPREF_READ_NETWORK' type='enum'/>
+ <exports symbol='XSLT_SECPREF_READ_FILE' type='enum'/>
+ <exports symbol='XSLT_SECPREF_WRITE_NETWORK' type='enum'/>
+ <exports symbol='xsltSecurityPrefs' type='typedef'/>
+ <exports symbol='xsltSecurityPrefsPtr' type='typedef'/>
+ <exports symbol='xsltSecurityOption' type='typedef'/>
+ <exports symbol='xsltNewSecurityPrefs' type='function'/>
+ <exports symbol='xsltSecurityCheck' type='function'/>
+ <exports symbol='xsltSetSecurityPrefs' type='function'/>
+ <exports symbol='xsltGetDefaultSecurityPrefs' type='function'/>
+ <exports symbol='xsltFreeSecurityPrefs' type='function'/>
+ <exports symbol='xsltSetDefaultSecurityPrefs' type='function'/>
+ <exports symbol='xsltSetCtxtSecurityPrefs' type='function'/>
+ <exports symbol='xsltGetSecurityPrefs' type='function'/>
+ <exports symbol='xsltSecurityAllow' type='function'/>
+ <exports symbol='xsltCheckWrite' type='function'/>
+ <exports symbol='xsltCheckRead' type='function'/>
+ <exports symbol='xsltSecurityForbid' type='function'/>
+ </file>
+ <file name='templates'>
+ <summary>interface for the template processing</summary>
+ <description>This set of routine encapsulates XPath calls and Attribute Value Templates evaluation. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='xsltEvalStaticAttrValueTemplate' type='function'/>
+ <exports symbol='xsltAttrListTemplateProcess' type='function'/>
+ <exports symbol='xsltEvalTemplateString' type='function'/>
+ <exports symbol='xsltAttrTemplateValueProcess' type='function'/>
+ <exports symbol='xsltAttrTemplateProcess' type='function'/>
+ <exports symbol='xsltEvalAttrValueTemplate' type='function'/>
+ <exports symbol='xsltEvalXPathPredicate' type='function'/>
+ <exports symbol='xsltAttrTemplateValueProcessNode' type='function'/>
+ <exports symbol='xsltTemplateProcess' type='function'/>
+ <exports symbol='xsltEvalXPathStringNs' type='function'/>
+ <exports symbol='xsltEvalXPathString' type='function'/>
+ </file>
+ <file name='transform'>
+ <summary>the XSLT engine transformation part.</summary>
+ <description>This module implements the bulk of the actual</description>
+ <author>Daniel Veillard </author>
+ <exports symbol='xsltValueOf' type='function'/>
+ <exports symbol='xsltRegisterAllElement' type='function'/>
+ <exports symbol='xsltSort' type='function'/>
+ <exports symbol='xsltSetXIncludeDefault' type='function'/>
+ <exports symbol='xsltCopyOf' type='function'/>
+ <exports symbol='xsltApplyTemplates' type='function'/>
+ <exports symbol='xsltIf' type='function'/>
+ <exports symbol='xsltCallTemplate' type='function'/>
+ <exports symbol='xsltApplyStylesheet' type='function'/>
+ <exports symbol='xsltApplyStripSpaces' type='function'/>
+ <exports symbol='xsltLocalVariablePush' type='function'/>
+ <exports symbol='xsltFreeTransformContext' type='function'/>
+ <exports symbol='xsltRunStylesheet' type='function'/>
+ <exports symbol='xsltChoose' type='function'/>
+ <exports symbol='xsltCopyTextString' type='function'/>
+ <exports symbol='xsltText' type='function'/>
+ <exports symbol='xsltProcessOneNode' type='function'/>
+ <exports symbol='xsltLocalVariablePop' type='function'/>
+ <exports symbol='xsltNumber' type='function'/>
+ <exports symbol='xsltRunStylesheetUser' type='function'/>
+ <exports symbol='xsltNewTransformContext' type='function'/>
+ <exports symbol='xsltGetXIncludeDefault' type='function'/>
+ <exports symbol='xsltApplyOneTemplate' type='function'/>
+ <exports symbol='xslHandleDebugger' type='function'/>
+ <exports symbol='xsltCopy' type='function'/>
+ <exports symbol='xsltDocumentElem' type='function'/>
+ <exports symbol='xsltAttribute' type='function'/>
+ <exports symbol='xsltApplyImports' type='function'/>
+ <exports symbol='xsltElement' type='function'/>
+ <exports symbol='xsltProfileStylesheet' type='function'/>
+ <exports symbol='xsltForEach' type='function'/>
+ <exports symbol='xsltApplyStylesheetUser' type='function'/>
+ <exports symbol='xsltProcessingInstruction' type='function'/>
+ <exports symbol='xsltComment' type='function'/>
+ </file>
+ <file name='variables'>
+ <summary>interface for the variable matching and lookup.</summary>
+ <description>interface for the variable matching and lookup. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='XSLT_REGISTER_VARIABLE_LOOKUP' type='macro'/>
+ <exports symbol='xsltFreeGlobalVariables' type='function'/>
+ <exports symbol='xsltQuoteUserParams' type='function'/>
+ <exports symbol='xsltXPathVariableLookup' type='function'/>
+ <exports symbol='xsltEvalUserParams' type='function'/>
+ <exports symbol='xsltParseStylesheetCallerParam' type='function'/>
+ <exports symbol='xsltAddStackElemList' type='function'/>
+ <exports symbol='xsltParseGlobalVariable' type='function'/>
+ <exports symbol='xsltQuoteOneUserParam' type='function'/>
+ <exports symbol='xsltParseGlobalParam' type='function'/>
+ <exports symbol='xsltParseStylesheetVariable' type='function'/>
+ <exports symbol='xsltEvalGlobalVariables' type='function'/>
+ <exports symbol='xsltEvalOneUserParam' type='function'/>
+ <exports symbol='xsltParseStylesheetParam' type='function'/>
+ <exports symbol='xsltVariableLookup' type='function'/>
+ </file>
+ <file name='xslt'>
+ <summary>Interfaces, constants and types related to the XSLT engine</summary>
+ <description>Interfaces, constants and types related to the XSLT engine </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='XSLT_DEFAULT_VERSION' type='macro'/>
+ <exports symbol='XSLT_DEFAULT_VENDOR' type='macro'/>
+ <exports symbol='XSLT_PARSE_OPTIONS' type='macro'/>
+ <exports symbol='XSLT_DEFAULT_URL' type='macro'/>
+ <exports symbol='XSLT_NAMESPACE' type='macro'/>
+ <exports symbol='xsltLibxmlVersion' type='variable'/>
+ <exports symbol='xsltEngineVersion' type='variable'/>
+ <exports symbol='xsltLibxsltVersion' type='variable'/>
+ <exports symbol='xsltMaxDepth' type='variable'/>
+ <exports symbol='xsltMaxVars' type='variable'/>
+ <exports symbol='xsltCleanupGlobals' type='function'/>
+ <exports symbol='xsltInit' type='function'/>
+ </file>
+ <file name='xsltInternals'>
+ <summary>internal data structures, constants and functions</summary>
+ <description>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. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='CHECK_STOPPED0' type='macro'/>
+ <exports symbol='XSLT_PAT_NO_PRIORITY' type='macro'/>
+ <exports symbol='XSLT_ITEM_NSINSCOPE_FIELDS' type='macro'/>
+ <exports symbol='XSLT_IS_TEXT_NODE' type='macro'/>
+ <exports symbol='IS_XSLT_ELEM_FAST' type='macro'/>
+ <exports symbol='XSLT_REFACTORED_VARS' type='macro'/>
+ <exports symbol='XSLT_RUNTIME_EXTRA_LST' type='macro'/>
+ <exports symbol='XSLT_ITEM_COMPATIBILITY_FIELDS' type='macro'/>
+ <exports symbol='IS_XSLT_ATTR_FAST' type='macro'/>
+ <exports symbol='XSLT_HAS_INTERNAL_NSMAP' type='macro'/>
+ <exports symbol='XSLT_FAST_IF' type='macro'/>
+ <exports symbol='XSLT_MARK_RES_TREE_FRAG' type='macro'/>
+ <exports symbol='XSLT_GET_INTERNAL_NSMAP' type='macro'/>
+ <exports symbol='XSLT_REFACTORED_KEYCOMP' type='macro'/>
+ <exports symbol='XSLT_REFACTORED_XPATHCOMP' type='macro'/>
+ <exports symbol='XSLT_ITEM_NAVIGATION_FIELDS' type='macro'/>
+ <exports symbol='XSLT_MAX_SORT' type='macro'/>
+ <exports symbol='XSLT_RUNTIME_EXTRA' type='macro'/>
+ <exports symbol='XSLT_IS_RES_TREE_FRAG' type='macro'/>
+ <exports symbol='XML_CAST_FPTR' type='macro'/>
+ <exports symbol='XSLT_ITEM_COMMON_FIELDS' type='macro'/>
+ <exports symbol='CHECK_STOPPED' type='macro'/>
+ <exports symbol='XSLT_RUNTIME_EXTRA_FREE' type='macro'/>
+ <exports symbol='XSLT_CCTXT' type='macro'/>
+ <exports symbol='CHECK_STOPPEDE' type='macro'/>
+ <exports symbol='XSLT_ERROR_SEVERITY_ERROR' type='enum'/>
+ <exports symbol='XSLT_FUNC_ELEMENT' type='enum'/>
+ <exports symbol='XSLT_FUNC_VALUEOF' type='enum'/>
+ <exports symbol='XSLT_FUNC_WITHPARAM' type='enum'/>
+ <exports symbol='XSLT_OUTPUT_XML' type='enum'/>
+ <exports symbol='XSLT_STATE_ERROR' type='enum'/>
+ <exports symbol='XSLT_OUTPUT_HTML' type='enum'/>
+ <exports symbol='XSLT_FUNC_LITERAL_RESULT_ELEMENT' type='enum'/>
+ <exports symbol='XSLT_STATE_OK' type='enum'/>
+ <exports symbol='XSLT_FUNC_FOREACH' type='enum'/>
+ <exports symbol='XSLT_FUNC_CHOOSE' type='enum'/>
+ <exports symbol='XSLT_FUNC_SORT' type='enum'/>
+ <exports symbol='XSLT_STATE_STOPPED' type='enum'/>
+ <exports symbol='XSLT_ERROR_SEVERITY_WARNING' type='enum'/>
+ <exports symbol='XSLT_FUNC_ATTRSET' type='enum'/>
+ <exports symbol='XSLT_FUNC_NUMBER' type='enum'/>
+ <exports symbol='XSLT_FUNC_ATTRIBUTE' type='enum'/>
+ <exports symbol='XSLT_FUNC_APPLYTEMPLATES' type='enum'/>
+ <exports symbol='XSLT_FUNC_INCLUDE' type='enum'/>
+ <exports symbol='XSLT_FUNC_WHEN' type='enum'/>
+ <exports symbol='XSLT_FUNC_APPLYIMPORTS' type='enum'/>
+ <exports symbol='XSLT_FUNC_COPY' type='enum'/>
+ <exports symbol='XSLT_FUNC_EXTENSION' type='enum'/>
+ <exports symbol='XSLT_FUNC_OTHERWISE' type='enum'/>
+ <exports symbol='XSLT_FUNC_COPYOF' type='enum'/>
+ <exports symbol='XSLT_OUTPUT_TEXT' type='enum'/>
+ <exports symbol='XSLT_FUNC_PARAM' type='enum'/>
+ <exports symbol='XSLT_FUNC_COMMENT' type='enum'/>
+ <exports symbol='XSLT_FUNC_MESSAGE' type='enum'/>
+ <exports symbol='XSLT_FUNC_DOCUMENT' type='enum'/>
+ <exports symbol='XSLT_FUNC_IF' type='enum'/>
+ <exports symbol='XSLT_FUNC_PI' type='enum'/>
+ <exports symbol='XSLT_FUNC_UNKOWN_FORWARDS_COMPAT' type='enum'/>
+ <exports symbol='XSLT_FUNC_TEXT' type='enum'/>
+ <exports symbol='XSLT_FUNC_VARIABLE' type='enum'/>
+ <exports symbol='XSLT_FUNC_FALLBACK' type='enum'/>
+ <exports symbol='XSLT_FUNC_CALLTEMPLATE' type='enum'/>
+ <exports symbol='xsltElemPreComp' type='typedef'/>
+ <exports symbol='xsltStyleItemPIPtr' type='typedef'/>
+ <exports symbol='xsltDocument' type='typedef'/>
+ <exports symbol='xsltStyleItemDocument' type='typedef'/>
+ <exports symbol='xsltStyleItemMessagePtr' type='typedef'/>
+ <exports symbol='xsltStyleItemNumberPtr' type='typedef'/>
+ <exports symbol='xsltStyleBasicItemVariablePtr' type='typedef'/>
+ <exports symbol='xsltStyleItemForEachPtr' type='typedef'/>
+ <exports symbol='xsltTransformState' type='typedef'/>
+ <exports symbol='xsltCompilerNodeInfoPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemLRElementInfoPtr' type='typedef'/>
+ <exports symbol='xsltRuntimeExtraPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemLRElementInfo' type='typedef'/>
+ <exports symbol='xsltStyleItemWithParamPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemCommentPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemMessage' type='typedef'/>
+ <exports symbol='xsltStyleItemParamPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemCopyOf' type='typedef'/>
+ <exports symbol='xsltStyleItemCallTemplatePtr' type='typedef'/>
+ <exports symbol='xsltTransformCache' type='typedef'/>
+ <exports symbol='xsltStyleItemCopyOfPtr' type='typedef'/>
+ <exports symbol='xsltNsMap' type='typedef'/>
+ <exports symbol='xsltEffectiveNs' type='typedef'/>
+ <exports symbol='xsltStyleItemApplyImportsPtr' type='typedef'/>
+ <exports symbol='xsltStylesheet' type='typedef'/>
+ <exports symbol='xsltStylePreCompPtr' type='typedef'/>
+ <exports symbol='xsltNsMapPtr' type='typedef'/>
+ <exports symbol='xsltDecimalFormatPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemIncludePtr' type='typedef'/>
+ <exports symbol='xsltKeyTablePtr' type='typedef'/>
+ <exports symbol='xsltStyleItemTextPtr' type='typedef'/>
+ <exports symbol='xsltCompilerNodeInfo' type='typedef'/>
+ <exports symbol='xsltStylesheetPtr' type='typedef'/>
+ <exports symbol='xsltTemplatePtr' type='typedef'/>
+ <exports symbol='xsltStyleBasicEmptyItem' type='typedef'/>
+ <exports symbol='xsltStackElem' type='typedef'/>
+ <exports symbol='xsltStyleItemIfPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemWhenPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemElementPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemOtherwise' type='typedef'/>
+ <exports symbol='xsltStyleItemCopy' type='typedef'/>
+ <exports symbol='xsltKeyDefPtr' type='typedef'/>
+ <exports symbol='xsltVarInfoPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemSort' type='typedef'/>
+ <exports symbol='xsltTransformCachePtr' type='typedef'/>
+ <exports symbol='xsltStyleItemExtElementPtr' type='typedef'/>
+ <exports symbol='xsltNsAliasPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemValueOfPtr' type='typedef'/>
+ <exports symbol='xsltDocumentPtr' type='typedef'/>
+ <exports symbol='xsltPointerListPtr' type='typedef'/>
+ <exports symbol='xsltTemplate' type='typedef'/>
+ <exports symbol='xsltStyleBasicExpressionItemPtr' type='typedef'/>
+ <exports symbol='xsltRuntimeExtra' type='typedef'/>
+ <exports symbol='xsltStyleItemAttributePtr' type='typedef'/>
+ <exports symbol='xsltTransformContext' type='typedef'/>
+ <exports symbol='xsltPointerList' type='typedef'/>
+ <exports symbol='xsltStyleItemUknown' type='typedef'/>
+ <exports symbol='xsltErrorSeverityType' type='typedef'/>
+ <exports symbol='xsltElemPreCompPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemFallback' type='typedef'/>
+ <exports symbol='xsltStyleItemOtherwisePtr' type='typedef'/>
+ <exports symbol='xsltStyleItemWhen' type='typedef'/>
+ <exports symbol='xsltStyleItemIf' type='typedef'/>
+ <exports symbol='xsltTransformContextPtr' type='typedef'/>
+ <exports symbol='xsltNsList' type='typedef'/>
+ <exports symbol='xsltStyleItemForEach' type='typedef'/>
+ <exports symbol='xsltStyleItemExtElement' type='typedef'/>
+ <exports symbol='xsltNsListContainerPtr' type='typedef'/>
+ <exports symbol='xsltStyleBasicExpressionItem' type='typedef'/>
+ <exports symbol='xsltStyleItemWithParam' type='typedef'/>
+ <exports symbol='xsltStyleItemElement' type='typedef'/>
+ <exports symbol='xsltCompilerCtxt' type='typedef'/>
+ <exports symbol='xsltStyleItemComment' type='typedef'/>
+ <exports symbol='xsltEffectiveNsPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemVariable' type='typedef'/>
+ <exports symbol='xsltStyleItemVariablePtr' type='typedef'/>
+ <exports symbol='xsltStyleItemParam' type='typedef'/>
+ <exports symbol='xsltNsListContainer' type='typedef'/>
+ <exports symbol='xsltStackElemPtr' type='typedef'/>
+ <exports symbol='xsltStyleBasicEmptyItemPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemText' type='typedef'/>
+ <exports symbol='xsltStyleItemCopyPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemSortPtr' type='typedef'/>
+ <exports symbol='xsltPrincipalStylesheetData' type='typedef'/>
+ <exports symbol='xsltOutputType' type='typedef'/>
+ <exports symbol='xsltPrincipalStylesheetDataPtr' type='typedef'/>
+ <exports symbol='xsltStyleBasicItemVariable' type='typedef'/>
+ <exports symbol='xsltStyleItemChoosePtr' type='typedef'/>
+ <exports symbol='xsltNsAlias' type='typedef'/>
+ <exports symbol='xsltVarInfo' type='typedef'/>
+ <exports symbol='xsltStyleItemApplyImports' type='typedef'/>
+ <exports symbol='xsltKeyTable' type='typedef'/>
+ <exports symbol='xsltStylePreComp' type='typedef'/>
+ <exports symbol='xsltNsListPtr' type='typedef'/>
+ <exports symbol='xsltKeyDef' type='typedef'/>
+ <exports symbol='xsltDecimalFormat' type='typedef'/>
+ <exports symbol='xsltStyleItemApplyTemplatesPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemUknownPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemValueOf' type='typedef'/>
+ <exports symbol='xsltCompilerCtxtPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemAttribute' type='typedef'/>
+ <exports symbol='xsltStyleItemDocumentPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemCallTemplate' type='typedef'/>
+ <exports symbol='xsltStyleItemFallbackPtr' type='typedef'/>
+ <exports symbol='xsltStyleItemNumber' type='typedef'/>
+ <exports symbol='xsltStyleItemApplyTemplates' type='typedef'/>
+ <exports symbol='xsltStyleItemChoose' type='typedef'/>
+ <exports symbol='xsltStyleType' type='typedef'/>
+ <exports symbol='xsltStyleItemPI' type='typedef'/>
+ <exports symbol='xsltStyleItemInclude' type='typedef'/>
+ <exports symbol='_xsltPointerList' type='struct'/>
+ <exports symbol='_xsltStyleItemSort' type='struct'/>
+ <exports symbol='_xsltNsAlias' type='struct'/>
+ <exports symbol='_xsltTemplate' type='struct'/>
+ <exports symbol='_xsltStyleItemWhen' type='struct'/>
+ <exports symbol='_xsltVarInfo' type='struct'/>
+ <exports symbol='_xsltNsList' type='struct'/>
+ <exports symbol='_xsltStyleItemInclude' type='struct'/>
+ <exports symbol='_xsltEffectiveNs' type='struct'/>
+ <exports symbol='_xsltDecimalFormat' type='struct'/>
+ <exports symbol='_xsltStyleItemAttribute' type='struct'/>
+ <exports symbol='_xsltStyleItemValueOf' type='struct'/>
+ <exports symbol='_xsltStyleItemDocument' type='struct'/>
+ <exports symbol='_xsltStyleItemMessage' type='struct'/>
+ <exports symbol='_xsltStyleItemCopy' type='struct'/>
+ <exports symbol='_xsltStyleItemText' type='struct'/>
+ <exports symbol='_xsltStyleBasicExpressionItem' type='struct'/>
+ <exports symbol='_xsltStylesheet' type='struct'/>
+ <exports symbol='_xsltNsListContainer' type='struct'/>
+ <exports symbol='_xsltStyleItemCallTemplate' type='struct'/>
+ <exports symbol='_xsltStyleItemApplyTemplates' type='struct'/>
+ <exports symbol='_xsltElemPreComp' type='struct'/>
+ <exports symbol='_xsltCompilerCtxt' type='struct'/>
+ <exports symbol='_xsltKeyTable' type='struct'/>
+ <exports symbol='_xsltStyleItemUknown' type='struct'/>
+ <exports symbol='_xsltStyleItemNumber' type='struct'/>
+ <exports symbol='_xsltStylePreComp' type='struct'/>
+ <exports symbol='_xsltTransformCache' type='struct'/>
+ <exports symbol='_xsltCompilerNodeInfo' type='struct'/>
+ <exports symbol='_xsltNsMap' type='struct'/>
+ <exports symbol='_xsltStyleItemElement' type='struct'/>
+ <exports symbol='_xsltStyleItemPI' type='struct'/>
+ <exports symbol='_xsltStyleItemExtElement' type='struct'/>
+ <exports symbol='_xsltStyleItemParam' type='struct'/>
+ <exports symbol='_xsltStackElem' type='struct'/>
+ <exports symbol='_xsltTransformContext' type='struct'/>
+ <exports symbol='_xsltStyleItemIf' type='struct'/>
+ <exports symbol='_xsltStyleBasicItemVariable' type='struct'/>
+ <exports symbol='_xsltRuntimeExtra' type='struct'/>
+ <exports symbol='_xsltKeyDef' type='struct'/>
+ <exports symbol='_xsltPrincipalStylesheetData' type='struct'/>
+ <exports symbol='_xsltStyleItemLRElementInfo' type='struct'/>
+ <exports symbol='_xsltStyleItemOtherwise' type='struct'/>
+ <exports symbol='_xsltDocument' type='struct'/>
+ <exports symbol='_xsltStyleBasicEmptyItem' type='struct'/>
+ <exports symbol='xsltXSLTAttrMarker' type='variable'/>
+ <exports symbol='xsltConstNamespaceNameXSLT' type='variable'/>
+ <exports symbol='xsltElemPreCompDeallocator' type='function'/>
+ <exports symbol='xsltRegisterPersistRVT' type='function'/>
+ <exports symbol='xsltParseStylesheetImportedDoc' type='function'/>
+ <exports symbol='xsltFreeStackElemList' type='function'/>
+ <exports symbol='xsltAllocateExtra' type='function'/>
+ <exports symbol='xsltParseSequenceConstructor' type='function'/>
+ <exports symbol='xsltRegisterTmpRVT' type='function'/>
+ <exports symbol='xsltInitAllDocKeys' type='function'/>
+ <exports symbol='xsltExtensionInstructionResultFinalize' type='function'/>
+ <exports symbol='xsltPointerListFree' type='function'/>
+ <exports symbol='xsltIsBlank' type='function'/>
+ <exports symbol='xsltFormatNumberConversion' type='function'/>
+ <exports symbol='xsltPointerListAddSize' type='function'/>
+ <exports symbol='xsltSortFunc' type='function'/>
+ <exports symbol='xsltUninit' type='function'/>
+ <exports symbol='xsltFreeStylesheet' type='function'/>
+ <exports symbol='xsltCreateRVT' type='function'/>
+ <exports symbol='xsltParseStylesheetFile' type='function'/>
+ <exports symbol='xsltParseStylesheetOutput' type='function'/>
+ <exports symbol='xsltParseAnyXSLTElem' type='function'/>
+ <exports symbol='xsltCompileAttr' type='function'/>
+ <exports symbol='xsltRestoreDocumentNamespaces' type='function'/>
+ <exports symbol='xsltNumberFormat' type='function'/>
+ <exports symbol='xsltReleaseRVT' type='function'/>
+ <exports symbol='xsltFreeRVTs' type='function'/>
+ <exports symbol='xsltExtensionInstructionResultRegister' type='function'/>
+ <exports symbol='xsltPointerListCreate' type='function'/>
+ <exports symbol='xsltFreeAVTList' type='function'/>
+ <exports symbol='xsltAllocateExtraCtxt' type='function'/>
+ <exports symbol='xsltParseTemplateContent' type='function'/>
+ <exports symbol='xsltNewStylesheet' type='function'/>
+ <exports symbol='xsltParseStylesheetProcess' type='function'/>
+ <exports symbol='xsltDecimalFormatGetByName' type='function'/>
+ <exports symbol='xsltTransformFunction' type='function'/>
+ <exports symbol='xsltRegisterLocalRVT' type='function'/>
+ <exports symbol='xsltParseStylesheetDoc' type='function'/>
+ <exports symbol='xsltInitCtxtKey' type='function'/>
+ <exports symbol='xsltEvalAVT' type='function'/>
+ <exports symbol='xsltPointerListClear' type='function'/>
+ <exports symbol='xsltLoadStylesheetPI' type='function'/>
+ </file>
+ <file name='xsltexports'>
+ <summary>macros for marking symbols as exportable/importable.</summary>
+ <description>macros for marking symbols as exportable/importable. </description>
+ <author>Igor Zlatkovic &lt;igor@zlatkovic.com&gt; </author>
+ <exports symbol='LIBXSLT_PUBLIC' type='macro'/>
+ <exports symbol='XSLTPUBFUN' type='macro'/>
+ <exports symbol='XSLTPUBVAR' type='macro'/>
+ <exports symbol='_REENTRANT' type='macro'/>
+ <exports symbol='XSLTCALL' type='macro'/>
+ </file>
+ <file name='xsltlocale'>
+ <summary>Locale handling</summary>
+ <description>Interfaces for locale handling. Needed for language dependent sorting. </description>
+ <author>Nick Wellnhofer </author>
+ <exports symbol='XSLT_LOCALE_NONE' type='macro'/>
+ <exports symbol='xsltLocale' type='typedef'/>
+ <exports symbol='xsltLocaleChar' type='typedef'/>
+ <exports symbol='xsltNewLocale' type='function'/>
+ <exports symbol='xsltLocaleStrcmp' type='function'/>
+ <exports symbol='xsltFreeLocale' type='function'/>
+ <exports symbol='xsltStrxfrm' type='function'/>
+ <exports symbol='xsltFreeLocales' type='function'/>
+ </file>
+ <file name='xsltutils'>
+ <summary>set of utilities for the XSLT engine</summary>
+ <description>interfaces for the utilities module of the XSLT engine. things like message handling, profiling, and other generally useful routines. </description>
+ <author>Daniel Veillard </author>
+ <exports symbol='IS_XSLT_REAL_NODE' type='macro'/>
+ <exports symbol='IS_XSLT_ELEM' type='macro'/>
+ <exports symbol='IS_XSLT_NAME' type='macro'/>
+ <exports symbol='XSLT_TODO' type='macro'/>
+ <exports symbol='XSLT_STRANGE' type='macro'/>
+ <exports symbol='XSLT_TIMESTAMP_TICS_PER_SEC' type='macro'/>
+ <exports symbol='XSLT_TRACE' type='macro'/>
+ <exports symbol='XSLT_TRACE_KEYS' type='enum'/>
+ <exports symbol='XSLT_DEBUG_NEXT' type='enum'/>
+ <exports symbol='XSLT_TRACE_COPY_OF' type='enum'/>
+ <exports symbol='XSLT_TRACE_FOR_EACH' type='enum'/>
+ <exports symbol='XSLT_DEBUG_STEPOUT' type='enum'/>
+ <exports symbol='XSLT_DEBUG_RUN' type='enum'/>
+ <exports symbol='XSLT_TRACE_APPLY_TEMPLATES' type='enum'/>
+ <exports symbol='XSLT_TRACE_CHOOSE' type='enum'/>
+ <exports symbol='XSLT_DEBUG_INIT' type='enum'/>
+ <exports symbol='XSLT_DEBUG_RUN_RESTART' type='enum'/>
+ <exports symbol='XSLT_TRACE_ALL' type='enum'/>
+ <exports symbol='XSLT_TRACE_CALL_TEMPLATE' type='enum'/>
+ <exports symbol='XSLT_TRACE_IF' type='enum'/>
+ <exports symbol='XSLT_TRACE_PROCESS_NODE' type='enum'/>
+ <exports symbol='XSLT_TRACE_COPY_TEXT' type='enum'/>
+ <exports symbol='XSLT_TRACE_APPLY_TEMPLATE' type='enum'/>
+ <exports symbol='XSLT_DEBUG_CONT' type='enum'/>
+ <exports symbol='XSLT_TRACE_VALUE_OF' type='enum'/>
+ <exports symbol='XSLT_DEBUG_STEP' type='enum'/>
+ <exports symbol='XSLT_TRACE_STRIP_SPACES' type='enum'/>
+ <exports symbol='XSLT_DEBUG_STOP' type='enum'/>
+ <exports symbol='XSLT_TRACE_COPY' type='enum'/>
+ <exports symbol='XSLT_TRACE_NONE' type='enum'/>
+ <exports symbol='XSLT_DEBUG_NONE' type='enum'/>
+ <exports symbol='XSLT_TRACE_PI' type='enum'/>
+ <exports symbol='XSLT_TRACE_COMMENT' type='enum'/>
+ <exports symbol='XSLT_TRACE_VARIABLES' type='enum'/>
+ <exports symbol='XSLT_DEBUG_QUIT' type='enum'/>
+ <exports symbol='XSLT_TRACE_TEMPLATES' type='enum'/>
+ <exports symbol='xsltDebugTraceCodes' type='typedef'/>
+ <exports symbol='xsltDebugStatusCodes' type='typedef'/>
+ <exports symbol='xsltGenericError' type='variable'/>
+ <exports symbol='xsltGenericDebug' type='variable'/>
+ <exports symbol='xsltGenericErrorContext' type='variable'/>
+ <exports symbol='xslDebugStatus' type='variable'/>
+ <exports symbol='xsltGenericDebugContext' type='variable'/>
+ <exports symbol='xsltSaveResultToFile' type='function'/>
+ <exports symbol='xsltSetGenericErrorFunc' type='function'/>
+ <exports symbol='xsltSetDebuggerCallbacks' type='function'/>
+ <exports symbol='xsltSaveResultTo' type='function'/>
+ <exports symbol='xsltTransformError' type='function'/>
+ <exports symbol='xslAddCall' type='function'/>
+ <exports symbol='xsltDocumentSortFunction' type='function'/>
+ <exports symbol='xsltGetQNameURI2' type='function'/>
+ <exports symbol='xsltComputeSortResult' type='function'/>
+ <exports symbol='xsltPrintErrorContext' type='function'/>
+ <exports symbol='xsltGetUTF8Char' type='function'/>
+ <exports symbol='xsltDefaultSortFunction' type='function'/>
+ <exports symbol='xsltSaveResultToFd' type='function'/>
+ <exports symbol='xsltSetCtxtSortFunc' type='function'/>
+ <exports symbol='xsltGetNsProp' type='function'/>
+ <exports symbol='xsltGetCNsProp' type='function'/>
+ <exports symbol='xsltGetQNameURI' type='function'/>
+ <exports symbol='xsltAddCallCallback' type='function'/>
+ <exports symbol='xsltCalibrateAdjust' type='function'/>
+ <exports symbol='xsltSaveProfiling' type='function'/>
+ <exports symbol='xsltSaveResultToString' type='function'/>
+ <exports symbol='xsltSplitQName' type='function'/>
+ <exports symbol='xsltDoSortFunction' type='function'/>
+ <exports symbol='xsltDebugGetDefaultTrace' type='function'/>
+ <exports symbol='xsltMessage' type='function'/>
+ <exports symbol='xsltGetDebuggerStatus' type='function'/>
+ <exports symbol='xsltTimestamp' type='function'/>
+ <exports symbol='xsltSetTransformErrorFunc' type='function'/>
+ <exports symbol='xsltXPathCompile' type='function'/>
+ <exports symbol='xsltDebugSetDefaultTrace' type='function'/>
+ <exports symbol='xsltSetGenericDebugFunc' type='function'/>
+ <exports symbol='xsltXPathCompileFlags' type='function'/>
+ <exports symbol='xsltSetCtxtParseOptions' type='function'/>
+ <exports symbol='xsltSetDebuggerStatus' type='function'/>
+ <exports symbol='xslDropCall' type='function'/>
+ <exports symbol='xsltSetSortFunc' type='function'/>
+ <exports symbol='xsltHandleDebuggerCallback' type='function'/>
+ <exports symbol='xsltSaveResultToFilename' type='function'/>
+ <exports symbol='xsltDropCallCallback' type='function'/>
+ <exports symbol='xsltGetProfileInformation' type='function'/>
+ </file>
+ </files>
+ <symbols>
+ <macro name='CHECK_STOPPED' file='xsltInternals'>
+ <info>Macro to check if the XSLT processing should be stopped. Will return from the function.</info>
+ </macro>
+ <macro name='CHECK_STOPPED0' file='xsltInternals'>
+ <info>Macro to check if the XSLT processing should be stopped. Will return from the function with a 0 value.</info>
+ </macro>
+ <macro name='CHECK_STOPPEDE' file='xsltInternals'>
+ <info>Macro to check if the XSLT processing should be stopped. Will goto the error: label.</info>
+ </macro>
+ <macro name='IS_XSLT_ATTR_FAST' file='xsltInternals'>
+ <info>quick check for xslt namespace attribute</info>
+ </macro>
+ <macro name='IS_XSLT_ELEM' file='xsltutils'>
+ <info>Checks that the element pertains to XSLT namespace.</info>
+ </macro>
+ <macro name='IS_XSLT_ELEM_FAST' file='xsltInternals'>
+ <info>quick check whether this is an xslt element</info>
+ </macro>
+ <macro name='IS_XSLT_NAME' file='xsltutils'>
+ <info>Checks the value of an element in XSLT namespace.</info>
+ </macro>
+ <macro name='IS_XSLT_REAL_NODE' file='xsltutils'>
+ <info>Check that a node is a &apos;real&apos; one: document, element, text or attribute.</info>
+ </macro>
+ <macro name='LIBXSLT_PUBLIC' file='xsltexports'>
+ </macro>
+ <macro name='NODE_IS_KEYED' file='keys'>
+ <info>check for bit 15 set</info>
+ </macro>
+ <macro name='UNDEFINED_DEFAULT_NS' file='namespaces'>
+ <info>Special value for undefined namespace, internal</info>
+ </macro>
+ <macro name='XML_CAST_FPTR' file='xsltInternals'>
+ <info>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</info>
+ <arg name='fptr' info='pointer to a function'/>
+ </macro>
+ <macro name='XSLTCALL' file='xsltexports'>
+ </macro>
+ <macro name='XSLTPUBFUN' file='xsltexports'>
+ </macro>
+ <macro name='XSLTPUBVAR' file='xsltexports'>
+ </macro>
+ <macro name='XSLT_CCTXT' file='xsltInternals'>
+ <info>get pointer to compiler context</info>
+ </macro>
+ <macro name='XSLT_DEFAULT_URL' file='xslt'>
+ <info>The XSLT &quot;vendor&quot; URL for this processor.</info>
+ </macro>
+ <macro name='XSLT_DEFAULT_VENDOR' file='xslt'>
+ <info>The XSLT &quot;vendor&quot; string for this processor.</info>
+ </macro>
+ <macro name='XSLT_DEFAULT_VERSION' file='xslt'>
+ <info>The default version of XSLT supported.</info>
+ </macro>
+ <macro name='XSLT_FAST_IF' file='xsltInternals'>
+ <info>Internal define to enable usage of xmlXPathCompiledEvalToBoolean() for XSLT &quot;tests&quot;; e.g. in &lt;xsl:if test=&quot;/foo/bar&quot;&gt;</info>
+ </macro>
+ <macro name='XSLT_GET_IMPORT_INT' file='imports'>
+ <info>A macro to import intergers from the stylesheet cascading order.</info>
+ </macro>
+ <macro name='XSLT_GET_IMPORT_PTR' file='imports'>
+ <info>A macro to import pointers from the stylesheet cascading order.</info>
+ </macro>
+ <macro name='XSLT_GET_INTERNAL_NSMAP' file='xsltInternals'>
+ <info>get pointer to namespace map</info>
+ </macro>
+ <macro name='XSLT_HAS_INTERNAL_NSMAP' file='xsltInternals'>
+ <info>check for namespace mapping</info>
+ </macro>
+ <macro name='XSLT_IS_RES_TREE_FRAG' file='xsltInternals'>
+ <info>internal macro to test tree fragments</info>
+ </macro>
+ <macro name='XSLT_IS_TEXT_NODE' file='xsltInternals'>
+ <info>check if the argument is a text node</info>
+ </macro>
+ <macro name='XSLT_ITEM_COMMON_FIELDS' file='xsltInternals'>
+ <info>Common fields used for all items.</info>
+ </macro>
+ <macro name='XSLT_ITEM_COMPATIBILITY_FIELDS' file='xsltInternals'>
+ <info>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.</info>
+ </macro>
+ <macro name='XSLT_ITEM_NAVIGATION_FIELDS' file='xsltInternals'>
+ <info>Currently empty. TODO: It is intended to hold navigational fields in the future.</info>
+ </macro>
+ <macro name='XSLT_ITEM_NSINSCOPE_FIELDS' file='xsltInternals'>
+ <info>The in-scope namespaces.</info>
+ </macro>
+ <macro name='XSLT_LIBXSLT_NAMESPACE' file='extra'>
+ <info>This is the libxslt namespace for specific extensions.</info>
+ </macro>
+ <macro name='XSLT_LOCALE_NONE' file='xsltlocale'>
+ <info>Macro indicating that locale are not supported</info>
+ </macro>
+ <macro name='XSLT_MARK_RES_TREE_FRAG' file='xsltInternals'>
+ <info>internal macro to set up tree fragments</info>
+ </macro>
+ <macro name='XSLT_MAX_SORT' file='xsltInternals'>
+ <info>Max number of specified xsl:sort on an element.</info>
+ </macro>
+ <macro name='XSLT_NAMESPACE' file='xslt'>
+ <info>The XSLT specification namespace.</info>
+ </macro>
+ <macro name='XSLT_NORM_SAXON_NAMESPACE' file='extra'>
+ <info>This is Norm&apos;s namespace for SAXON extensions.</info>
+ </macro>
+ <macro name='XSLT_PARSE_OPTIONS' file='xslt'>
+ <info>The set of options to pass to an xmlReadxxx when loading files for XSLT consumption.</info>
+ </macro>
+ <macro name='XSLT_PAT_NO_PRIORITY' file='xsltInternals'>
+ <info>Specific value for pattern without priority expressed.</info>
+ </macro>
+ <macro name='XSLT_REFACTORED_KEYCOMP' file='xsltInternals'>
+ <info>Internal define to enable on-demand xsl:key computation. That&apos;s the only mode now but the define is kept for compatibility</info>
+ </macro>
+ <macro name='XSLT_REFACTORED_VARS' file='xsltInternals'>
+ <info>Internal define to enable the refactored variable part of libxslt</info>
+ </macro>
+ <macro name='XSLT_REFACTORED_XPATHCOMP' file='xsltInternals'>
+ <info>Internal define to enable the optimization of the compilation of XPath expressions.</info>
+ </macro>
+ <macro name='XSLT_REGISTER_FUNCTION_LOOKUP' file='functions'>
+ <info>Registering macro, not general purpose at all but used in different modules.</info>
+ </macro>
+ <macro name='XSLT_REGISTER_VARIABLE_LOOKUP' file='variables'>
+ <info>Registering macro, not general purpose at all but used in different modules.</info>
+ </macro>
+ <macro name='XSLT_RUNTIME_EXTRA' file='xsltInternals'>
+ <info>Macro used to define extra information stored in the context</info>
+ <arg name='ctxt' info='the transformation context'/>
+ <arg name='nr' info='the index'/>
+ </macro>
+ <macro name='XSLT_RUNTIME_EXTRA_FREE' file='xsltInternals'>
+ <info>Macro used to free extra information stored in the context</info>
+ <arg name='ctxt' info='the transformation context'/>
+ <arg name='nr' info='the index'/>
+ </macro>
+ <macro name='XSLT_RUNTIME_EXTRA_LST' file='xsltInternals'>
+ <info>Macro used to access extra information stored in the context</info>
+ <arg name='ctxt' info='the transformation context'/>
+ <arg name='nr' info='the index'/>
+ </macro>
+ <macro name='XSLT_SAXON_NAMESPACE' file='extra'>
+ <info>This is Michael Kay&apos;s Saxon processor namespace for extensions.</info>
+ </macro>
+ <macro name='XSLT_STRANGE' file='xsltutils'>
+ <info>Macro to flag that a problem was detected internally.</info>
+ </macro>
+ <macro name='XSLT_TIMESTAMP_TICS_PER_SEC' file='xsltutils'>
+ <info>Sampling precision for profiling</info>
+ </macro>
+ <macro name='XSLT_TODO' file='xsltutils'>
+ <info>Macro to flag unimplemented blocks.</info>
+ </macro>
+ <macro name='XSLT_TRACE' file='xsltutils'>
+ <info>Control the type of xsl debugtrace messages emitted.</info>
+ </macro>
+ <macro name='XSLT_XALAN_NAMESPACE' file='extra'>
+ <info>This is the Apache project XALAN processor namespace for extensions.</info>
+ </macro>
+ <macro name='XSLT_XT_NAMESPACE' file='extra'>
+ <info>This is James Clark&apos;s XT processor namespace for extensions.</info>
+ </macro>
+ <macro name='_REENTRANT' file='xsltexports'>
+ </macro>
+ <enum name='XSLT_DEBUG_CONT' file='xsltutils' value='6' type='xsltDebugStatusCodes'/>
+ <enum name='XSLT_DEBUG_INIT' file='xsltutils' value='1' type='xsltDebugStatusCodes'/>
+ <enum name='XSLT_DEBUG_NEXT' file='xsltutils' value='4' type='xsltDebugStatusCodes'/>
+ <enum name='XSLT_DEBUG_NONE' file='xsltutils' value='0' type='xsltDebugStatusCodes' info='no debugging allowed'/>
+ <enum name='XSLT_DEBUG_QUIT' file='xsltutils' value='9' type='xsltDebugStatusCodes'/>
+ <enum name='XSLT_DEBUG_RUN' file='xsltutils' value='7' type='xsltDebugStatusCodes'/>
+ <enum name='XSLT_DEBUG_RUN_RESTART' file='xsltutils' value='8' type='xsltDebugStatusCodes'/>
+ <enum name='XSLT_DEBUG_STEP' file='xsltutils' value='2' type='xsltDebugStatusCodes'/>
+ <enum name='XSLT_DEBUG_STEPOUT' file='xsltutils' value='3' type='xsltDebugStatusCodes'/>
+ <enum name='XSLT_DEBUG_STOP' file='xsltutils' value='5' type='xsltDebugStatusCodes'/>
+ <enum name='XSLT_ERROR_SEVERITY_ERROR' file='xsltInternals' value='0' type='xsltErrorSeverityType'/>
+ <enum name='XSLT_ERROR_SEVERITY_WARNING' file='xsltInternals' value='1' type='xsltErrorSeverityType'/>
+ <enum name='XSLT_FUNC_APPLYIMPORTS' file='xsltInternals' value='11' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_APPLYTEMPLATES' file='xsltInternals' value='13' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_ATTRIBUTE' file='xsltInternals' value='5' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_ATTRSET' file='xsltInternals' value='27' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_CALLTEMPLATE' file='xsltInternals' value='12' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_CHOOSE' file='xsltInternals' value='14' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_COMMENT' file='xsltInternals' value='6' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_COPY' file='xsltInternals' value='1' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_COPYOF' file='xsltInternals' value='8' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_DOCUMENT' file='xsltInternals' value='17' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_ELEMENT' file='xsltInternals' value='4' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_EXTENSION' file='xsltInternals' value='22' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_FALLBACK' file='xsltInternals' value='24' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_FOREACH' file='xsltInternals' value='16' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_IF' file='xsltInternals' value='15' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_INCLUDE' file='xsltInternals' value='26' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_LITERAL_RESULT_ELEMENT' file='xsltInternals' value='28' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_MESSAGE' file='xsltInternals' value='25' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_NUMBER' file='xsltInternals' value='10' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_OTHERWISE' file='xsltInternals' value='23' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_PARAM' file='xsltInternals' value='19' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_PI' file='xsltInternals' value='7' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_SORT' file='xsltInternals' value='2' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_TEXT' file='xsltInternals' value='3' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_UNKOWN_FORWARDS_COMPAT' file='xsltInternals' value='29' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_VALUEOF' file='xsltInternals' value='9' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_VARIABLE' file='xsltInternals' value='20' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_WHEN' file='xsltInternals' value='21' type='xsltStyleType'/>
+ <enum name='XSLT_FUNC_WITHPARAM' file='xsltInternals' value='18' type='xsltStyleType'/>
+ <enum name='XSLT_LOAD_DOCUMENT' file='documents' value='2' type='xsltLoadType' info=' loading document at transformation time'/>
+ <enum name='XSLT_LOAD_START' file='documents' value='0' type='xsltLoadType' info='loading for a top stylesheet'/>
+ <enum name='XSLT_LOAD_STYLESHEET' file='documents' value='1' type='xsltLoadType' info='loading for a stylesheet include/import'/>
+ <enum name='XSLT_OUTPUT_HTML' file='xsltInternals' value='1' type='xsltOutputType'/>
+ <enum name='XSLT_OUTPUT_TEXT' file='xsltInternals' value='2' type='xsltOutputType'/>
+ <enum name='XSLT_OUTPUT_XML' file='xsltInternals' value='0' type='xsltOutputType'/>
+ <enum name='XSLT_SECPREF_CREATE_DIRECTORY' file='security' value='3' type='xsltSecurityOption'/>
+ <enum name='XSLT_SECPREF_READ_FILE' file='security' value='1' type='xsltSecurityOption'/>
+ <enum name='XSLT_SECPREF_READ_NETWORK' file='security' value='4' type='xsltSecurityOption'/>
+ <enum name='XSLT_SECPREF_WRITE_FILE' file='security' value='2' type='xsltSecurityOption'/>
+ <enum name='XSLT_SECPREF_WRITE_NETWORK' file='security' value='5' type='xsltSecurityOption'/>
+ <enum name='XSLT_STATE_ERROR' file='xsltInternals' value='1' type='xsltTransformState'/>
+ <enum name='XSLT_STATE_OK' file='xsltInternals' value='0' type='xsltTransformState'/>
+ <enum name='XSLT_STATE_STOPPED' file='xsltInternals' value='2' type='xsltTransformState'/>
+ <enum name='XSLT_TRACE_ALL' file='xsltutils' value='-1' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_APPLY_TEMPLATE' file='xsltutils' value='4' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_APPLY_TEMPLATES' file='xsltutils' value='512' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_CALL_TEMPLATE' file='xsltutils' value='256' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_CHOOSE' file='xsltutils' value='1024' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_COMMENT' file='xsltutils' value='16' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_COPY' file='xsltutils' value='8' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_COPY_OF' file='xsltutils' value='64' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_COPY_TEXT' file='xsltutils' value='1' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_FOR_EACH' file='xsltutils' value='4096' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_IF' file='xsltutils' value='2048' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_KEYS' file='xsltutils' value='32768' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_NONE' file='xsltutils' value='0' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_PI' file='xsltutils' value='32' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_PROCESS_NODE' file='xsltutils' value='2' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_STRIP_SPACES' file='xsltutils' value='8192' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_TEMPLATES' file='xsltutils' value='16384' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_VALUE_OF' file='xsltutils' value='128' type='xsltDebugTraceCodes'/>
+ <enum name='XSLT_TRACE_VARIABLES' file='xsltutils' value='65536' type='xsltDebugTraceCodes'/>
+ <struct name='xsltCompMatch' file='pattern' type='struct _xsltCompMatch'>
+ </struct>
+ <typedef name='xsltCompMatchPtr' file='pattern' type='xsltCompMatch *'/>
+ <struct name='xsltCompilerCtxt' file='xsltInternals' type='struct _xsltCompilerCtxt'>
+ <field name='errorCtxt' type='void *' info='* used for error/warning reports; e.g. XSLT_ERROR_SEVERITY_WARNING'/>
+ <field name='errSeverity' type='xsltErrorSeverityType' info=''/>
+ <field name='warnings' type='int' info=' TODO: number of warnings found at
+compilation'/>
+ <field name='errors' type='int' info=' TODO: number of errors found at
+compilation'/>
+ <field name='dict' type='xmlDictPtr' info=''/>
+ <field name='style' type='xsltStylesheetPtr' info=''/>
+ <field name='simplified' type='int' info=' whether this is a simplified stylesheet TODO: structured/unstructured error contexts.'/>
+ <field name='depth' type='int' info=' Current depth of processing'/>
+ <field name='inode' type='xsltCompilerNodeInfoPtr' info=''/>
+ <field name='inodeList' type='xsltCompilerNodeInfoPtr' info=''/>
+ <field name='inodeLast' type='xsltCompilerNodeInfoPtr' info=''/>
+ <field name='tmpList' type='xsltPointerListPtr' info='* The XSLT version as specified by the stylesheet&apos;s root element.
+*'/>
+ <field name='isInclude' type='int' info=''/>
+ <field name='hasForwardsCompat' type='int' info=' whether forwards-compatible mode was used
+in a parsing episode'/>
+ <field name='maxNodeInfos' type='int' info=' TEMP TODO: just for the interest'/>
+ <field name='maxLREs' type='int' info='* In order to keep the old behaviour, applying strict rules of
+* the spec can be turned off. This has effect only on special
+* mechanisms like whitespace-stripping in the stylesheet.
+*'/>
+ <field name='strict' type='int' info=''/>
+ <field name='psData' type='xsltPrincipalStylesheetDataPtr' info=''/>
+ <field name='xpathCtxt' type='xmlXPathContextPtr' info=''/>
+ <field name='unknownItem' type='xsltStyleItemUknownPtr' info=''/>
+ <field name='hasNsAliases' type='int' info=' Indicator if there was an xsl:namespace-alias.'/>
+ <field name='nsAliases' type='xsltNsAliasPtr' info=''/>
+ <field name='ivars' type='xsltVarInfoPtr' info=' Storage of local in-scope variables/params.'/>
+ <field name='ivar' type='xsltVarInfoPtr' info=' topmost local variable/param.'/>
+ </struct>
+ <typedef name='xsltCompilerCtxtPtr' file='xsltInternals' type='xsltCompilerCtxt *'/>
+ <struct name='xsltCompilerNodeInfo' file='xsltInternals' type='struct _xsltCompilerNodeInfo'>
+ <field name='next' type='xsltCompilerNodeInfoPtr' info=''/>
+ <field name='prev' type='xsltCompilerNodeInfoPtr' info=''/>
+ <field name='node' type='xmlNodePtr' info=''/>
+ <field name='depth' type='int' info=''/>
+ <field name='templ' type='xsltTemplatePtr' info=' The owning template'/>
+ <field name='category' type='int' info=' XSLT element, LR-element or
+extension element'/>
+ <field name='type' type='xsltStyleType' info=''/>
+ <field name='item' type='xsltElemPreCompPtr' info=' The compiled information The current in-scope namespaces'/>
+ <field name='inScopeNs' type='xsltNsListContainerPtr' info=' The current excluded result namespaces'/>
+ <field name='exclResultNs' type='xsltPointerListPtr' info=' The current extension instruction namespaces'/>
+ <field name='extElemNs' type='xsltPointerListPtr' info=' The current info for literal result elements.'/>
+ <field name='litResElemInfo' type='xsltStyleItemLRElementInfoPtr' info='* Set to 1 if in-scope namespaces changed,
+* or excluded result namespaces changed,
+* or extension element namespaces changed.
+* This will trigger creation of new infos
+* for literal result elements.
+*'/>
+ <field name='nsChanged' type='int' info=''/>
+ <field name='preserveWhitespace' type='int' info=''/>
+ <field name='stripWhitespace' type='int' info=''/>
+ <field name='isRoot' type='int' info=' whether this is the stylesheet&apos;s root node'/>
+ <field name='forwardsCompat' type='int' info=' whether forwards-compatible mode is enabled whether the content of an extension element was processed'/>
+ <field name='extContentHandled' type='int' info=' the type of the current child'/>
+ <field name='curChildType' type='xsltStyleType' info=''/>
+ </struct>
+ <typedef name='xsltCompilerNodeInfoPtr' file='xsltInternals' type='xsltCompilerNodeInfo *'/>
+ <typedef name='xsltDebugStatusCodes' file='xsltutils' type='enum'/>
+ <typedef name='xsltDebugTraceCodes' file='xsltutils' type='enum'/>
+ <struct name='xsltDecimalFormat' file='xsltInternals' type='struct _xsltDecimalFormat'>
+ <field name='next' type='struct _xsltDecimalFormat *' info=' chained list'/>
+ <field name='name' type='xmlChar *' info=' Used for interpretation of pattern'/>
+ <field name='digit' type='xmlChar *' info=''/>
+ <field name='patternSeparator' type='xmlChar *' info=' May appear in result'/>
+ <field name='minusSign' type='xmlChar *' info=''/>
+ <field name='infinity' type='xmlChar *' info=''/>
+ <field name='noNumber' type='xmlChar *' info=' Not-a-number Used for interpretation of pattern and may appear in result'/>
+ <field name='decimalPoint' type='xmlChar *' info=''/>
+ <field name='grouping' type='xmlChar *' info=''/>
+ <field name='percent' type='xmlChar *' info=''/>
+ <field name='permille' type='xmlChar *' info=''/>
+ <field name='zeroDigit' type='xmlChar *' info=''/>
+ </struct>
+ <typedef name='xsltDecimalFormatPtr' file='xsltInternals' type='xsltDecimalFormat *'/>
+ <struct name='xsltDocument' file='xsltInternals' type='struct _xsltDocument'>
+ <field name='next' type='struct _xsltDocument *' info=' documents are kept in a chained list'/>
+ <field name='main' type='int' info=' is this the main document'/>
+ <field name='doc' type='xmlDocPtr' info=' the parsed document'/>
+ <field name='keys' type='void *' info=' key tables storage'/>
+ <field name='includes' type='struct _xsltDocument *' info=' subsidiary includes'/>
+ <field name='preproc' type='int' info=' pre-processing already done'/>
+ <field name='nbKeysComputed' type='int' info=''/>
+ </struct>
+ <typedef name='xsltDocumentPtr' file='xsltInternals' type='xsltDocument *'/>
+ <struct name='xsltEffectiveNs' file='xsltInternals' type='struct _xsltEffectiveNs'>
+ <field name='nextInStore' type='xsltEffectiveNsPtr' info=' storage next'/>
+ <field name='next' type='xsltEffectiveNsPtr' info=' next item in the list'/>
+ <field name='prefix' type='const xmlChar *' info=''/>
+ <field name='nsName' type='const xmlChar *' info='* Indicates if eclared on the literal result element; dunno if really
+* needed.
+*'/>
+ <field name='holdByElem' type='int' info=''/>
+ </struct>
+ <typedef name='xsltEffectiveNsPtr' file='xsltInternals' type='xsltEffectiveNs *'/>
+ <struct name='xsltElemPreComp' file='xsltInternals' type='struct _xsltElemPreComp'>
+ <field name='next' type='xsltElemPreCompPtr' info=' next item in the global chained
+list hold by xsltStylesheet.'/>
+ <field name='type' type='xsltStyleType' info=' type of the element'/>
+ <field name='func' type='xsltTransformFunction' info=' handling function'/>
+ <field name='inst' type='xmlNodePtr' info=' the node in the stylesheet&apos;s tree
+corresponding to this item end of common part'/>
+ <field name='free' type='xsltElemPreCompDeallocator' info=' the deallocator'/>
+ </struct>
+ <typedef name='xsltElemPreCompPtr' file='xsltInternals' type='xsltElemPreComp *'/>
+ <typedef name='xsltErrorSeverityType' file='xsltInternals' type='enum'/>
+ <struct name='xsltFormatNumberInfo' file='numbersInternals' type='struct _xsltFormatNumberInfo'>
+ <field name='integer_hash' type='int' info=' Number of &apos;#&apos; in integer part'/>
+ <field name='integer_digits' type='int' info=' Number of &apos;0&apos; in integer part'/>
+ <field name='frac_digits' type='int' info=' Number of &apos;0&apos; in fractional part'/>
+ <field name='frac_hash' type='int' info=' Number of &apos;#&apos; in fractional part'/>
+ <field name='group' type='int' info=' Number of chars per display &apos;group&apos;'/>
+ <field name='multiplier' type='int' info=' Scaling for percent or permille'/>
+ <field name='add_decimal' type='char' info=' Flag for whether decimal point appears in pattern'/>
+ <field name='is_multiplier_set' type='char' info=' Flag to catch multiple occurences of percent/permille'/>
+ <field name='is_negative_pattern' type='char' info=' Flag for processing -ve prefix/suffix'/>
+ </struct>
+ <typedef name='xsltFormatNumberInfoPtr' file='numbersInternals' type='xsltFormatNumberInfo *'/>
+ <struct name='xsltKeyDef' file='xsltInternals' type='struct _xsltKeyDef'>
+ <field name='next' type='struct _xsltKeyDef *' info=''/>
+ <field name='inst' type='xmlNodePtr' info=''/>
+ <field name='name' type='xmlChar *' info=''/>
+ <field name='nameURI' type='xmlChar *' info=''/>
+ <field name='match' type='xmlChar *' info=''/>
+ <field name='use' type='xmlChar *' info=''/>
+ <field name='comp' type='xmlXPathCompExprPtr' info=''/>
+ <field name='usecomp' type='xmlXPathCompExprPtr' info=''/>
+ <field name='nsList' type='xmlNsPtr *' info=' the namespaces in scope'/>
+ <field name='nsNr' type='int' info=' the number of namespaces in scope'/>
+ </struct>
+ <typedef name='xsltKeyDefPtr' file='xsltInternals' type='xsltKeyDef *'/>
+ <struct name='xsltKeyTable' file='xsltInternals' type='struct _xsltKeyTable'>
+ <field name='next' type='struct _xsltKeyTable *' info=''/>
+ <field name='name' type='xmlChar *' info=''/>
+ <field name='nameURI' type='xmlChar *' info=''/>
+ <field name='keys' type='xmlHashTablePtr' info=''/>
+ </struct>
+ <typedef name='xsltKeyTablePtr' file='xsltInternals' type='xsltKeyTable *'/>
+ <typedef name='xsltLoadType' file='documents' type='enum'/>
+ <typedef name='xsltLocale' file='xsltlocale' type='void *'/>
+ <typedef name='xsltLocaleChar' file='xsltlocale' type='xmlChar'/>
+ <struct name='xsltNsAlias' file='xsltInternals' type='struct _xsltNsAlias'>
+ <field name='next' type='xsltNsAliasPtr' info=' next in the list'/>
+ <field name='literalNs' type='xmlNsPtr' info=''/>
+ <field name='targetNs' type='xmlNsPtr' info=''/>
+ <field name='docOfTargetNs' type='xmlDocPtr' info=''/>
+ </struct>
+ <typedef name='xsltNsAliasPtr' file='xsltInternals' type='xsltNsAlias *'/>
+ <struct name='xsltNsList' file='xsltInternals' type='struct _xsltNsList'>
+ <field name='next' type='xsltNsListPtr' info=' next in the list'/>
+ <field name='ns' type='xmlNsPtr' info=''/>
+ </struct>
+ <struct name='xsltNsListContainer' file='xsltInternals' type='struct _xsltNsListContainer'>
+ <field name='list' type='xmlNsPtr *' info=''/>
+ <field name='totalNumber' type='int' info=''/>
+ <field name='xpathNumber' type='int' info=''/>
+ </struct>
+ <typedef name='xsltNsListContainerPtr' file='xsltInternals' type='xsltNsListContainer *'/>
+ <typedef name='xsltNsListPtr' file='xsltInternals' type='xsltNsList *'/>
+ <struct name='xsltNsMap' file='xsltInternals' type='struct _xsltNsMap'>
+ <field name='next' type='xsltNsMapPtr' info=' next in the list'/>
+ <field name='doc' type='xmlDocPtr' info=''/>
+ <field name='elem' type='xmlNodePtr' info=' the element holding the ns-decl'/>
+ <field name='ns' type='xmlNsPtr' info=' the xmlNs structure holding the XML namespace name'/>
+ <field name='origNsName' type='const xmlChar *' info=' the original XML namespace name'/>
+ <field name='newNsName' type='const xmlChar *' info=' the mapped XML namespace name'/>
+ </struct>
+ <typedef name='xsltNsMapPtr' file='xsltInternals' type='xsltNsMap *'/>
+ <struct name='xsltNumberData' file='numbersInternals' type='struct _xsltNumberData'>
+ <field name='level' type='const xmlChar *' info=''/>
+ <field name='count' type='const xmlChar *' info=''/>
+ <field name='from' type='const xmlChar *' info=''/>
+ <field name='value' type='const xmlChar *' info=''/>
+ <field name='format' type='const xmlChar *' info=''/>
+ <field name='has_format' type='int' info=''/>
+ <field name='digitsPerGroup' type='int' info=''/>
+ <field name='groupingCharacter' type='int' info=''/>
+ <field name='groupingCharacterLen' type='int' info=''/>
+ <field name='doc' type='xmlDocPtr' info=''/>
+ <field name='node' type='xmlNodePtr' info=''/>
+ <field name='countPat' type='struct _xsltCompMatch *' info=''/>
+ <field name='fromPat' type='struct _xsltCompMatch *' info='* accelerators
+*'/>
+ </struct>
+ <typedef name='xsltNumberDataPtr' file='numbersInternals' type='xsltNumberData *'/>
+ <typedef name='xsltOutputType' file='xsltInternals' type='enum'/>
+ <struct name='xsltPointerList' file='xsltInternals' type='struct _xsltPointerList'>
+ <field name='items' type='void **' info=''/>
+ <field name='number' type='int' info=''/>
+ <field name='size' type='int' info=''/>
+ </struct>
+ <typedef name='xsltPointerListPtr' file='xsltInternals' type='xsltPointerList *'/>
+ <struct name='xsltPrincipalStylesheetData' file='xsltInternals' type='struct _xsltPrincipalStylesheetData'>
+ <field name='namespaceDict' type='xmlDictPtr' info='* Global list of in-scope namespaces.
+*'/>
+ <field name='inScopeNamespaces' type='xsltPointerListPtr' info='* Global list of information for [xsl:]excluded-result-prefixes.
+*'/>
+ <field name='exclResultNamespaces' type='xsltPointerListPtr' info='* Global list of information for [xsl:]extension-element-prefixes.
+*'/>
+ <field name='extElemNamespaces' type='xsltPointerListPtr' info=''/>
+ <field name='effectiveNs' type='xsltEffectiveNsPtr' info='* Namespace name map to get rid of string comparison of namespace names.
+*'/>
+ <field name='nsMap' type='xsltNsMapPtr' info=''/>
+ </struct>
+ <typedef name='xsltPrincipalStylesheetDataPtr' file='xsltInternals' type='xsltPrincipalStylesheetData *'/>
+ <struct name='xsltRuntimeExtra' file='xsltInternals' type='struct _xsltRuntimeExtra'>
+ <field name='info' type='void *' info=' pointer to the extra data'/>
+ <field name='deallocate' type='xmlFreeFunc' info=' pointer to the deallocation routine'/>
+ </struct>
+ <typedef name='xsltRuntimeExtraPtr' file='xsltInternals' type='xsltRuntimeExtra *'/>
+ <typedef name='xsltSecurityOption' file='security' type='enum'/>
+ <struct name='xsltSecurityPrefs' file='security' type='struct _xsltSecurityPrefs'/>
+ <typedef name='xsltSecurityPrefsPtr' file='security' type='xsltSecurityPrefs *'/>
+ <struct name='xsltStackElem' file='xsltInternals' type='struct _xsltStackElem'>
+ <field name='next' type='struct _xsltStackElem *' info=' chained list'/>
+ <field name='comp' type='xsltStylePreCompPtr' info=' the compiled form'/>
+ <field name='computed' type='int' info=' was the evaluation done'/>
+ <field name='name' type='const xmlChar *' info=' the local part of the name QName'/>
+ <field name='nameURI' type='const xmlChar *' info=' the URI part of the name QName'/>
+ <field name='select' type='const xmlChar *' info=' the eval string'/>
+ <field name='tree' type='xmlNodePtr' info=' the sequence constructor if no eval
+string or the location'/>
+ <field name='value' type='xmlXPathObjectPtr' info=' The value if computed'/>
+ <field name='fragment' type='xmlDocPtr' info=' The Result Tree Fragments (needed for XSLT 1.0)
+which are bound to the variable&apos;s lifetime.'/>
+ <field name='level' type='int' info=' the depth in the tree;
+-1 if persistent (e.g. a given xsl:with-param)'/>
+ <field name='context' type='xsltTransformContextPtr' info=' The transformation context; needed to cache
+the variables'/>
+ <field name='flags' type='int' info=''/>
+ </struct>
+ <typedef name='xsltStackElemPtr' file='xsltInternals' type='xsltStackElem *'/>
+ <struct name='xsltStyleBasicEmptyItem' file='xsltInternals' type='struct _xsltStyleBasicEmptyItem'>
+ </struct>
+ <typedef name='xsltStyleBasicEmptyItemPtr' file='xsltInternals' type='xsltStyleBasicEmptyItem *'/>
+ <struct name='xsltStyleBasicExpressionItem' file='xsltInternals' type='struct _xsltStyleBasicExpressionItem'>
+ <field name='select' type='const xmlChar *' info=' TODO: Change this to &quot;expression&quot;.'/>
+ <field name='comp' type='xmlXPathCompExprPtr' info=' TODO: Change this to compExpr.'/>
+ </struct>
+ <typedef name='xsltStyleBasicExpressionItemPtr' file='xsltInternals' type='xsltStyleBasicExpressionItem *'/>
+ <struct name='xsltStyleBasicItemVariable' file='xsltInternals' type='struct _xsltStyleBasicItemVariable'>
+ <field name='select' type='const xmlChar *' info=''/>
+ <field name='comp' type='xmlXPathCompExprPtr' info=''/>
+ <field name='name' type='const xmlChar *' info=''/>
+ <field name='has_name' type='int' info=''/>
+ <field name='ns' type='const xmlChar *' info=''/>
+ <field name='has_ns' type='int' info=''/>
+ </struct>
+ <typedef name='xsltStyleBasicItemVariablePtr' file='xsltInternals' type='xsltStyleBasicItemVariable *'/>
+ <typedef name='xsltStyleItemApplyImports' file='xsltInternals' type='xsltStyleBasicEmptyItem'/>
+ <typedef name='xsltStyleItemApplyImportsPtr' file='xsltInternals' type='xsltStyleItemApplyImports *'/>
+ <struct name='xsltStyleItemApplyTemplates' file='xsltInternals' type='struct _xsltStyleItemApplyTemplates'>
+ <field name='mode' type='const xmlChar *' info=' apply-templates'/>
+ <field name='modeURI' type='const xmlChar *' info=' apply-templates'/>
+ <field name='select' type='const xmlChar *' info=' sort, copy-of, value-of, apply-templates'/>
+ <field name='comp' type='xmlXPathCompExprPtr' info=' a precompiled XPath expression TODO: with-params'/>
+ </struct>
+ <typedef name='xsltStyleItemApplyTemplatesPtr' file='xsltInternals' type='xsltStyleItemApplyTemplates *'/>
+ <struct name='xsltStyleItemAttribute' file='xsltInternals' type='struct _xsltStyleItemAttribute'>
+ <field name='name' type='const xmlChar *' info=''/>
+ <field name='has_name' type='int' info=''/>
+ <field name='ns' type='const xmlChar *' info=''/>
+ <field name='nsPrefix' type='const xmlChar *' info=''/>
+ <field name='has_ns' type='int' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemAttributePtr' file='xsltInternals' type='xsltStyleItemAttribute *'/>
+ <struct name='xsltStyleItemCallTemplate' file='xsltInternals' type='struct _xsltStyleItemCallTemplate'>
+ <field name='templ' type='xsltTemplatePtr' info=' call-template'/>
+ <field name='name' type='const xmlChar *' info=' element, attribute, pi'/>
+ <field name='has_name' type='int' info=' element, attribute, pi'/>
+ <field name='ns' type='const xmlChar *' info=' element'/>
+ <field name='has_ns' type='int' info=' element TODO: with-params'/>
+ </struct>
+ <typedef name='xsltStyleItemCallTemplatePtr' file='xsltInternals' type='xsltStyleItemCallTemplate *'/>
+ <typedef name='xsltStyleItemChoose' file='xsltInternals' type='xsltStyleBasicEmptyItem'/>
+ <typedef name='xsltStyleItemChoosePtr' file='xsltInternals' type='xsltStyleItemChoose *'/>
+ <typedef name='xsltStyleItemComment' file='xsltInternals' type='xsltStyleBasicEmptyItem'/>
+ <typedef name='xsltStyleItemCommentPtr' file='xsltInternals' type='xsltStyleItemComment *'/>
+ <struct name='xsltStyleItemCopy' file='xsltInternals' type='struct _xsltStyleItemCopy'>
+ <field name='use' type='const xmlChar *' info=' copy, element'/>
+ <field name='has_use' type='int' info=' copy, element'/>
+ </struct>
+ <typedef name='xsltStyleItemCopyOf' file='xsltInternals' type='xsltStyleBasicExpressionItem'/>
+ <typedef name='xsltStyleItemCopyOfPtr' file='xsltInternals' type='xsltStyleItemCopyOf *'/>
+ <typedef name='xsltStyleItemCopyPtr' file='xsltInternals' type='xsltStyleItemCopy *'/>
+ <struct name='xsltStyleItemDocument' file='xsltInternals' type='struct _xsltStyleItemDocument'>
+ <field name='ver11' type='int' info=' assigned: in xsltDocumentComp;
+read: nowhere;
+TODO: Check if we need.'/>
+ <field name='filename' type='const xmlChar *' info=' document URL'/>
+ <field name='has_filename' type='int' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemDocumentPtr' file='xsltInternals' type='xsltStyleItemDocument *'/>
+ <struct name='xsltStyleItemElement' file='xsltInternals' type='struct _xsltStyleItemElement'>
+ <field name='use' type='const xmlChar *' info=''/>
+ <field name='has_use' type='int' info=''/>
+ <field name='name' type='const xmlChar *' info=''/>
+ <field name='has_name' type='int' info=''/>
+ <field name='ns' type='const xmlChar *' info=''/>
+ <field name='nsPrefix' type='const xmlChar *' info=''/>
+ <field name='has_ns' type='int' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemElementPtr' file='xsltInternals' type='xsltStyleItemElement *'/>
+ <struct name='xsltStyleItemExtElement' file='xsltInternals' type='struct _xsltStyleItemExtElement'>
+ <field name='item' type='xsltElemPreCompPtr' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemExtElementPtr' file='xsltInternals' type='xsltStyleItemExtElement *'/>
+ <typedef name='xsltStyleItemFallback' file='xsltInternals' type='xsltStyleBasicEmptyItem'/>
+ <typedef name='xsltStyleItemFallbackPtr' file='xsltInternals' type='xsltStyleItemFallback *'/>
+ <typedef name='xsltStyleItemForEach' file='xsltInternals' type='xsltStyleBasicExpressionItem'/>
+ <typedef name='xsltStyleItemForEachPtr' file='xsltInternals' type='xsltStyleItemForEach *'/>
+ <struct name='xsltStyleItemIf' file='xsltInternals' type='struct _xsltStyleItemIf'>
+ <field name='test' type='const xmlChar *' info=' if'/>
+ <field name='comp' type='xmlXPathCompExprPtr' info=' a precompiled XPath expression'/>
+ </struct>
+ <typedef name='xsltStyleItemIfPtr' file='xsltInternals' type='xsltStyleItemIf *'/>
+ <struct name='xsltStyleItemInclude' file='xsltInternals' type='struct _xsltStyleItemInclude'>
+ <field name='include' type='xsltDocumentPtr' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemIncludePtr' file='xsltInternals' type='xsltStyleItemInclude *'/>
+ <struct name='xsltStyleItemLRElementInfo' file='xsltInternals' type='struct _xsltStyleItemLRElementInfo'>
+ <field name='effectiveNs' type='xsltEffectiveNsPtr' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemLRElementInfoPtr' file='xsltInternals' type='xsltStyleItemLRElementInfo *'/>
+ <struct name='xsltStyleItemMessage' file='xsltInternals' type='struct _xsltStyleItemMessage'>
+ <field name='terminate' type='int' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemMessagePtr' file='xsltInternals' type='xsltStyleItemMessage *'/>
+ <struct name='xsltStyleItemNumber' file='xsltInternals' type='struct _xsltStyleItemNumber'>
+ <field name='numdata' type='xsltNumberData' info=' number'/>
+ </struct>
+ <typedef name='xsltStyleItemNumberPtr' file='xsltInternals' type='xsltStyleItemNumber *'/>
+ <struct name='xsltStyleItemOtherwise' file='xsltInternals' type='struct _xsltStyleItemOtherwise'>
+ </struct>
+ <typedef name='xsltStyleItemOtherwisePtr' file='xsltInternals' type='xsltStyleItemOtherwise *'/>
+ <struct name='xsltStyleItemPI' file='xsltInternals' type='struct _xsltStyleItemPI'>
+ <field name='name' type='const xmlChar *' info=''/>
+ <field name='has_name' type='int' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemPIPtr' file='xsltInternals' type='xsltStyleItemPI *'/>
+ <struct name='xsltStyleItemParam' file='xsltInternals' type='struct _xsltStyleItemParam'>
+ <field name='select' type='const xmlChar *' info=''/>
+ <field name='comp' type='xmlXPathCompExprPtr' info=''/>
+ <field name='name' type='const xmlChar *' info=''/>
+ <field name='has_name' type='int' info=''/>
+ <field name='ns' type='const xmlChar *' info=''/>
+ <field name='has_ns' type='int' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemParamPtr' file='xsltInternals' type='xsltStyleItemParam *'/>
+ <struct name='xsltStyleItemSort' file='xsltInternals' type='struct _xsltStyleItemSort'>
+ <field name='stype' type='const xmlChar *' info=' sort'/>
+ <field name='has_stype' type='int' info=' sort'/>
+ <field name='number' type='int' info=' sort'/>
+ <field name='order' type='const xmlChar *' info=' sort'/>
+ <field name='has_order' type='int' info=' sort'/>
+ <field name='descending' type='int' info=' sort'/>
+ <field name='lang' type='const xmlChar *' info=' sort'/>
+ <field name='has_lang' type='int' info=' sort'/>
+ <field name='locale' type='xsltLocale' info=' sort'/>
+ <field name='case_order' type='const xmlChar *' info=' sort'/>
+ <field name='lower_first' type='int' info=' sort'/>
+ <field name='use' type='const xmlChar *' info=''/>
+ <field name='has_use' type='int' info=''/>
+ <field name='select' type='const xmlChar *' info=' sort, copy-of, value-of, apply-templates'/>
+ <field name='comp' type='xmlXPathCompExprPtr' info=' a precompiled XPath expression'/>
+ </struct>
+ <typedef name='xsltStyleItemSortPtr' file='xsltInternals' type='xsltStyleItemSort *'/>
+ <struct name='xsltStyleItemText' file='xsltInternals' type='struct _xsltStyleItemText'>
+ <field name='noescape' type='int' info=' text'/>
+ </struct>
+ <typedef name='xsltStyleItemTextPtr' file='xsltInternals' type='xsltStyleItemText *'/>
+ <struct name='xsltStyleItemUknown' file='xsltInternals' type='struct _xsltStyleItemUknown'>
+ </struct>
+ <typedef name='xsltStyleItemUknownPtr' file='xsltInternals' type='xsltStyleItemUknown *'/>
+ <struct name='xsltStyleItemValueOf' file='xsltInternals' type='struct _xsltStyleItemValueOf'>
+ <field name='select' type='const xmlChar *' info=''/>
+ <field name='comp' type='xmlXPathCompExprPtr' info=' a precompiled XPath expression'/>
+ <field name='noescape' type='int' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemValueOfPtr' file='xsltInternals' type='xsltStyleItemValueOf *'/>
+ <typedef name='xsltStyleItemVariable' file='xsltInternals' type='xsltStyleBasicItemVariable'/>
+ <typedef name='xsltStyleItemVariablePtr' file='xsltInternals' type='xsltStyleItemVariable *'/>
+ <struct name='xsltStyleItemWhen' file='xsltInternals' type='struct _xsltStyleItemWhen'>
+ <field name='test' type='const xmlChar *' info=''/>
+ <field name='comp' type='xmlXPathCompExprPtr' info=''/>
+ </struct>
+ <typedef name='xsltStyleItemWhenPtr' file='xsltInternals' type='xsltStyleItemWhen *'/>
+ <typedef name='xsltStyleItemWithParam' file='xsltInternals' type='xsltStyleBasicItemVariable'/>
+ <typedef name='xsltStyleItemWithParamPtr' file='xsltInternals' type='xsltStyleItemWithParam *'/>
+ <struct name='xsltStylePreComp' file='xsltInternals' type='struct _xsltStylePreComp'>
+ <field name='next' type='xsltElemPreCompPtr' info=' chained list'/>
+ <field name='type' type='xsltStyleType' info=' type of the element'/>
+ <field name='func' type='xsltTransformFunction' info=' handling function'/>
+ <field name='inst' type='xmlNodePtr' info='* Pre computed values.
+*'/>
+ <field name='stype' type='const xmlChar *' info=' sort'/>
+ <field name='has_stype' type='int' info=' sort'/>
+ <field name='number' type='int' info=' sort'/>
+ <field name='order' type='const xmlChar *' info=' sort'/>
+ <field name='has_order' type='int' info=' sort'/>
+ <field name='descending' type='int' info=' sort'/>
+ <field name='lang' type='const xmlChar *' info=' sort'/>
+ <field name='has_lang' type='int' info=' sort'/>
+ <field name='locale' type='xsltLocale' info=' sort'/>
+ <field name='case_order' type='const xmlChar *' info=' sort'/>
+ <field name='lower_first' type='int' info=' sort'/>
+ <field name='use' type='const xmlChar *' info=' copy, element'/>
+ <field name='has_use' type='int' info=' copy, element'/>
+ <field name='noescape' type='int' info=' text'/>
+ <field name='name' type='const xmlChar *' info=' element, attribute, pi'/>
+ <field name='has_name' type='int' info=' element, attribute, pi'/>
+ <field name='ns' type='const xmlChar *' info=' element'/>
+ <field name='has_ns' type='int' info=' element'/>
+ <field name='mode' type='const xmlChar *' info=' apply-templates'/>
+ <field name='modeURI' type='const xmlChar *' info=' apply-templates'/>
+ <field name='test' type='const xmlChar *' info=' if'/>
+ <field name='templ' type='xsltTemplatePtr' info=' call-template'/>
+ <field name='select' type='const xmlChar *' info=' sort, copy-of, value-of, apply-templates'/>
+ <field name='ver11' type='int' info=' document'/>
+ <field name='filename' type='const xmlChar *' info=' document URL'/>
+ <field name='has_filename' type='int' info=' document'/>
+ <field name='numdata' type='xsltNumberData' info=' number'/>
+ <field name='comp' type='xmlXPathCompExprPtr' info=' a precompiled XPath expression'/>
+ <field name='nsList' type='xmlNsPtr *' info=' the namespaces in scope'/>
+ <field name='nsNr' type='int' info=' the number of namespaces in scope'/>
+ </struct>
+ <typedef name='xsltStylePreCompPtr' file='xsltInternals' type='xsltStylePreComp *'/>
+ <typedef name='xsltStyleType' file='xsltInternals' type='enum'/>
+ <struct name='xsltStylesheet' file='xsltInternals' type='struct _xsltStylesheet'>
+ <field name='parent' type='struct _xsltStylesheet *' info=''/>
+ <field name='next' type='struct _xsltStylesheet *' info=''/>
+ <field name='imports' type='struct _xsltStylesheet *' info=''/>
+ <field name='docList' type='xsltDocumentPtr' info='* General data on the style sheet document.
+*'/>
+ <field name='doc' type='xmlDocPtr' info=' the parsed XML stylesheet'/>
+ <field name='stripSpaces' type='xmlHashTablePtr' info=' the hash table of the strip-space and
+preserve space elements'/>
+ <field name='stripAll' type='int' info=' strip-space * (1) preserve-space * (-1)'/>
+ <field name='cdataSection' type='xmlHashTablePtr' info='* Global variable or parameters.
+*'/>
+ <field name='variables' type='xsltStackElemPtr' info='* Template descriptions.
+*'/>
+ <field name='templates' type='xsltTemplatePtr' info=' the ordered list of templates'/>
+ <field name='templatesHash' type='void *' info=' hash table or wherever compiled templates
+informations are stored'/>
+ <field name='rootMatch' type='void *' info=' template based on /'/>
+ <field name='keyMatch' type='void *' info=' template based on key()'/>
+ <field name='elemMatch' type='void *' info=' template based on *'/>
+ <field name='attrMatch' type='void *' info=' template based on @*'/>
+ <field name='parentMatch' type='void *' info=' template based on ..'/>
+ <field name='textMatch' type='void *' info=' template based on text()'/>
+ <field name='piMatch' type='void *' info=' template based on processing-instruction()'/>
+ <field name='commentMatch' type='void *' info='* Namespace aliases.
+* NOTE: Not used in the refactored code.
+*'/>
+ <field name='nsAliases' type='xmlHashTablePtr' info='* Attribute sets.
+*'/>
+ <field name='attributeSets' type='xmlHashTablePtr' info='* Namespaces.
+* TODO: Eliminate this.
+*'/>
+ <field name='nsHash' type='xmlHashTablePtr' info=' the set of namespaces in use:
+ATTENTION: This is used for
+execution of XPath expressions; unfortunately
+it restricts the stylesheet to have distinct
+prefixes.
+TODO: We need to get rid of this.
+*'/>
+ <field name='nsDefs' type='void *' info='* Key definitions.
+*'/>
+ <field name='keys' type='void *' info='* Output related stuff.
+*'/>
+ <field name='method' type='xmlChar *' info=' the output method'/>
+ <field name='methodURI' type='xmlChar *' info=' associated namespace if any'/>
+ <field name='version' type='xmlChar *' info=' version string'/>
+ <field name='encoding' type='xmlChar *' info=' encoding string'/>
+ <field name='omitXmlDeclaration' type='int' info='* Number formatting.
+*'/>
+ <field name='decimalFormat' type='xsltDecimalFormatPtr' info=''/>
+ <field name='standalone' type='int' info=' standalone = &quot;yes&quot; | &quot;no&quot;'/>
+ <field name='doctypePublic' type='xmlChar *' info=' doctype-public string'/>
+ <field name='doctypeSystem' type='xmlChar *' info=' doctype-system string'/>
+ <field name='indent' type='int' info=' should output being indented'/>
+ <field name='mediaType' type='xmlChar *' info='* Precomputed blocks.
+*'/>
+ <field name='preComps' type='xsltElemPreCompPtr' info=' list of precomputed blocks'/>
+ <field name='warnings' type='int' info=' number of warnings found at compilation'/>
+ <field name='errors' type='int' info=' number of errors found at compilation'/>
+ <field name='exclPrefix' type='xmlChar *' info=' last excluded prefixes'/>
+ <field name='exclPrefixTab' type='xmlChar **' info=' array of excluded prefixes'/>
+ <field name='exclPrefixNr' type='int' info=' number of excluded prefixes in scope'/>
+ <field name='exclPrefixMax' type='int' info=' size of the array'/>
+ <field name='_private' type='void *' info='* Extensions.
+*'/>
+ <field name='extInfos' type='xmlHashTablePtr' info=' the extension data'/>
+ <field name='extrasNr' type='int' info='* For keeping track of nested includes
+*'/>
+ <field name='includes' type='xsltDocumentPtr' info='* dictionary: shared between stylesheet, context and documents.
+*'/>
+ <field name='dict' type='xmlDictPtr' info='* precompiled attribute value templates.
+*'/>
+ <field name='attVTs' type='void *' info='* if namespace-alias has an alias for the default stylesheet prefix
+* NOTE: Not used in the refactored code.
+*'/>
+ <field name='defaultAlias' type='const xmlChar *' info='* bypass pre-processing (already done) (used in imports)
+*'/>
+ <field name='nopreproc' type='int' info='* all document text strings were internalized
+*'/>
+ <field name='internalized' type='int' info='* Literal Result Element as Stylesheet c.f. section 2.3
+*'/>
+ <field name='literal_result' type='int' info='* The principal stylesheet
+*'/>
+ <field name='principal' type='xsltStylesheetPtr' info='* Compilation context used during compile-time.
+*'/>
+ <field name='compCtxt' type='xsltCompilerCtxtPtr' info=' TODO: Change this to (void *).'/>
+ <field name='principalData' type='xsltPrincipalStylesheetDataPtr' info='* Forwards-compatible processing
+*'/>
+ <field name='forwards_compatible' type='int' info=''/>
+ </struct>
+ <typedef name='xsltStylesheetPtr' file='xsltInternals' type='xsltStylesheet *'/>
+ <struct name='xsltTemplate' file='xsltInternals' type='struct _xsltTemplate'>
+ <field name='next' type='struct _xsltTemplate *' info=' chained list sorted by priority'/>
+ <field name='style' type='struct _xsltStylesheet *' info=' the containing stylesheet'/>
+ <field name='match' type='xmlChar *' info=' the matching string'/>
+ <field name='priority' type='float' info=' as given from the stylesheet, not computed'/>
+ <field name='name' type='const xmlChar *' info=' the local part of the name QName'/>
+ <field name='nameURI' type='const xmlChar *' info=' the URI part of the name QName'/>
+ <field name='mode' type='const xmlChar *' info=' the local part of the mode QName'/>
+ <field name='modeURI' type='const xmlChar *' info=' the URI part of the mode QName'/>
+ <field name='content' type='xmlNodePtr' info=' the template replacement value'/>
+ <field name='elem' type='xmlNodePtr' info='* TODO: @inheritedNsNr and @inheritedNs won&apos;t be used in the
+* refactored code.
+*'/>
+ <field name='inheritedNsNr' type='int' info=' number of inherited namespaces'/>
+ <field name='inheritedNs' type='xmlNsPtr *' info=' inherited non-excluded namespaces Profiling informations'/>
+ <field name='nbCalls' type='int' info=' the number of time the template was called'/>
+ <field name='time' type='unsigned long' info=' the time spent in this template'/>
+ <field name='params' type='void *' info=' xsl:param instructions'/>
+ <field name='templNr' type='int' info=' Nb of templates in the stack'/>
+ <field name='templMax' type='int' info=' Size of the templtes stack'/>
+ <field name='templCalledTab' type='xsltTemplatePtr *' info=' templates called'/>
+ <field name='templCountTab' type='int *' info=' .. and how often'/>
+ </struct>
+ <typedef name='xsltTemplatePtr' file='xsltInternals' type='xsltTemplate *'/>
+ <struct name='xsltTransformCache' file='xsltInternals' type='struct _xsltTransformCache'>
+ <field name='RVT' type='xmlDocPtr' info=''/>
+ <field name='nbRVT' type='int' info=''/>
+ <field name='stackItems' type='xsltStackElemPtr' info=''/>
+ <field name='nbStackItems' type='int' info=''/>
+ <field name='dbgCachedRVTs' type='int' info=''/>
+ <field name='dbgReusedRVTs' type='int' info=''/>
+ <field name='dbgCachedVars' type='int' info=''/>
+ <field name='dbgReusedVars' type='int' info=''/>
+ </struct>
+ <typedef name='xsltTransformCachePtr' file='xsltInternals' type='xsltTransformCache *'/>
+ <struct name='xsltTransformContext' file='xsltInternals' type='struct _xsltTransformContext'>
+ <field name='style' type='xsltStylesheetPtr' info=' the stylesheet used'/>
+ <field name='type' type='xsltOutputType' info=' the type of output'/>
+ <field name='templ' type='xsltTemplatePtr' info=' the current template'/>
+ <field name='templNr' type='int' info=' Nb of templates in the stack'/>
+ <field name='templMax' type='int' info=' Size of the templtes stack'/>
+ <field name='templTab' type='xsltTemplatePtr *' info=' the template stack'/>
+ <field name='vars' type='xsltStackElemPtr' info=' the current variable list'/>
+ <field name='varsNr' type='int' info=' Nb of variable list in the stack'/>
+ <field name='varsMax' type='int' info=' Size of the variable list stack'/>
+ <field name='varsTab' type='xsltStackElemPtr *' info=' the variable list stack'/>
+ <field name='varsBase' type='int' info='* Extensions
+*'/>
+ <field name='extFunctions' type='xmlHashTablePtr' info=' the extension functions'/>
+ <field name='extElements' type='xmlHashTablePtr' info=' the extension elements'/>
+ <field name='extInfos' type='xmlHashTablePtr' info=' the extension data'/>
+ <field name='mode' type='const xmlChar *' info=' the current mode'/>
+ <field name='modeURI' type='const xmlChar *' info=' the current mode URI'/>
+ <field name='docList' type='xsltDocumentPtr' info=' the document list'/>
+ <field name='document' type='xsltDocumentPtr' info=' the current source document; can be NULL if an RTF'/>
+ <field name='node' type='xmlNodePtr' info=' the current node being processed'/>
+ <field name='nodeList' type='xmlNodeSetPtr' info=' the current node list xmlNodePtr current; the node'/>
+ <field name='output' type='xmlDocPtr' info=' the resulting document'/>
+ <field name='insert' type='xmlNodePtr' info=' the insertion node'/>
+ <field name='xpathCtxt' type='xmlXPathContextPtr' info=' the XPath context'/>
+ <field name='state' type='xsltTransformState' info='* Global variables
+*'/>
+ <field name='globalVars' type='xmlHashTablePtr' info=' the global variables and params'/>
+ <field name='inst' type='xmlNodePtr' info=' the instruction in the stylesheet'/>
+ <field name='xinclude' type='int' info=' should XInclude be processed'/>
+ <field name='outputFile' type='const char *' info=' the output URI if known'/>
+ <field name='profile' type='int' info=' is this run profiled'/>
+ <field name='prof' type='long' info=' the current profiled value'/>
+ <field name='profNr' type='int' info=' Nb of templates in the stack'/>
+ <field name='profMax' type='int' info=' Size of the templtaes stack'/>
+ <field name='profTab' type='long *' info=' the profile template stack'/>
+ <field name='_private' type='void *' info=' user defined data'/>
+ <field name='extrasNr' type='int' info=' the number of extras used'/>
+ <field name='extrasMax' type='int' info=' the number of extras allocated'/>
+ <field name='extras' type='xsltRuntimeExtraPtr' info=' extra per runtime informations'/>
+ <field name='styleList' type='xsltDocumentPtr' info=' the stylesheet docs list'/>
+ <field name='sec' type='void *' info=' the security preferences if any'/>
+ <field name='error' type='xmlGenericErrorFunc' info=' a specific error handler'/>
+ <field name='errctx' type='void *' info=' context for the error handler'/>
+ <field name='sortfunc' type='xsltSortFunc' info='* handling of temporary Result Value Tree
+* (XSLT 1.0 term: &quot;Result Tree Fragment&quot;)
+*'/>
+ <field name='tmpRVT' type='xmlDocPtr' info=' list of RVT without persistance'/>
+ <field name='persistRVT' type='xmlDocPtr' info=' list of persistant RVTs'/>
+ <field name='ctxtflags' type='int' info='* Speed optimization when coalescing text nodes
+*'/>
+ <field name='lasttext' type='const xmlChar *' info=' last text node content'/>
+ <field name='lasttsize' type='unsigned int' info=' last text node size'/>
+ <field name='lasttuse' type='unsigned int' info='* Per Context Debugging
+*'/>
+ <field name='debugStatus' type='int' info=' the context level debug status'/>
+ <field name='traceCode' type='unsigned long *' info=' pointer to the variable holding the mask'/>
+ <field name='parserOptions' type='int' info='* dictionary: shared between stylesheet, context and documents.
+*'/>
+ <field name='dict' type='xmlDictPtr' info=''/>
+ <field name='tmpDoc' type='xmlDocPtr' info='* all document text strings are internalized
+*'/>
+ <field name='internalized' type='int' info=''/>
+ <field name='nbKeys' type='int' info=''/>
+ <field name='hasTemplKeyPatterns' type='int' info=''/>
+ <field name='currentTemplateRule' type='xsltTemplatePtr' info=' the Current Template Rule'/>
+ <field name='initialContextNode' type='xmlNodePtr' info=''/>
+ <field name='initialContextDoc' type='xmlDocPtr' info=''/>
+ <field name='cache' type='xsltTransformCachePtr' info=''/>
+ <field name='contextVariable' type='void *' info=' the current variable item'/>
+ <field name='localRVT' type='xmlDocPtr' info=' list of local tree fragments; will be freed when
+the instruction which created the fragment
+exits'/>
+ <field name='localRVTBase' type='xmlDocPtr' info=''/>
+ <field name='keyInitLevel' type='int' info=' Needed to catch recursive keys issues'/>
+ <field name='funcLevel' type='int' info=' Needed to catch recursive functions issues'/>
+ <field name='maxTemplateDepth' type='int' info=''/>
+ <field name='maxTemplateVars' type='int' info=''/>
+ </struct>
+ <typedef name='xsltTransformContextPtr' file='xsltInternals' type='xsltTransformContext *'/>
+ <typedef name='xsltTransformState' file='xsltInternals' type='enum'/>
+ <struct name='xsltVarInfo' file='xsltInternals' type='struct _xsltVarInfo'>
+ <field name='next' type='xsltVarInfoPtr' info=' next in the list'/>
+ <field name='prev' type='xsltVarInfoPtr' info=''/>
+ <field name='depth' type='int' info=' the depth in the tree'/>
+ <field name='name' type='const xmlChar *' info=''/>
+ <field name='nsName' type='const xmlChar *' info=''/>
+ </struct>
+ <typedef name='xsltVarInfoPtr' file='xsltInternals' type='xsltVarInfo *'/>
+ <variable name='xslDebugStatus' file='xsltutils' type='int'/>
+ <variable name='xsltConstNamespaceNameXSLT' file='xsltInternals' type='const xmlChar *'/>
+ <variable name='xsltDocDefaultLoader' file='documents' type='xsltDocLoaderFunc'/>
+ <variable name='xsltEngineVersion' file='xslt' type='const char *'/>
+ <variable name='xsltExtMarker' file='preproc' type='const xmlChar *'/>
+ <variable name='xsltGenericDebug' file='xsltutils' type='xmlGenericErrorFunc'/>
+ <variable name='xsltGenericDebugContext' file='xsltutils' type='void *'/>
+ <variable name='xsltGenericError' file='xsltutils' type='xmlGenericErrorFunc'/>
+ <variable name='xsltGenericErrorContext' file='xsltutils' type='void *'/>
+ <variable name='xsltLibxmlVersion' file='xslt' type='const int'/>
+ <variable name='xsltLibxsltVersion' file='xslt' type='const int'/>
+ <variable name='xsltMaxDepth' file='xslt' type='int'/>
+ <variable name='xsltMaxVars' file='xslt' type='int'/>
+ <variable name='xsltXSLTAttrMarker' file='xsltInternals' type='const xmlChar *'/>
+ <function name='xslAddCall' file='xsltutils'>
+ <info>Add template &quot;call&quot; to call stack</info>
+ <return type='int' info=': 1 on sucess 0 otherwise an error may be printed if WITH_XSLT_DEBUG_BREAKPOINTS is defined'/>
+ <arg name='templ' type='xsltTemplatePtr' info='current template being applied'/>
+ <arg name='source' type='xmlNodePtr' info='the source node being processed'/>
+ </function>
+ <function name='xslDropCall' file='xsltutils'>
+ <info>Drop the topmost item off the call stack</info>
+ <return type='void'/>
+ </function>
+ <function name='xslHandleDebugger' file='transform'>
+ <info>If either cur or node are a breakpoint, or xslDebugStatus in state where debugging must occcur at this time then transfer control to the xslDebugBreak function</info>
+ <return type='void'/>
+ <arg name='cur' type='xmlNodePtr' info='source node being executed'/>
+ <arg name='node' type='xmlNodePtr' info='data node being processed'/>
+ <arg name='templ' type='xsltTemplatePtr' info='temlate that applies to node'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the xslt transform context'/>
+ </function>
+ <functype name='xsltAddCallCallback' file='xsltutils'>
+ <info></info>
+ <return type='int' info=''/>
+ <arg name='templ' type='xsltTemplatePtr' info=''/>
+ <arg name='source' type='xmlNodePtr' info=''/>
+ </functype>
+ <function name='xsltAddKey' file='keys'>
+ <info>add a key definition to a stylesheet</info>
+ <return type='int' info='0 in case of success, and -1 in case of failure.'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ <arg name='name' type='const xmlChar *' info='the key name or NULL'/>
+ <arg name='nameURI' type='const xmlChar *' info='the name URI or NULL'/>
+ <arg name='match' type='const xmlChar *' info='the match value'/>
+ <arg name='use' type='const xmlChar *' info='the use value'/>
+ <arg name='inst' type='xmlNodePtr' info='the key instruction'/>
+ </function>
+ <function name='xsltAddStackElemList' file='variables'>
+ <info>Push an element list onto the stack.</info>
+ <return type='int' info='0 in case of success, -1 in case of failure.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='xn XSLT transformation context'/>
+ <arg name='elems' type='xsltStackElemPtr' info='a stack element list'/>
+ </function>
+ <function name='xsltAddTemplate' file='pattern'>
+ <info>Register the XSLT pattern associated to @cur</info>
+ <return type='int' info='-1 in case of error, 0 otherwise'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ <arg name='cur' type='xsltTemplatePtr' info='an XSLT template'/>
+ <arg name='mode' type='const xmlChar *' info='the mode name or NULL'/>
+ <arg name='modeURI' type='const xmlChar *' info='the mode URI or NULL'/>
+ </function>
+ <function name='xsltAllocateExtra' file='xsltInternals'>
+ <info>Allocate an extra runtime information slot statically while compiling the stylesheet and return its number</info>
+ <return type='int' info='the number of the slot'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ </function>
+ <function name='xsltAllocateExtraCtxt' file='xsltInternals'>
+ <info>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</info>
+ <return type='int' info='the number of the slot'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltApplyAttributeSet' file='attributes'>
+ <info>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.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT stylesheet'/>
+ <arg name='node' type='xmlNodePtr' info='the node in the source tree.'/>
+ <arg name='inst' type='xmlNodePtr' info='the attribute node &quot;xsl:use-attribute-sets&quot;'/>
+ <arg name='attrSets' type='const xmlChar *' info='the list of QNames of the attribute-sets to be applied'/>
+ </function>
+ <function name='xsltApplyImports' file='transform'>
+ <info>Process the XSLT apply-imports element.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='contextNode' type='xmlNodePtr' info='the current node in the source tree.'/>
+ <arg name='inst' type='xmlNodePtr' info='the element node of the XSLT &apos;apply-imports&apos; instruction'/>
+ <arg name='comp' type='xsltStylePreCompPtr' info='the compiled instruction'/>
+ </function>
+ <function name='xsltApplyOneTemplate' file='transform'>
+ <info>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&apos;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&apos;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)</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='contextNode' type='xmlNodePtr' info='the node in the source tree.'/>
+ <arg name='list' type='xmlNodePtr' info='the nodes of a sequence constructor'/>
+ <arg name='templ' type='xsltTemplatePtr' info='not used'/>
+ <arg name='params' type='xsltStackElemPtr' info='a set of parameters (xsl:param) or NULL'/>
+ </function>
+ <function name='xsltApplyStripSpaces' file='transform'>
+ <info>Strip the unwanted ignorable spaces from the input tree</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the root of the XML tree'/>
+ </function>
+ <function name='xsltApplyStylesheet' file='transform'>
+ <info>Apply the stylesheet to the document NOTE: This may lead to a non-wellformed output XML wise !</info>
+ <return type='xmlDocPtr' info='the result document or NULL in case of error'/>
+ <arg name='style' type='xsltStylesheetPtr' info='a parsed XSLT stylesheet'/>
+ <arg name='doc' type='xmlDocPtr' info='a parsed XML document'/>
+ <arg name='params' type='const char **' info='a NULL terminated arry of parameters names/values tuples'/>
+ </function>
+ <function name='xsltApplyStylesheetUser' file='transform'>
+ <info>Apply the stylesheet to the document and allow the user to provide its own transformation context.</info>
+ <return type='xmlDocPtr' info='the result document or NULL in case of error'/>
+ <arg name='style' type='xsltStylesheetPtr' info='a parsed XSLT stylesheet'/>
+ <arg name='doc' type='xmlDocPtr' info='a parsed XML document'/>
+ <arg name='params' type='const char **' info='a NULL terminated array of parameters names/values tuples'/>
+ <arg name='output' type='const char *' info='the targetted output'/>
+ <arg name='profile' type='FILE *' info='profile FILE * output or NULL'/>
+ <arg name='userCtxt' type='xsltTransformContextPtr' info='user provided transform context'/>
+ </function>
+ <function name='xsltApplyTemplates' file='transform'>
+ <info>Processes the XSLT &apos;apply-templates&apos; instruction on the current node.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT transformation context'/>
+ <arg name='node' type='xmlNodePtr' info='the &apos;current node&apos; in the source tree'/>
+ <arg name='inst' type='xmlNodePtr' info='the element node of an XSLT &apos;apply-templates&apos; instruction'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='the compiled instruction'/>
+ </function>
+ <function name='xsltAttrListTemplateProcess' file='templates'>
+ <info>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).</info>
+ <return type='xmlAttrPtr' info='a new list of attribute nodes, or NULL in case of error. (Don&apos;t assign the result to @target-&gt;properties; if the result is NULL, you&apos;ll get memory leaks, since the attributes will be disattached.)'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='target' type='xmlNodePtr' info='the element where the attributes will be grafted'/>
+ <arg name='attrs' type='xmlAttrPtr' info='the first attribute'/>
+ </function>
+ <function name='xsltAttrTemplateProcess' file='templates'>
+ <info>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).</info>
+ <return type='xmlAttrPtr' info='the generated attribute node.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='target' type='xmlNodePtr' info='the element where the attribute will be grafted'/>
+ <arg name='attr' type='xmlAttrPtr' info='the attribute node of a literal result element'/>
+ </function>
+ <function name='xsltAttrTemplateValueProcess' file='templates'>
+ <info>Process the given node and return the new string value.</info>
+ <return type='xmlChar *' info='the computed string value or NULL, must be deallocated by the caller.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='str' type='const xmlChar *' info='the attribute template node value'/>
+ </function>
+ <function name='xsltAttrTemplateValueProcessNode' file='templates'>
+ <info>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.</info>
+ <return type='xmlChar *' info='the computed string value or NULL, must be deallocated by the caller.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='str' type='const xmlChar *' info='the attribute template node value'/>
+ <arg name='inst' type='xmlNodePtr' info='the instruction (or LRE) in the stylesheet holding the attribute with an AVT'/>
+ </function>
+ <function name='xsltAttribute' file='transform'>
+ <info>Process the xslt attribute node on the source node</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the node in the source tree.'/>
+ <arg name='inst' type='xmlNodePtr' info='the xslt attribute node'/>
+ <arg name='comp' type='xsltStylePreCompPtr' info='precomputed information'/>
+ </function>
+ <function name='xsltCalibrateAdjust' file='xsltutils'>
+ <info>Used for to correct the calibration for xsltTimestamp()</info>
+ <return type='void'/>
+ <arg name='delta' type='long' info='a negative dealy value found'/>
+ </function>
+ <function name='xsltCallTemplate' file='transform'>
+ <info>Processes the XSLT call-template instruction on the source node.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT transformation context'/>
+ <arg name='node' type='xmlNodePtr' info='the &quot;current node&quot; in the source tree'/>
+ <arg name='inst' type='xmlNodePtr' info='the XSLT &apos;call-template&apos; instruction'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='the compiled information of the instruction'/>
+ </function>
+ <function name='xsltCheckExtPrefix' file='extensions'>
+ <info>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) xsltParseTemplateContent (xslt.c)</info>
+ <return type='int' info='1 if this is an extension, 0 otherwise'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ <arg name='URI' type='const xmlChar *' info='the namespace prefix (possibly NULL)'/>
+ </function>
+ <function name='xsltCheckExtURI' file='extensions'>
+ <info>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) xsltParseTemplateContent (xslt.c)</info>
+ <return type='int' info='1 if this is an extension, 0 otherwise'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ <arg name='URI' type='const xmlChar *' info='the namespace URI (possibly NULL)'/>
+ </function>
+ <function name='xsltCheckRead' file='security'>
+ <info>Check if the resource is allowed to be read</info>
+ <return type='int' info='1 if read is allowed, 0 if not and -1 in case or error.'/>
+ <arg name='sec' type='xsltSecurityPrefsPtr' info='the security options'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='URL' type='const xmlChar *' info='the resource to be read'/>
+ </function>
+ <function name='xsltCheckWrite' file='security'>
+ <info>Check if the resource is allowed to be written, if necessary makes some preliminary work like creating directories</info>
+ <return type='int' info='1 if write is allowed, 0 if not and -1 in case or error.'/>
+ <arg name='sec' type='xsltSecurityPrefsPtr' info='the security options'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='URL' type='const xmlChar *' info='the resource to be written'/>
+ </function>
+ <function name='xsltChoose' file='transform'>
+ <info>Processes the xsl:choose instruction on the source node.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='contextNode' type='xmlNodePtr' info='the current node in the source tree'/>
+ <arg name='inst' type='xmlNodePtr' info='the xsl:choose instruction'/>
+ <arg name='comp' type='xsltStylePreCompPtr' info='compiled information of the instruction'/>
+ </function>
+ <function name='xsltCleanupGlobals' file='xslt'>
+ <info>Unregister all global variables set up by the XSLT library</info>
+ <return type='void'/>
+ </function>
+ <function name='xsltCleanupTemplates' file='pattern'>
+ <info>Cleanup the state of the templates used by the stylesheet and the ones it imports.</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ </function>
+ <function name='xsltComment' file='transform'>
+ <info>Process the xslt comment node on the source node</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the node in the source tree.'/>
+ <arg name='inst' type='xmlNodePtr' info='the xslt comment node'/>
+ <arg name='comp' type='xsltStylePreCompPtr' info='precomputed information'/>
+ </function>
+ <function name='xsltCompileAttr' file='xsltInternals'>
+ <info>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.</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='a XSLT process context'/>
+ <arg name='attr' type='xmlAttrPtr' info='the attribute coming from the stylesheet.'/>
+ </function>
+ <function name='xsltCompilePattern' file='pattern'>
+ <info>Compile the XSLT pattern and generates a list of precompiled form suitable for fast matching. [1] Pattern ::= LocationPathPattern | Pattern &apos;|&apos; LocationPathPattern</info>
+ <return type='xsltCompMatchPtr' info='the generated pattern list or NULL in case of failure'/>
+ <arg name='pattern' type='const xmlChar *' info='an XSLT pattern'/>
+ <arg name='doc' type='xmlDocPtr' info='the containing document'/>
+ <arg name='node' type='xmlNodePtr' info='the containing element'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ <arg name='runtime' type='xsltTransformContextPtr' info='the transformation context, if done at run-time'/>
+ </function>
+ <function name='xsltComputeSortResult' file='xsltutils'>
+ <info>reorder the current node list accordingly to the set of sorting requirement provided by the array of nodes.</info>
+ <return type='xmlXPathObjectPtr *' info='a ordered XPath nodeset or NULL in case of error.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='sort' type='xmlNodePtr' info='node list'/>
+ </function>
+ <function name='xsltCopy' file='transform'>
+ <info>Execute the XSLT-copy instruction on the source node.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the node in the source tree'/>
+ <arg name='inst' type='xmlNodePtr' info='the element node of the XSLT-copy instruction'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='computed information of the XSLT-copy instruction'/>
+ </function>
+ <function name='xsltCopyNamespace' file='namespaces'>
+ <info>Copies a namespace node (declaration). If @elem is not NULL, then the new namespace will be declared on @elem.</info>
+ <return type='xmlNsPtr' info='a new xmlNsPtr, or NULL in case of an error.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a transformation context'/>
+ <arg name='elem' type='xmlNodePtr' info='the target element node'/>
+ <arg name='ns' type='xmlNsPtr' info='the namespace node'/>
+ </function>
+ <function name='xsltCopyNamespaceList' file='namespaces'>
+ <info>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&apos;t be used in the refactored code.</info>
+ <return type='xmlNsPtr' info='a new xmlNsPtr, or NULL in case of error.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a transformation context'/>
+ <arg name='node' type='xmlNodePtr' info='the target node'/>
+ <arg name='cur' type='xmlNsPtr' info='the first namespace'/>
+ </function>
+ <function name='xsltCopyOf' file='transform'>
+ <info>Process the XSLT copy-of instruction.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='node' type='xmlNodePtr' info='the current node in the source tree'/>
+ <arg name='inst' type='xmlNodePtr' info='the element node of the XSLT copy-of instruction'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='precomputed information of the XSLT copy-of instruction'/>
+ </function>
+ <function name='xsltCopyTextString' file='transform'>
+ <info>Adds @string to a newly created or an existent text node child of @target.</info>
+ <return type='xmlNodePtr' info='the text node, where the text content of @cur is copied to. NULL in case of API or internal errors.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='target' type='xmlNodePtr' info='the element where the text will be attached'/>
+ <arg name='string' type='const xmlChar *' info='the text string'/>
+ <arg name='noescape' type='int' info='should disable-escaping be activated for this text node.'/>
+ </function>
+ <function name='xsltCreateRVT' file='xsltInternals'>
+ <info>Creates a Result Value Tree (the XSLT 1.0 term for this is &quot;Result Tree Fragment&quot;)</info>
+ <return type='xmlDocPtr' info='the result value tree or NULL in case of API or internal errors.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltDebug' file='extra'>
+ <info>Process an debug node</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT processing context'/>
+ <arg name='node' type='xmlNodePtr' info='The current node'/>
+ <arg name='inst' type='xmlNodePtr' info='the instruction in the stylesheet'/>
+ <arg name='comp' type='xsltStylePreCompPtr' info='precomputed informations'/>
+ </function>
+ <function name='xsltDebugDumpExtensions' file='extensions'>
+ <info>Dumps a list of the registered XSLT extension functions and elements</info>
+ <return type='void'/>
+ <arg name='output' type='FILE *' info='the FILE * for the output, if NULL stdout is used'/>
+ </function>
+ <function name='xsltDebugGetDefaultTrace' file='xsltutils'>
+ <info>Get the current default debug tracing level mask</info>
+ <return type='xsltDebugTraceCodes' info='the current default debug tracing level mask'/>
+ </function>
+ <function name='xsltDebugSetDefaultTrace' file='xsltutils'>
+ <info>Set the default debug tracing level mask</info>
+ <return type='void'/>
+ <arg name='val' type='xsltDebugTraceCodes' info='tracing level mask'/>
+ </function>
+ <function name='xsltDecimalFormatGetByName' file='xsltInternals'>
+ <info>Find decimal-format by name</info>
+ <return type='xsltDecimalFormatPtr' info='the xsltDecimalFormatPtr'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='name' type='xmlChar *' info='the decimal-format name to find'/>
+ </function>
+ <function name='xsltDefaultSortFunction' file='xsltutils'>
+ <info>reorder the current node list accordingly to the set of sorting requirement provided by the arry of nodes.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='sorts' type='xmlNodePtr *' info='array of sort nodes'/>
+ <arg name='nbsorts' type='int' info='the number of sorts in the array'/>
+ </function>
+ <function name='xsltDoSortFunction' file='xsltutils'>
+ <info>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.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='sorts' type='xmlNodePtr *' info='array of sort nodes'/>
+ <arg name='nbsorts' type='int' info='the number of sorts in the array'/>
+ </function>
+ <functype name='xsltDocLoaderFunc' file='documents'>
+ <info>An xsltDocLoaderFunc 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.</info>
+ <return type='xmlDocPtr' info='the pointer to the document (which will be modified and freed by the engine later), or NULL in case of error.'/>
+ <arg name='URI' type='const xmlChar *' info='the URI of the document to load'/>
+ <arg name='dict' type='xmlDictPtr' info='the dictionary to use when parsing that document'/>
+ <arg name='options' type='int' info='parsing options, a set of xmlParserOption'/>
+ <arg name='ctxt' type='void *' info='the context, either a stylesheet or a transformation context'/>
+ <arg name='type' type='xsltLoadType' info='the xsltLoadType indicating the kind of loading required'/>
+ </functype>
+ <function name='xsltDocumentComp' file='preproc'>
+ <info>Pre process an XSLT-1.1 document element</info>
+ <return type='xsltElemPreCompPtr' info='a precompiled data structure for the element'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='inst' type='xmlNodePtr' info='the instruction in the stylesheet'/>
+ <arg name='function' type='xsltTransformFunction' info='unused'/>
+ </function>
+ <function name='xsltDocumentElem' file='transform'>
+ <info>Process an EXSLT/XSLT-1.1 document element</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT processing context'/>
+ <arg name='node' type='xmlNodePtr' info='The current node'/>
+ <arg name='inst' type='xmlNodePtr' info='the instruction in the stylesheet'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='precomputed information'/>
+ </function>
+ <function name='xsltDocumentFunction' file='functions'>
+ <info>Implement the document() XSLT function node-set document(object, node-set?)</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
+ <arg name='nargs' type='int' info='the number of arguments'/>
+ </function>
+ <function name='xsltDocumentSortFunction' file='xsltutils'>
+ <info>reorder the current node list @list accordingly to the document order This function is slow, obsolete and should not be used anymore.</info>
+ <return type='void'/>
+ <arg name='list' type='xmlNodeSetPtr' info='the node set'/>
+ </function>
+ <functype name='xsltDropCallCallback' file='xsltutils'>
+ <info></info>
+ <return type='void'/>
+ </functype>
+ <functype name='xsltElemPreCompDeallocator' file='xsltInternals'>
+ <info>Deallocates an #xsltElemPreComp structure.</info>
+ <return type='void'/>
+ <arg name='comp' type='xsltElemPreCompPtr' info='the #xsltElemPreComp to free up'/>
+ </functype>
+ <function name='xsltElement' file='transform'>
+ <info>Process the xslt element node on the source node</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the node in the source tree.'/>
+ <arg name='inst' type='xmlNodePtr' info='the xslt element node'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='precomputed information'/>
+ </function>
+ <function name='xsltElementAvailableFunction' file='functions'>
+ <info>Implement the element-available() XSLT function boolean element-available(string)</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
+ <arg name='nargs' type='int' info='the number of arguments'/>
+ </function>
+ <function name='xsltEvalAVT' file='xsltInternals'>
+ <info>Process the given AVT, and return the new string value.</info>
+ <return type='xmlChar *' info='the computed string value or NULL, must be deallocated by the caller.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='avt' type='void *' info='the prevompiled attribute value template info'/>
+ <arg name='node' type='xmlNodePtr' info='the node hosting the attribute'/>
+ </function>
+ <function name='xsltEvalAttrValueTemplate' file='templates'>
+ <info>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.</info>
+ <return type='xmlChar *' info='the computed string value or NULL, must be deallocated by the caller.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='inst' type='xmlNodePtr' info='the instruction (or LRE) in the stylesheet holding the attribute with an AVT'/>
+ <arg name='name' type='const xmlChar *' info='the attribute QName'/>
+ <arg name='ns' type='const xmlChar *' info='the attribute namespace URI'/>
+ </function>
+ <function name='xsltEvalGlobalVariables' file='variables'>
+ <info>Evaluates all global variables and parameters of a stylesheet. For internal use only. This is called at start of a transformation.</info>
+ <return type='int' info='0 in case of success, -1 in case of error'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ </function>
+ <function name='xsltEvalOneUserParam' file='variables'>
+ <info>This is normally called from xsltEvalUserParams 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&apos;s global variable/parameter hash table. To have a parameter treated literally (not as an XPath expression) use xsltQuoteUserParams (or xsltQuoteOneUserParam). For more details see description of xsltProcessOneUserParamInternal.</info>
+ <return type='int' info='0 in case of success, -1 in case of error.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='name' type='const xmlChar *' info='a null terminated string giving the name of the parameter'/>
+ <arg name='value' type='const xmlChar *' info='a null terminated string giving the XPath expression to be evaluated'/>
+ </function>
+ <function name='xsltEvalStaticAttrValueTemplate' file='templates'>
+ <info>Check if an attribute value template has a static value, i.e. the attribute value does not contain expressions contained in curly braces ({})</info>
+ <return type='const xmlChar *' info='the static string value or NULL, must be deallocated by the caller.'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='inst' type='xmlNodePtr' info='the instruction (or LRE) in the stylesheet holding the attribute with an AVT'/>
+ <arg name='name' type='const xmlChar *' info='the attribute Name'/>
+ <arg name='ns' type='const xmlChar *' info='the attribute namespace URI'/>
+ <arg name='found' type='int *' info='indicator whether the attribute is present'/>
+ </function>
+ <function name='xsltEvalTemplateString' file='templates'>
+ <info>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.</info>
+ <return type='xmlChar *' info='the computed string value or NULL; it&apos;s up to the caller to free the result.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='contextNode' type='xmlNodePtr' info='the current node in the source tree'/>
+ <arg name='inst' type='xmlNodePtr' info='the XSLT instruction (xsl:comment, xsl:processing-instruction)'/>
+ </function>
+ <function name='xsltEvalUserParams' file='variables'>
+ <info>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.</info>
+ <return type='int' info='0 in case of success, -1 in case of error'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='params' type='const char **' info='a NULL terminated array of parameters name/value tuples'/>
+ </function>
+ <function name='xsltEvalXPathPredicate' file='templates'>
+ <info>Process the expression using XPath and evaluate the result as an XPath predicate</info>
+ <return type='int' info='1 is the predicate was true, 0 otherwise'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='comp' type='xmlXPathCompExprPtr' info='the XPath compiled expression'/>
+ <arg name='nsList' type='xmlNsPtr *' info='the namespaces in scope'/>
+ <arg name='nsNr' type='int' info='the number of namespaces in scope'/>
+ </function>
+ <function name='xsltEvalXPathString' file='templates'>
+ <info>Process the expression using XPath and get a string</info>
+ <return type='xmlChar *' info='the computed string value or NULL, must be deallocated by the caller.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='comp' type='xmlXPathCompExprPtr' info='the compiled XPath expression'/>
+ </function>
+ <function name='xsltEvalXPathStringNs' file='templates'>
+ <info>Process the expression using XPath, allowing to pass a namespace mapping context and get a string</info>
+ <return type='xmlChar *' info='the computed string value or NULL, must be deallocated by the caller.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='comp' type='xmlXPathCompExprPtr' info='the compiled XPath expression'/>
+ <arg name='nsNr' type='int' info='the number of namespaces in the list'/>
+ <arg name='nsList' type='xmlNsPtr *' info='the list of in-scope namespaces to use'/>
+ </function>
+ <function name='xsltExtElementLookup' file='extensions'>
+ <info>Looks up an extension element. @ctxt can be NULL to search only in module elements.</info>
+ <return type='xsltTransformFunction' info='the element callback or NULL if not found'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT process context'/>
+ <arg name='name' type='const xmlChar *' info='the element name'/>
+ <arg name='URI' type='const xmlChar *' info='the element namespace URI'/>
+ </function>
+ <functype name='xsltExtInitFunction' file='extensions'>
+ <info>A function called at initialization time of an XSLT extension module.</info>
+ <return type='void *' info='a pointer to the module specific data for this transformation.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='URI' type='const xmlChar *' info='the namespace URI for the extension'/>
+ </functype>
+ <function name='xsltExtModuleElementLookup' file='extensions'>
+ <info>Looks up an extension module element</info>
+ <return type='xsltTransformFunction' info='the callback function if found, NULL otherwise.'/>
+ <arg name='name' type='const xmlChar *' info='the element name'/>
+ <arg name='URI' type='const xmlChar *' info='the element namespace URI'/>
+ </function>
+ <function name='xsltExtModuleElementPreComputeLookup' file='extensions'>
+ <info>Looks up an extension module element pre-computation function</info>
+ <return type='xsltPreComputeFunction' info='the callback function if found, NULL otherwise.'/>
+ <arg name='name' type='const xmlChar *' info='the element name'/>
+ <arg name='URI' type='const xmlChar *' info='the element namespace URI'/>
+ </function>
+ <function name='xsltExtModuleFunctionLookup' file='extensions'>
+ <info>Looks up an extension module function</info>
+ <return type='xmlXPathFunction' info='the function if found, NULL otherwise.'/>
+ <arg name='name' type='const xmlChar *' info='the function name'/>
+ <arg name='URI' type='const xmlChar *' info='the function namespace URI'/>
+ </function>
+ <function name='xsltExtModuleTopLevelLookup' file='extensions'>
+ <info>Looks up an extension module top-level element</info>
+ <return type='xsltTopLevelFunction' info='the callback function if found, NULL otherwise.'/>
+ <arg name='name' type='const xmlChar *' info='the top-level element name'/>
+ <arg name='URI' type='const xmlChar *' info='the top-level element namespace URI'/>
+ </function>
+ <functype name='xsltExtShutdownFunction' file='extensions'>
+ <info>A function called at shutdown time of an XSLT extension module.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='URI' type='const xmlChar *' info='the namespace URI for the extension'/>
+ <arg name='data' type='void *' info='the data associated to this module'/>
+ </functype>
+ <function name='xsltExtensionInstructionResultFinalize' file='xsltInternals'>
+ <info>Finalizes the data (e.g. result tree fragments) created within a value-returning process (e.g. EXSLT&apos;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.</info>
+ <return type='int' info='0 in case of success and -1 in case of API or internal errors.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltExtensionInstructionResultRegister' file='xsltInternals'>
+ <info>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().</info>
+ <return type='int' info='0 in case of success and -1 in case of error.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='obj' type='xmlXPathObjectPtr' info='an XPath object to be inspected for result tree fragments'/>
+ </function>
+ <function name='xsltFindDocument' file='documents'>
+ <info>Try to find a document within the XSLT transformation context. This will not find document infos for temporary Result Tree Fragments.</info>
+ <return type='xsltDocumentPtr' info='the desired xsltDocumentPtr or NULL in case of error'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='doc' type='xmlDocPtr' info='a parsed XML document'/>
+ </function>
+ <function name='xsltFindElemSpaceHandling' file='imports'>
+ <info>Find strip-space or preserve-space informations for an element respect the import precedence or the wildcards</info>
+ <return type='int' info='1 if space should be stripped, 0 if not, and 2 if everything should be CDTATA wrapped.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='node' type='xmlNodePtr' info='an XML node'/>
+ </function>
+ <function name='xsltFindTemplate' file='imports'>
+ <info>Finds the named template, apply import precedence rule. REVISIT TODO: We&apos;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.</info>
+ <return type='xsltTemplatePtr' info='the xsltTemplatePtr or NULL if not found'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='name' type='const xmlChar *' info='the template name'/>
+ <arg name='nameURI' type='const xmlChar *' info='the template name URI'/>
+ </function>
+ <function name='xsltForEach' file='transform'>
+ <info>Process the xslt for-each node on the source node</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='contextNode' type='xmlNodePtr' info='the &quot;current node&quot; in the source tree'/>
+ <arg name='inst' type='xmlNodePtr' info='the element node of the xsl:for-each instruction'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='the compiled information of the instruction'/>
+ </function>
+ <function name='xsltFormatNumberConversion' file='xsltInternals'>
+ <info>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 := &apos;\\u0000&apos;..&apos;\\uFFFD&apos; - specialCharacters suffix := &apos;\\u0000&apos;..&apos;\\uFFFD&apos; - specialCharacters integer := &apos;#&apos;* &apos;0&apos;* &apos;0&apos; fraction := &apos;0&apos;* &apos;#&apos;* 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 &apos; used to quote special characters in a prefix or suffix.</info>
+ <return type='xmlXPathError' info='a possible XPath error'/>
+ <arg name='self' type='xsltDecimalFormatPtr' info='the decimal format'/>
+ <arg name='format' type='xmlChar *' info='the format requested'/>
+ <arg name='number' type='double' info='the value to format'/>
+ <arg name='result' type='xmlChar **' info='the place to ouput the result'/>
+ </function>
+ <function name='xsltFormatNumberFunction' file='functions'>
+ <info>Implement the format-number() XSLT function string format-number(number, string, string?)</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
+ <arg name='nargs' type='int' info='the number of arguments'/>
+ </function>
+ <function name='xsltFreeAVTList' file='xsltInternals'>
+ <info>Free up the memory associated to the attribute value templates</info>
+ <return type='void'/>
+ <arg name='avt' type='void *' info='pointer to an list of AVT structures'/>
+ </function>
+ <function name='xsltFreeAttributeSetsHashes' file='attributes'>
+ <info>Free up the memory used by attribute sets</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ </function>
+ <function name='xsltFreeCompMatchList' file='pattern'>
+ <info>Free up the memory allocated by all the elements of @comp</info>
+ <return type='void'/>
+ <arg name='comp' type='xsltCompMatchPtr' info='an XSLT comp list'/>
+ </function>
+ <function name='xsltFreeCtxtExts' file='extensions'>
+ <info>Free the XSLT extension data</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltFreeDocumentKeys' file='keys'>
+ <info>Free the keys associated to a document</info>
+ <return type='void'/>
+ <arg name='idoc' type='xsltDocumentPtr' info='a XSLT document'/>
+ </function>
+ <function name='xsltFreeDocuments' file='documents'>
+ <info>Free up all the space used by the loaded documents</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltFreeExts' file='extensions'>
+ <info>Free up the memory used by XSLT extensions in a stylesheet</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ </function>
+ <function name='xsltFreeGlobalVariables' file='variables'>
+ <info>Free up the data associated to the global variables its value.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ </function>
+ <function name='xsltFreeKeys' file='keys'>
+ <info>Free up the memory used by XSLT keys in a stylesheet</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ </function>
+ <function name='xsltFreeLocale' file='xsltlocale'>
+ <info>Frees a locale created with xsltNewLocale</info>
+ <return type='void'/>
+ <arg name='locale' type='xsltLocale' info='the locale to free'/>
+ </function>
+ <function name='xsltFreeLocales' file='xsltlocale'>
+ <info>Cleanup function for the locale support on shutdown</info>
+ <return type='void'/>
+ </function>
+ <function name='xsltFreeNamespaceAliasHashes' file='namespaces'>
+ <info>Free up the memory used by namespaces aliases</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ </function>
+ <function name='xsltFreeRVTs' file='xsltInternals'>
+ <info>Frees all registered result value trees (Result Tree Fragments) of the transformation. Internal function; should not be called by user-code.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltFreeSecurityPrefs' file='security'>
+ <info>Free up a security preference block</info>
+ <return type='void'/>
+ <arg name='sec' type='xsltSecurityPrefsPtr' info='the security block to free'/>
+ </function>
+ <function name='xsltFreeStackElemList' file='xsltInternals'>
+ <info>Free up the memory allocated by @elem</info>
+ <return type='void'/>
+ <arg name='elem' type='xsltStackElemPtr' info='an XSLT stack element'/>
+ </function>
+ <function name='xsltFreeStyleDocuments' file='documents'>
+ <info>Frees the node-trees (and xsltDocument structures) of all stylesheet-modules of the stylesheet-level represented by the given @style.</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet (representing a stylesheet-level)'/>
+ </function>
+ <function name='xsltFreeStylePreComps' file='preproc'>
+ <info>Free up the memory allocated by all precomputed blocks</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltFreeStylesheet' file='xsltInternals'>
+ <info>Free up the memory allocated by @style</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ </function>
+ <function name='xsltFreeTemplateHashes' file='pattern'>
+ <info>Free up the memory used by xsltAddTemplate/xsltGetTemplate mechanism</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ </function>
+ <function name='xsltFreeTransformContext' file='transform'>
+ <info>Free up the memory allocated by @ctxt</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT parser context'/>
+ </function>
+ <function name='xsltFunctionAvailableFunction' file='functions'>
+ <info>Implement the function-available() XSLT function boolean function-available(string)</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
+ <arg name='nargs' type='int' info='the number of arguments'/>
+ </function>
+ <function name='xsltFunctionNodeSet' file='extra'>
+ <info>Implement the node-set() XSLT function node-set node-set(result-tree) This function is available in libxslt, saxon or xt namespace.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
+ <arg name='nargs' type='int' info='the number of arguments'/>
+ </function>
+ <function name='xsltGenerateIdFunction' file='functions'>
+ <info>Implement the generate-id() XSLT function string generate-id(node-set?)</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
+ <arg name='nargs' type='int' info='the number of arguments'/>
+ </function>
+ <function name='xsltGetCNsProp' file='xsltutils'>
+ <info>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.</info>
+ <return type='const xmlChar *' info='the attribute value or NULL if not found. The string is allocated in the stylesheet dictionary.'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ <arg name='node' type='xmlNodePtr' info='the node'/>
+ <arg name='name' type='const xmlChar *' info='the attribute name'/>
+ <arg name='nameSpace' type='const xmlChar *' info='the URI of the namespace'/>
+ </function>
+ <function name='xsltGetDebuggerStatus' file='xsltutils'>
+ <info>Get xslDebugStatus.</info>
+ <return type='int' info='the value of xslDebugStatus.'/>
+ </function>
+ <function name='xsltGetDefaultSecurityPrefs' file='security'>
+ <info>Get the default security preference application-wide</info>
+ <return type='xsltSecurityPrefsPtr' info='the current xsltSecurityPrefsPtr in use or NULL if none'/>
+ </function>
+ <function name='xsltGetExtData' file='extensions'>
+ <info>Retrieve the data associated to the extension module in this given transformation.</info>
+ <return type='void *' info='the pointer or NULL if not present'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='URI' type='const xmlChar *' info='the URI associated to the exension module'/>
+ </function>
+ <function name='xsltGetExtInfo' file='extensions'>
+ <info>looks up URI in extInfos of the stylesheet</info>
+ <return type='xmlHashTablePtr' info='a pointer to the hash table if found, else NULL'/>
+ <arg name='style' type='xsltStylesheetPtr' info='pointer to a stylesheet'/>
+ <arg name='URI' type='const xmlChar *' info='the namespace URI desired'/>
+ </function>
+ <function name='xsltGetKey' file='keys'>
+ <info>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.</info>
+ <return type='xmlNodeSetPtr' info='the nodeset resulting from the query or NULL'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='name' type='const xmlChar *' info='the key name or NULL'/>
+ <arg name='nameURI' type='const xmlChar *' info='the name URI or NULL'/>
+ <arg name='value' type='const xmlChar *' info='the key value to look for'/>
+ </function>
+ <function name='xsltGetNamespace' file='namespaces'>
+ <info>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)</info>
+ <return type='xmlNsPtr' info='a namespace declaration or NULL in case of namespace fixup failures or API or internal errors.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a transformation context'/>
+ <arg name='cur' type='xmlNodePtr' info='the input node'/>
+ <arg name='ns' type='xmlNsPtr' info='the namespace'/>
+ <arg name='out' type='xmlNodePtr' info='the output node (or its parent)'/>
+ </function>
+ <function name='xsltGetNsProp' file='xsltutils'>
+ <info>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.</info>
+ <return type='xmlChar *' info='the attribute value or NULL if not found. It&apos;s up to the caller to free the memory.'/>
+ <arg name='node' type='xmlNodePtr' info='the node'/>
+ <arg name='name' type='const xmlChar *' info='the attribute name'/>
+ <arg name='nameSpace' type='const xmlChar *' info='the URI of the namespace'/>
+ </function>
+ <function name='xsltGetPlainNamespace' file='namespaces'>
+ <info>Obsolete. *Not* called by any Libxslt/Libexslt function. Exaclty the same as xsltGetNamespace().</info>
+ <return type='xmlNsPtr' info='a namespace declaration or NULL in case of namespace fixup failures or API or internal errors.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a transformation context'/>
+ <arg name='cur' type='xmlNodePtr' info='the input node'/>
+ <arg name='ns' type='xmlNsPtr' info='the namespace'/>
+ <arg name='out' type='xmlNodePtr' info='the result element'/>
+ </function>
+ <function name='xsltGetProfileInformation' file='xsltutils'>
+ <info>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=&quot;1.0&quot;?&gt; &lt;profile&gt; &lt;template rank=&quot;1&quot; match=&quot;*&quot; name=&quot;&quot; mode=&quot;&quot; calls=&quot;6&quot; time=&quot;48&quot; average=&quot;8&quot;/&gt; &lt;template rank=&quot;2&quot; match=&quot;item2|item3&quot; name=&quot;&quot; mode=&quot;&quot; calls=&quot;10&quot; time=&quot;30&quot; average=&quot;3&quot;/&gt; &lt;template rank=&quot;3&quot; match=&quot;item1&quot; name=&quot;&quot; mode=&quot;&quot; calls=&quot;5&quot; time=&quot;17&quot; average=&quot;3&quot;/&gt; &lt;/profile&gt; The caller will need to free up the returned tree with xmlFreeDoc()</info>
+ <return type='xmlDocPtr' info='the xmlDocPtr corresponding to the result or NULL if not available.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a transformation context'/>
+ </function>
+ <function name='xsltGetQNameURI' file='xsltutils'>
+ <info>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.</info>
+ <return type='const xmlChar *' info='the namespace URI if there is a prefix, or NULL if @name is not prefixed.'/>
+ <arg name='node' type='xmlNodePtr' info='the node holding the QName'/>
+ <arg name='name' type='xmlChar **' info='pointer to the initial QName value'/>
+ </function>
+ <function name='xsltGetQNameURI2' file='xsltutils'>
+ <info>This function is similar to xsltGetQNameURI, but is used when @name is a dictionary entry.</info>
+ <return type='const xmlChar *' info='the namespace URI if there is a prefix, or NULL if @name is not prefixed.'/>
+ <arg name='style' type='xsltStylesheetPtr' info='stylesheet pointer'/>
+ <arg name='node' type='xmlNodePtr' info='the node holding the QName'/>
+ <arg name='name' type='const xmlChar **' info='pointer to the initial QName value'/>
+ </function>
+ <function name='xsltGetSecurityPrefs' file='security'>
+ <info>Lookup the security option to get the callback checking function</info>
+ <return type='xsltSecurityCheck' info='NULL if not found, the function otherwise'/>
+ <arg name='sec' type='xsltSecurityPrefsPtr' info='the security block to update'/>
+ <arg name='option' type='xsltSecurityOption' info='the option to lookup'/>
+ </function>
+ <function name='xsltGetSpecialNamespace' file='namespaces'>
+ <info>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&apos;s priority is to preserve ns-prefixes; it will only change a prefix if there&apos;s a namespace clash. If both @nsName and @nsPrefix are NULL, then this will try to &quot;undeclare&quot; a default namespace by declaring an xmlns=&quot;&quot;.</info>
+ <return type='xmlNsPtr' info='a namespace declaration or NULL.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the transformation context'/>
+ <arg name='invocNode' type='xmlNodePtr' info='the invoking node; e.g. a literal result element/attr; only used for error reports'/>
+ <arg name='nsName' type='const xmlChar *' info='the namespace name (or NULL)'/>
+ <arg name='nsPrefix' type='const xmlChar *' info='the suggested namespace prefix (or NULL)'/>
+ <arg name='target' type='xmlNodePtr' info='the result element on which to anchor a namespace'/>
+ </function>
+ <function name='xsltGetTemplate' file='pattern'>
+ <info>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.</info>
+ <return type='xsltTemplatePtr' info='the xsltTemplatePtr or NULL if not found'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the node being processed'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the current style'/>
+ </function>
+ <function name='xsltGetUTF8Char' file='xsltutils'>
+ <info>Read one UTF8 Char from @utf Function copied from libxml2 xmlGetUTF8Char() ... to discard ultimately and use the original API</info>
+ <return type='int' info='the char value or -1 in case of error and update @len with the number of bytes used'/>
+ <arg name='utf' type='const unsigned char *' info='a sequence of UTF-8 encoded bytes'/>
+ <arg name='len' type='int *' info='a pointer to @bytes len'/>
+ </function>
+ <function name='xsltGetXIncludeDefault' file='transform'>
+ <info>Provides the default state for XInclude processing</info>
+ <return type='int' info='0 if there is no processing 1 otherwise'/>
+ </function>
+ <functype name='xsltHandleDebuggerCallback' file='xsltutils'>
+ <info></info>
+ <return type='void'/>
+ <arg name='cur' type='xmlNodePtr' info=''/>
+ <arg name='node' type='xmlNodePtr' info=''/>
+ <arg name='templ' type='xsltTemplatePtr' info=''/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info=''/>
+ </functype>
+ <function name='xsltIf' file='transform'>
+ <info>Processes the xsl:if instruction on the source node.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='contextNode' type='xmlNodePtr' info='the current node in the source tree'/>
+ <arg name='inst' type='xmlNodePtr' info='the xsl:if instruction'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='compiled information of the instruction'/>
+ </function>
+ <function name='xsltInit' file='xslt'>
+ <info>Initializes the processor (e.g. registers built-in extensions, etc.)</info>
+ <return type='void'/>
+ </function>
+ <function name='xsltInitAllDocKeys' file='xsltInternals'>
+ <info>INTERNAL ROUTINE ONLY Check if any keys on the current document need to be computed</info>
+ <return type='int' info='0 in case of success, -1 in case of failure'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='transformation context'/>
+ </function>
+ <function name='xsltInitCtxtExts' file='extensions'>
+ <info>Initialize the set of modules with registered stylesheet data</info>
+ <return type='int' info='the number of modules initialized or -1 in case of error'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltInitCtxtKey' file='xsltInternals'>
+ <info>Computes the key tables this key and for the current input document.</info>
+ <return type='int' info='0 on success, -1 on error'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='idoc' type='xsltDocumentPtr' info='the document information (holds key values)'/>
+ <arg name='keyDef' type='xsltKeyDefPtr' info='the key definition'/>
+ </function>
+ <function name='xsltInitCtxtKeys' file='keys'>
+ <info>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.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='idoc' type='xsltDocumentPtr' info='a document info'/>
+ </function>
+ <function name='xsltInitElemPreComp' file='extensions'>
+ <info>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.</info>
+ <return type='void'/>
+ <arg name='comp' type='xsltElemPreCompPtr' info='an #xsltElemPreComp (or generally a derived structure)'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='inst' type='xmlNodePtr' info='the element node'/>
+ <arg name='function' type='xsltTransformFunction' info='the transform function'/>
+ <arg name='freeFunc' type='xsltElemPreCompDeallocator' info='the @comp deallocator'/>
+ </function>
+ <function name='xsltInitGlobals' file='extensions'>
+ <info>Initialize the global variables for extensions</info>
+ <return type='void'/>
+ </function>
+ <function name='xsltIsBlank' file='xsltInternals'>
+ <info>Check if a string is ignorable</info>
+ <return type='int' info='1 if the string is NULL or made of blanks chars, 0 otherwise'/>
+ <arg name='str' type='xmlChar *' info='a string'/>
+ </function>
+ <function name='xsltKeyFunction' file='functions'>
+ <info>Implement the key() XSLT function node-set key(string, object)</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
+ <arg name='nargs' type='int' info='the number of arguments'/>
+ </function>
+ <function name='xsltLoadDocument' file='documents'>
+ <info>Try to load a document (not a stylesheet) within the XSLT transformation context</info>
+ <return type='xsltDocumentPtr' info='the new xsltDocumentPtr or NULL in case of error'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='URI' type='const xmlChar *' info='the computed URI of the document'/>
+ </function>
+ <function name='xsltLoadStyleDocument' file='documents'>
+ <info>Try to load a stylesheet document within the XSLT transformation context</info>
+ <return type='xsltDocumentPtr' info='the new xsltDocumentPtr or NULL in case of error'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT style sheet'/>
+ <arg name='URI' type='const xmlChar *' info='the computed URI of the document'/>
+ </function>
+ <function name='xsltLoadStylesheetPI' file='xsltInternals'>
+ <info>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.</info>
+ <return type='xsltStylesheetPtr' info='a new XSLT stylesheet structure or NULL if not found.'/>
+ <arg name='doc' type='xmlDocPtr' info='a document to process'/>
+ </function>
+ <function name='xsltLocalVariablePop' file='transform'>
+ <info>Pops all variable values at the given @depth from the stack.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the transformation context'/>
+ <arg name='limitNr' type='int' info='number of variables which should remain'/>
+ <arg name='level' type='int' info='the depth in the xsl:template&apos;s tree'/>
+ </function>
+ <function name='xsltLocalVariablePush' file='transform'>
+ <info>Places the variable onto the local variable stack</info>
+ <return type='int' info='0 for success, -1 for any error **NOTE:** This is an internal routine and should not be called by users!'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the transformation context'/>
+ <arg name='variable' type='xsltStackElemPtr' info='variable to be pushed to the variable stack'/>
+ <arg name='level' type='int' info='new value for variable&apos;s level'/>
+ </function>
+ <function name='xsltLocaleStrcmp' file='xsltlocale'>
+ <info>Compares two strings transformed with xsltStrxfrm</info>
+ <return type='int' info='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'/>
+ <arg name='locale' type='xsltLocale' info='a locale identifier'/>
+ <arg name='str1' type='const xsltLocaleChar *' info='a string transformed with xsltStrxfrm'/>
+ <arg name='str2' type='const xsltLocaleChar *' info='a string transformed with xsltStrxfrm'/>
+ </function>
+ <function name='xsltMatchPattern' file='pattern'>
+ <info></info>
+ <return type='int' info=''/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info=''/>
+ <arg name='node' type='xmlNodePtr' info=''/>
+ <arg name='pattern' type='const xmlChar *' info=''/>
+ <arg name='ctxtdoc' type='xmlDocPtr' info=''/>
+ <arg name='ctxtnode' type='xmlNodePtr' info=''/>
+ </function>
+ <function name='xsltMessage' file='xsltutils'>
+ <info>Process and xsl:message construct</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT processing context'/>
+ <arg name='node' type='xmlNodePtr' info='The current node'/>
+ <arg name='inst' type='xmlNodePtr' info='The node containing the message instruction'/>
+ </function>
+ <function name='xsltNamespaceAlias' file='namespaces'>
+ <info>Read the stylesheet-prefix and result-prefix attributes, register them as well as the corresponding namespace.</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='node' type='xmlNodePtr' info='the xsl:namespace-alias node'/>
+ </function>
+ <function name='xsltNeedElemSpaceHandling' file='imports'>
+ <info>Checks whether that stylesheet requires white-space stripping</info>
+ <return type='int' info='1 if space should be stripped, 0 if not'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltNewDocument' file='documents'>
+ <info>Register a new document, apply key computations</info>
+ <return type='xsltDocumentPtr' info='a handler to the document'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context (or NULL)'/>
+ <arg name='doc' type='xmlDocPtr' info='a parsed XML document'/>
+ </function>
+ <function name='xsltNewElemPreComp' file='extensions'>
+ <info>Creates and initializes an #xsltElemPreComp</info>
+ <return type='xsltElemPreCompPtr' info='the new and initialized #xsltElemPreComp'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='inst' type='xmlNodePtr' info='the element node'/>
+ <arg name='function' type='xsltTransformFunction' info='the transform function'/>
+ </function>
+ <function name='xsltNewLocale' file='xsltlocale'>
+ <info>Creates a new locale of an opaque system dependent type based on the language tag.</info>
+ <return type='xsltLocale' info='the locale or NULL on error or if no matching locale was found'/>
+ <arg name='languageTag' type='const xmlChar *' info='RFC 3066 language tag'/>
+ </function>
+ <function name='xsltNewSecurityPrefs' file='security'>
+ <info>Create a new security preference block</info>
+ <return type='xsltSecurityPrefsPtr' info='a pointer to the new block or NULL in case of error'/>
+ </function>
+ <function name='xsltNewStyleDocument' file='documents'>
+ <info>Register a new document, apply key computations</info>
+ <return type='xsltDocumentPtr' info='a handler to the document'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT style sheet'/>
+ <arg name='doc' type='xmlDocPtr' info='a parsed XML document'/>
+ </function>
+ <function name='xsltNewStylesheet' file='xsltInternals'>
+ <info>Create a new XSLT Stylesheet</info>
+ <return type='xsltStylesheetPtr' info='the newly allocated xsltStylesheetPtr or NULL in case of error'/>
+ </function>
+ <function name='xsltNewTransformContext' file='transform'>
+ <info>Create a new XSLT TransformContext</info>
+ <return type='xsltTransformContextPtr' info='the newly allocated xsltTransformContextPtr or NULL in case of error'/>
+ <arg name='style' type='xsltStylesheetPtr' info='a parsed XSLT stylesheet'/>
+ <arg name='doc' type='xmlDocPtr' info='the input document'/>
+ </function>
+ <function name='xsltNextImport' file='imports'>
+ <info>Find the next stylesheet in import precedence.</info>
+ <return type='xsltStylesheetPtr' info='the next stylesheet or NULL if it was the last one'/>
+ <arg name='cur' type='xsltStylesheetPtr' info='the current XSLT stylesheet'/>
+ </function>
+ <function name='xsltNormalizeCompSteps' file='pattern'>
+ <info>This is a hashtable scanner function to normalize the compiled steps of an imported stylesheet.</info>
+ <return type='void'/>
+ <arg name='payload' type='void *' info='pointer to template hash table entry'/>
+ <arg name='data' type='void *' info='pointer to the stylesheet'/>
+ <arg name='name' type='const xmlChar *' info='template match name'/>
+ </function>
+ <function name='xsltNumber' file='transform'>
+ <info>Process the xslt number node on the source node</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the node in the source tree.'/>
+ <arg name='inst' type='xmlNodePtr' info='the xslt number node'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='precomputed information'/>
+ </function>
+ <function name='xsltNumberFormat' file='xsltInternals'>
+ <info>Convert one number.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='data' type='xsltNumberDataPtr' info='the formatting informations'/>
+ <arg name='node' type='xmlNodePtr' info='the data to format'/>
+ </function>
+ <function name='xsltParseAnyXSLTElem' file='xsltInternals'>
+ <info>Parses, validates the content models and compiles XSLT instructions.</info>
+ <return type='int' info='0 if everything&apos;s fine; -1 on API or internal errors.'/>
+ <arg name='cctxt' type='xsltCompilerCtxtPtr' info='the compilation context'/>
+ <arg name='elem' type='xmlNodePtr' info='the element node of the XSLT instruction'/>
+ </function>
+ <function name='xsltParseGlobalParam' file='variables'>
+ <info>parse an XSLT transformation param declaration and record its value.</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='cur' type='xmlNodePtr' info='the &quot;param&quot; element'/>
+ </function>
+ <function name='xsltParseGlobalVariable' file='variables'>
+ <info>Parses a global XSLT &apos;variable&apos; declaration at compilation time and registers it</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='cur' type='xmlNodePtr' info='the &quot;variable&quot; element'/>
+ </function>
+ <function name='xsltParseSequenceConstructor' file='xsltInternals'>
+ <info>Parses a &quot;template&quot; content (or &quot;sequence constructor&quot; in XSLT 2.0 terms). This will additionally remove xsl:text elements from the tree.</info>
+ <return type='void'/>
+ <arg name='cctxt' type='xsltCompilerCtxtPtr' info='the compilation context'/>
+ <arg name='cur' type='xmlNodePtr' info='the start-node of the content to be parsed'/>
+ </function>
+ <function name='xsltParseStylesheetAttributeSet' file='attributes'>
+ <info>parse an XSLT stylesheet attribute-set element</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='cur' type='xmlNodePtr' info='the &quot;attribute-set&quot; element'/>
+ </function>
+ <function name='xsltParseStylesheetCallerParam' file='variables'>
+ <info>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().</info>
+ <return type='xsltStackElemPtr' info='the new xsltStackElemPtr or NULL'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='inst' type='xmlNodePtr' info='the xsl:with-param instruction element'/>
+ </function>
+ <function name='xsltParseStylesheetDoc' file='xsltInternals'>
+ <info>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.</info>
+ <return type='xsltStylesheetPtr' info='a new XSLT stylesheet structure.'/>
+ <arg name='doc' type='xmlDocPtr' info='and xmlDoc parsed XML'/>
+ </function>
+ <function name='xsltParseStylesheetFile' file='xsltInternals'>
+ <info>Load and parse an XSLT stylesheet</info>
+ <return type='xsltStylesheetPtr' info='a new XSLT stylesheet structure.'/>
+ <arg name='filename' type='const xmlChar *' info='the filename/URL to the stylesheet'/>
+ </function>
+ <function name='xsltParseStylesheetImport' file='imports'>
+ <info>parse an XSLT stylesheet import element</info>
+ <return type='int' info='0 in case of success -1 in case of failure.'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='cur' type='xmlNodePtr' info='the import element'/>
+ </function>
+ <function name='xsltParseStylesheetImportedDoc' file='xsltInternals'>
+ <info>parse an XSLT stylesheet building the associated structures except the processing not needed for imported documents.</info>
+ <return type='xsltStylesheetPtr' info='a new XSLT stylesheet structure.'/>
+ <arg name='doc' type='xmlDocPtr' info='an xmlDoc parsed XML'/>
+ <arg name='parentStyle' type='xsltStylesheetPtr' info='pointer to the parent stylesheet (if it exists)'/>
+ </function>
+ <function name='xsltParseStylesheetInclude' file='imports'>
+ <info>parse an XSLT stylesheet include element</info>
+ <return type='int' info='0 in case of success -1 in case of failure'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='cur' type='xmlNodePtr' info='the include node'/>
+ </function>
+ <function name='xsltParseStylesheetOutput' file='xsltInternals'>
+ <info>parse an XSLT stylesheet output element and record information related to the stylesheet output</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='cur' type='xmlNodePtr' info='the &quot;output&quot; element'/>
+ </function>
+ <function name='xsltParseStylesheetParam' file='variables'>
+ <info>Registers a local XSLT &apos;param&apos; declaration at transformation time and evaluates its value.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='cur' type='xmlNodePtr' info='the XSLT &apos;param&apos; element'/>
+ </function>
+ <function name='xsltParseStylesheetProcess' file='xsltInternals'>
+ <info>Parses an XSLT stylesheet, adding the associated structures. Called by: xsltParseStylesheetImportedDoc() (xslt.c) xsltParseStylesheetInclude() (imports.c)</info>
+ <return type='xsltStylesheetPtr' info='the value of the @style parameter if everything went right, NULL if something went amiss.'/>
+ <arg name='ret' type='xsltStylesheetPtr' info='the XSLT stylesheet (the current stylesheet-level)'/>
+ <arg name='doc' type='xmlDocPtr' info='and xmlDoc parsed XML'/>
+ </function>
+ <function name='xsltParseStylesheetVariable' file='variables'>
+ <info>Registers a local XSLT &apos;variable&apos; instruction at transformation time and evaluates its value.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='inst' type='xmlNodePtr' info='the xsl:variable instruction element'/>
+ </function>
+ <function name='xsltParseTemplateContent' file='xsltInternals'>
+ <info>parse a template content-model Clean-up the template content from unwanted ignorable blank nodes and process xslt:text</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='templ' type='xmlNodePtr' info='the container node (can be a document for literal results)'/>
+ </function>
+ <function name='xsltPointerListAddSize' file='xsltInternals'>
+ <info>Adds an item to the list.</info>
+ <return type='int' info='the position of the added item in the list or -1 in case of an error.'/>
+ <arg name='list' type='xsltPointerListPtr' info='the pointer list structure'/>
+ <arg name='item' type='void *' info='the item to be stored'/>
+ <arg name='initialSize' type='int' info='the initial size of the list'/>
+ </function>
+ <function name='xsltPointerListClear' file='xsltInternals'>
+ <info>Resets the list, but does not free the allocated array and does not free the content of the list.</info>
+ <return type='void'/>
+ <arg name='list' type='xsltPointerListPtr' info='pointer to the list to be cleared'/>
+ </function>
+ <function name='xsltPointerListCreate' file='xsltInternals'>
+ <info>Creates an xsltPointerList structure.</info>
+ <return type='xsltPointerListPtr' info='a xsltPointerList structure or NULL in case of an error.'/>
+ <arg name='initialSize' type='int' info='the initial size for the list'/>
+ </function>
+ <function name='xsltPointerListFree' file='xsltInternals'>
+ <info>Frees the xsltPointerList structure. This does not free the content of the list.</info>
+ <return type='void'/>
+ <arg name='list' type='xsltPointerListPtr' info='pointer to the list to be freed'/>
+ </function>
+ <function name='xsltPreComputeExtModuleElement' file='extensions'>
+ <info>Precomputes an extension module element</info>
+ <return type='xsltElemPreCompPtr' info='the precomputed data'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ <arg name='inst' type='xmlNodePtr' info='the element node'/>
+ </function>
+ <functype name='xsltPreComputeFunction' file='extensions'>
+ <info></info>
+ <return type='xsltElemPreCompPtr' info=''/>
+ <arg name='style' type='xsltStylesheetPtr' info=''/>
+ <arg name='inst' type='xmlNodePtr' info=''/>
+ <arg name='function' type='xsltTransformFunction' info=''/>
+ </functype>
+ <function name='xsltPrintErrorContext' file='xsltutils'>
+ <info>Display the context of an error.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the transformation context'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ <arg name='node' type='xmlNodePtr' info='the current node being processed'/>
+ </function>
+ <function name='xsltProcessOneNode' file='transform'>
+ <info>Process the source node.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='contextNode' type='xmlNodePtr' info='the &quot;current node&quot; in the source tree'/>
+ <arg name='withParams' type='xsltStackElemPtr' info='extra parameters (e.g. xsl:with-param) passed to the template if any'/>
+ </function>
+ <function name='xsltProcessingInstruction' file='transform'>
+ <info>Process the xslt processing-instruction node on the source node</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the node in the source tree.'/>
+ <arg name='inst' type='xmlNodePtr' info='the xslt processing-instruction node'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='precomputed information'/>
+ </function>
+ <function name='xsltProfileStylesheet' file='transform'>
+ <info>Apply the stylesheet to the document and dump the profiling to the given output.</info>
+ <return type='xmlDocPtr' info='the result document or NULL in case of error'/>
+ <arg name='style' type='xsltStylesheetPtr' info='a parsed XSLT stylesheet'/>
+ <arg name='doc' type='xmlDocPtr' info='a parsed XML document'/>
+ <arg name='params' type='const char **' info='a NULL terminated arry of parameters names/values tuples'/>
+ <arg name='output' type='FILE *' info='a FILE * for the profiling output'/>
+ </function>
+ <function name='xsltQuoteOneUserParam' file='variables'>
+ <info>This is normally called from xsltQuoteUserParams to process a single parameter from a list of parameters. The @value is stored in the context&apos;s global variable/parameter hash table.</info>
+ <return type='int' info='0 in case of success, -1 in case of error.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='name' type='const xmlChar *' info='a null terminated string giving the name of the parameter'/>
+ <arg name='value' type='const xmlChar *' info='a null terminated string giving the parameter value'/>
+ </function>
+ <function name='xsltQuoteUserParams' file='variables'>
+ <info>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.</info>
+ <return type='int' info='0 in case of success, -1 in case of error.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='params' type='const char **' info='a NULL terminated arry of parameters names/values tuples'/>
+ </function>
+ <function name='xsltRegisterAllElement' file='transform'>
+ <info>Registers all default XSLT elements in this context</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XPath context'/>
+ </function>
+ <function name='xsltRegisterAllExtras' file='extra'>
+ <info>Registers the built-in extensions</info>
+ <return type='void'/>
+ </function>
+ <function name='xsltRegisterAllFunctions' file='functions'>
+ <info>Registers all default XSLT functions in this context</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xmlXPathContextPtr' info='the XPath context'/>
+ </function>
+ <function name='xsltRegisterExtElement' file='extensions'>
+ <info>Registers an extension element</info>
+ <return type='int' info='0 in case of success, -1 in case of failure'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='name' type='const xmlChar *' info='the name of the element'/>
+ <arg name='URI' type='const xmlChar *' info='the URI associated to the element'/>
+ <arg name='function' type='xsltTransformFunction' info='the actual implementation which should be called'/>
+ </function>
+ <function name='xsltRegisterExtFunction' file='extensions'>
+ <info>Registers an extension function</info>
+ <return type='int' info='0 in case of success, -1 in case of failure'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='name' type='const xmlChar *' info='the name of the element'/>
+ <arg name='URI' type='const xmlChar *' info='the URI associated to the element'/>
+ <arg name='function' type='xmlXPathFunction' info='the actual implementation which should be called'/>
+ </function>
+ <function name='xsltRegisterExtModule' file='extensions'>
+ <info>Register an XSLT extension module to the library.</info>
+ <return type='int' info='0 if sucessful, -1 in case of error'/>
+ <arg name='URI' type='const xmlChar *' info='URI associated to this module'/>
+ <arg name='initFunc' type='xsltExtInitFunction' info='the module initialization function'/>
+ <arg name='shutdownFunc' type='xsltExtShutdownFunction' info='the module shutdown function'/>
+ </function>
+ <function name='xsltRegisterExtModuleElement' file='extensions'>
+ <info>Registers an extension module element.</info>
+ <return type='int' info='0 if successful, -1 in case of error.'/>
+ <arg name='name' type='const xmlChar *' info='the element name'/>
+ <arg name='URI' type='const xmlChar *' info='the element namespace URI'/>
+ <arg name='precomp' type='xsltPreComputeFunction' info='the pre-computation callback'/>
+ <arg name='transform' type='xsltTransformFunction' info='the transformation callback'/>
+ </function>
+ <function name='xsltRegisterExtModuleFull' file='extensions'>
+ <info>Register an XSLT extension module to the library.</info>
+ <return type='int' info='0 if sucessful, -1 in case of error'/>
+ <arg name='URI' type='const xmlChar *' info='URI associated to this module'/>
+ <arg name='initFunc' type='xsltExtInitFunction' info='the module initialization function'/>
+ <arg name='shutdownFunc' type='xsltExtShutdownFunction' info='the module shutdown function'/>
+ <arg name='styleInitFunc' type='xsltStyleExtInitFunction' info='the module initialization function'/>
+ <arg name='styleShutdownFunc' type='xsltStyleExtShutdownFunction' info='the module shutdown function'/>
+ </function>
+ <function name='xsltRegisterExtModuleFunction' file='extensions'>
+ <info>Registers an extension module function.</info>
+ <return type='int' info='0 if successful, -1 in case of error.'/>
+ <arg name='name' type='const xmlChar *' info='the function name'/>
+ <arg name='URI' type='const xmlChar *' info='the function namespace URI'/>
+ <arg name='function' type='xmlXPathFunction' info='the function callback'/>
+ </function>
+ <function name='xsltRegisterExtModuleTopLevel' file='extensions'>
+ <info>Registers an extension module top-level element.</info>
+ <return type='int' info='0 if successful, -1 in case of error.'/>
+ <arg name='name' type='const xmlChar *' info='the top-level element name'/>
+ <arg name='URI' type='const xmlChar *' info='the top-level element namespace URI'/>
+ <arg name='function' type='xsltTopLevelFunction' info='the top-level element callback'/>
+ </function>
+ <function name='xsltRegisterExtPrefix' file='extensions'>
+ <info>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)</info>
+ <return type='int' info='0 in case of success, 1 if the @URI was already registered as an extension namespace and -1 in case of failure'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ <arg name='prefix' type='const xmlChar *' info='the prefix used (optional)'/>
+ <arg name='URI' type='const xmlChar *' info='the URI associated to the extension'/>
+ </function>
+ <function name='xsltRegisterExtras' file='extra'>
+ <info>Registers the built-in extensions. This function is deprecated, use xsltRegisterAllExtras instead.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ </function>
+ <function name='xsltRegisterLocalRVT' file='xsltInternals'>
+ <info>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.</info>
+ <return type='int' info='0 in case of success and -1 in case of API or internal errors.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='RVT' type='xmlDocPtr' info='a result value tree (Result Tree Fragment; xmlDocPtr)'/>
+ </function>
+ <function name='xsltRegisterPersistRVT' file='xsltInternals'>
+ <info>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.</info>
+ <return type='int' info='0 in case of success and -1 in case of error.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='RVT' type='xmlDocPtr' info='a result value tree (Result Tree Fragment)'/>
+ </function>
+ <function name='xsltRegisterTestModule' file='extensions'>
+ <info>Registers the test module</info>
+ <return type='void'/>
+ </function>
+ <function name='xsltRegisterTmpRVT' file='xsltInternals'>
+ <info>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.</info>
+ <return type='int' info='0 in case of success and -1 in case of API or internal errors.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='RVT' type='xmlDocPtr' info='a result value tree (Result Tree Fragment)'/>
+ </function>
+ <function name='xsltReleaseRVT' file='xsltInternals'>
+ <info>Either frees the RVT (which is an xmlDoc) or stores it in the context&apos;s cache for later reuse.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='RVT' type='xmlDocPtr' info='a result value tree (Result Tree Fragment)'/>
+ </function>
+ <function name='xsltResolveStylesheetAttributeSet' file='attributes'>
+ <info>resolve the references between attribute sets.</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ </function>
+ <function name='xsltRestoreDocumentNamespaces' file='xsltInternals'>
+ <info>Restore the namespaces for the document</info>
+ <return type='int' info='0 in case of success, -1 in case of failure'/>
+ <arg name='ns' type='xsltNsMapPtr' info='map of namespaces'/>
+ <arg name='doc' type='xmlDocPtr' info='the document'/>
+ </function>
+ <function name='xsltRunStylesheet' file='transform'>
+ <info>Apply the stylesheet to the document and generate the output according to @output @SAX and @IObuf. It&apos;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</info>
+ <return type='int' info='the number of bytes written to the main resource or -1 in case of error.'/>
+ <arg name='style' type='xsltStylesheetPtr' info='a parsed XSLT stylesheet'/>
+ <arg name='doc' type='xmlDocPtr' info='a parsed XML document'/>
+ <arg name='params' type='const char **' info='a NULL terminated array of parameters names/values tuples'/>
+ <arg name='output' type='const char *' info='the URL/filename ot the generated resource if available'/>
+ <arg name='SAX' type='xmlSAXHandlerPtr' info='a SAX handler for progressive callback output (not implemented yet)'/>
+ <arg name='IObuf' type='xmlOutputBufferPtr' info='an output buffer for progressive output (not implemented yet)'/>
+ </function>
+ <function name='xsltRunStylesheetUser' file='transform'>
+ <info>Apply the stylesheet to the document and generate the output according to @output @SAX and @IObuf. It&apos;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</info>
+ <return type='int' info='the number of by written to the main resource or -1 in case of error.'/>
+ <arg name='style' type='xsltStylesheetPtr' info='a parsed XSLT stylesheet'/>
+ <arg name='doc' type='xmlDocPtr' info='a parsed XML document'/>
+ <arg name='params' type='const char **' info='a NULL terminated array of parameters names/values tuples'/>
+ <arg name='output' type='const char *' info='the URL/filename ot the generated resource if available'/>
+ <arg name='SAX' type='xmlSAXHandlerPtr' info='a SAX handler for progressive callback output (not implemented yet)'/>
+ <arg name='IObuf' type='xmlOutputBufferPtr' info='an output buffer for progressive output (not implemented yet)'/>
+ <arg name='profile' type='FILE *' info='profile FILE * output or NULL'/>
+ <arg name='userCtxt' type='xsltTransformContextPtr' info='user provided transform context'/>
+ </function>
+ <function name='xsltSaveProfiling' file='xsltutils'>
+ <info>Save the profiling informations on @output</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT context'/>
+ <arg name='output' type='FILE *' info='a FILE * for saving the informations'/>
+ </function>
+ <function name='xsltSaveResultTo' file='xsltutils'>
+ <info>Save the result @result obtained by applying the @style stylesheet to an I/O output channel @buf</info>
+ <return type='int' info='the number of byte written or -1 in case of failure.'/>
+ <arg name='buf' type='xmlOutputBufferPtr' info='an output buffer'/>
+ <arg name='result' type='xmlDocPtr' info='the result xmlDocPtr'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ </function>
+ <function name='xsltSaveResultToFd' file='xsltutils'>
+ <info>Save the result @result obtained by applying the @style stylesheet to an open file descriptor This does not close the descriptor.</info>
+ <return type='int' info='the number of bytes written or -1 in case of failure.'/>
+ <arg name='fd' type='int' info='a file descriptor'/>
+ <arg name='result' type='xmlDocPtr' info='the result xmlDocPtr'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ </function>
+ <function name='xsltSaveResultToFile' file='xsltutils'>
+ <info>Save the result @result obtained by applying the @style stylesheet to an open FILE * I/O. This does not close the FILE @file</info>
+ <return type='int' info='the number of bytes written or -1 in case of failure.'/>
+ <arg name='file' type='FILE *' info='a FILE * I/O'/>
+ <arg name='result' type='xmlDocPtr' info='the result xmlDocPtr'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ </function>
+ <function name='xsltSaveResultToFilename' file='xsltutils'>
+ <info>Save the result @result obtained by applying the @style stylesheet to a file or @URL</info>
+ <return type='int' info='the number of byte written or -1 in case of failure.'/>
+ <arg name='URL' type='const char *' info='a filename or URL'/>
+ <arg name='result' type='xmlDocPtr' info='the result xmlDocPtr'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ <arg name='compression' type='int' info='the compression factor (0 - 9 included)'/>
+ </function>
+ <function name='xsltSaveResultToString' file='xsltutils'>
+ <info>Save the result @result obtained by applying the @style stylesheet to a new allocated string.</info>
+ <return type='int' info='0 in case of success and -1 in case of error'/>
+ <arg name='doc_txt_ptr' type='xmlChar **' info='Memory pointer for allocated XML text'/>
+ <arg name='doc_txt_len' type='int *' info='Length of the generated XML text'/>
+ <arg name='result' type='xmlDocPtr' info='the result xmlDocPtr'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ </function>
+ <function name='xsltSecurityAllow' file='security'>
+ <info>Function used to always allow an operation</info>
+ <return type='int' info='1 always'/>
+ <arg name='sec' type='xsltSecurityPrefsPtr' info='the security block to use'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='value' type='const char *' info='unused'/>
+ </function>
+ <functype name='xsltSecurityCheck' file='security'>
+ <info>User provided function to check the value of a string like a file path or an URL ...</info>
+ <return type='int' info=''/>
+ <arg name='sec' type='xsltSecurityPrefsPtr' info=''/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info=''/>
+ <arg name='value' type='const char *' info=''/>
+ </functype>
+ <function name='xsltSecurityForbid' file='security'>
+ <info>Function used to always forbid an operation</info>
+ <return type='int' info='0 always'/>
+ <arg name='sec' type='xsltSecurityPrefsPtr' info='the security block to use'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='value' type='const char *' info='unused'/>
+ </function>
+ <function name='xsltSetCtxtParseOptions' file='xsltutils'>
+ <info>Change the default parser option passed by the XSLT engine to the parser when using document() loading.</info>
+ <return type='int' info='the previous options or -1 in case of error'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='options' type='int' info='a combination of libxml2 xmlParserOption'/>
+ </function>
+ <function name='xsltSetCtxtSecurityPrefs' file='security'>
+ <info>Set the security preference for a specific transformation</info>
+ <return type='int' info='-1 in case of error, 0 otherwise'/>
+ <arg name='sec' type='xsltSecurityPrefsPtr' info='the security block to use'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltSetCtxtSortFunc' file='xsltutils'>
+ <info>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</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='handler' type='xsltSortFunc' info='the new handler function'/>
+ </function>
+ <function name='xsltSetDebuggerCallbacks' file='xsltutils'>
+ <info>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.</info>
+ <return type='int' info='0 in case of success and -1 in case of error'/>
+ <arg name='no' type='int' info='number of callbacks'/>
+ <arg name='block' type='void *' info='the block of callbacks'/>
+ </function>
+ <function name='xsltSetDebuggerStatus' file='xsltutils'>
+ <info>This function sets the value of xslDebugStatus.</info>
+ <return type='void'/>
+ <arg name='value' type='int' info='the value to be set'/>
+ </function>
+ <function name='xsltSetDefaultSecurityPrefs' file='security'>
+ <info>Set the default security preference application-wide</info>
+ <return type='void'/>
+ <arg name='sec' type='xsltSecurityPrefsPtr' info='the security block to use'/>
+ </function>
+ <function name='xsltSetGenericDebugFunc' file='xsltutils'>
+ <info>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.</info>
+ <return type='void'/>
+ <arg name='ctx' type='void *' info='the new error handling context'/>
+ <arg name='handler' type='xmlGenericErrorFunc' info='the new handler function'/>
+ </function>
+ <function name='xsltSetGenericErrorFunc' file='xsltutils'>
+ <info>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.</info>
+ <return type='void'/>
+ <arg name='ctx' type='void *' info='the new error handling context'/>
+ <arg name='handler' type='xmlGenericErrorFunc' info='the new handler function'/>
+ </function>
+ <function name='xsltSetLoaderFunc' file='documents'>
+ <info>Set the new function to load document, if NULL it resets it to the default function.</info>
+ <return type='void'/>
+ <arg name='f' type='xsltDocLoaderFunc' info='the new function to handle document loading.'/>
+ </function>
+ <function name='xsltSetSecurityPrefs' file='security'>
+ <info>Update the security option to use the new callback checking function</info>
+ <return type='int' info='-1 in case of error, 0 otherwise'/>
+ <arg name='sec' type='xsltSecurityPrefsPtr' info='the security block to update'/>
+ <arg name='option' type='xsltSecurityOption' info='the option to update'/>
+ <arg name='func' type='xsltSecurityCheck' info='the user callback to use for this option'/>
+ </function>
+ <function name='xsltSetSortFunc' file='xsltutils'>
+ <info>Function to reset the global handler for XSLT sorting. If the handler is NULL, the default sort function will be used.</info>
+ <return type='void'/>
+ <arg name='handler' type='xsltSortFunc' info='the new handler function'/>
+ </function>
+ <function name='xsltSetTransformErrorFunc' file='xsltutils'>
+ <info>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.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='ctx' type='void *' info='the new error handling context'/>
+ <arg name='handler' type='xmlGenericErrorFunc' info='the new handler function'/>
+ </function>
+ <function name='xsltSetXIncludeDefault' file='transform'>
+ <info>Set whether XInclude should be processed on document being loaded by default</info>
+ <return type='void'/>
+ <arg name='xinclude' type='int' info='whether to do XInclude processing'/>
+ </function>
+ <function name='xsltShutdownCtxtExts' file='extensions'>
+ <info>Shutdown the set of modules loaded</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ </function>
+ <function name='xsltShutdownExts' file='extensions'>
+ <info>Shutdown the set of modules loaded</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ </function>
+ <function name='xsltSort' file='transform'>
+ <info>function attached to xsl:sort nodes, but this should not be called directly</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the node in the source tree.'/>
+ <arg name='inst' type='xmlNodePtr' info='the xslt sort node'/>
+ <arg name='comp' type='xsltStylePreCompPtr' info='precomputed information'/>
+ </function>
+ <functype name='xsltSortFunc' file='xsltInternals'>
+ <info>Signature of the function to use during sorting</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a transformation context'/>
+ <arg name='sorts' type='xmlNodePtr *' info='the node-set to sort'/>
+ <arg name='nbsorts' type='int' info='the number of sorts'/>
+ </functype>
+ <function name='xsltSplitQName' file='xsltutils'>
+ <info>Split QNames into prefix and local names, both allocated from a dictionary.</info>
+ <return type='const xmlChar *' info='the localname or NULL in case of error.'/>
+ <arg name='dict' type='xmlDictPtr' info='a dictionary'/>
+ <arg name='name' type='const xmlChar *' info='the full QName'/>
+ <arg name='prefix' type='const xmlChar **' info='the return value'/>
+ </function>
+ <function name='xsltStrxfrm' file='xsltlocale'>
+ <info>Transforms a string according to locale. The transformed string must then be compared with xsltLocaleStrcmp and freed with xmlFree.</info>
+ <return type='xsltLocaleChar *' info='the transformed string or NULL on error'/>
+ <arg name='locale' type='xsltLocale' info='locale created with xsltNewLocale'/>
+ <arg name='string' type='const xmlChar *' info='UTF-8 string to transform'/>
+ </function>
+ <functype name='xsltStyleExtInitFunction' file='extensions'>
+ <info>A function called at initialization time of an XSLT extension module.</info>
+ <return type='void *' info='a pointer to the module specific data for this transformation.'/>
+ <arg name='style' type='xsltStylesheetPtr' info=''/>
+ <arg name='URI' type='const xmlChar *' info='the namespace URI for the extension'/>
+ </functype>
+ <functype name='xsltStyleExtShutdownFunction' file='extensions'>
+ <info>A function called at shutdown time of an XSLT extension module.</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info=''/>
+ <arg name='URI' type='const xmlChar *' info='the namespace URI for the extension'/>
+ <arg name='data' type='void *' info='the data associated to this module'/>
+ </functype>
+ <function name='xsltStyleGetExtData' file='extensions'>
+ <info>Retrieve the data associated to the extension module in this given stylesheet. Called by: xsltRegisterExtPrefix(), ( xsltExtElementPreCompTest(), xsltExtInitTest )</info>
+ <return type='void *' info='the pointer or NULL if not present'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ <arg name='URI' type='const xmlChar *' info='the URI associated to the exension module'/>
+ </function>
+ <function name='xsltStylePreCompute' file='preproc'>
+ <info>Precompute an XSLT stylesheet element</info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet'/>
+ <arg name='inst' type='xmlNodePtr' info='the instruction in the stylesheet'/>
+ </function>
+ <function name='xsltStyleStylesheetLevelGetExtData' file='extensions'>
+ <info>Retrieve the data associated to the extension module in this given stylesheet.</info>
+ <return type='void *' info='the pointer or NULL if not present'/>
+ <arg name='style' type='xsltStylesheetPtr' info='an XSLT stylesheet'/>
+ <arg name='URI' type='const xmlChar *' info='the URI associated to the exension module'/>
+ </function>
+ <function name='xsltSystemPropertyFunction' file='functions'>
+ <info>Implement the system-property() XSLT function object system-property(string)</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
+ <arg name='nargs' type='int' info='the number of arguments'/>
+ </function>
+ <function name='xsltTemplateProcess' file='templates'>
+ <info>Obsolete. Don&apos;t use it.</info>
+ <return type='xmlNodePtr *' info='NULL.'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='node' type='xmlNodePtr' info='the attribute template node'/>
+ </function>
+ <function name='xsltTestCompMatchList' file='pattern'>
+ <info>Test whether the node matches one of the patterns in the list</info>
+ <return type='int' info='1 if it matches, 0 if it doesn&apos;t and -1 in case of failure'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='a node'/>
+ <arg name='comp' type='xsltCompMatchPtr' info='the precompiled pattern list'/>
+ </function>
+ <function name='xsltText' file='transform'>
+ <info>Process the xslt text node on the source node</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the node in the source tree.'/>
+ <arg name='inst' type='xmlNodePtr' info='the xslt text node'/>
+ <arg name='comp' type='xsltStylePreCompPtr' info='precomputed information'/>
+ </function>
+ <function name='xsltTimestamp' file='xsltutils'>
+ <info>Used for gathering profiling data</info>
+ <return type='long' info='the number of tenth of milliseconds since the beginning of the profiling'/>
+ </function>
+ <functype name='xsltTopLevelFunction' file='extensions'>
+ <info></info>
+ <return type='void'/>
+ <arg name='style' type='xsltStylesheetPtr' info=''/>
+ <arg name='inst' type='xmlNodePtr' info=''/>
+ </functype>
+ <function name='xsltTransformError' file='xsltutils'>
+ <info>Display and format an error messages, gives file, line, position and extra parameters, will use the specific transformation context if available</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='an XSLT transformation context'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the XSLT stylesheet used'/>
+ <arg name='node' type='xmlNodePtr' info='the current node in the stylesheet'/>
+ <arg name='msg' type='const char *' info='the message to display/transmit'/>
+ <arg name='...' type='...' info='extra parameters for the message display'/>
+ </function>
+ <functype name='xsltTransformFunction' file='xsltInternals'>
+ <info>Signature of the function associated to elements part of the stylesheet language like xsl:if or xsl:apply-templates.</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='node' type='xmlNodePtr' info='the input node'/>
+ <arg name='inst' type='xmlNodePtr' info='the stylesheet node'/>
+ <arg name='comp' type='xsltElemPreCompPtr' info='the compiled information from the stylesheet'/>
+ </functype>
+ <function name='xsltUninit' file='xsltInternals'>
+ <info>Uninitializes the processor.</info>
+ <return type='void'/>
+ </function>
+ <function name='xsltUnparsedEntityURIFunction' file='functions'>
+ <info>Implement the unparsed-entity-uri() XSLT function string unparsed-entity-uri(string)</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xmlXPathParserContextPtr' info='the XPath Parser context'/>
+ <arg name='nargs' type='int' info='the number of arguments'/>
+ </function>
+ <function name='xsltUnregisterExtModule' file='extensions'>
+ <info>Unregister an XSLT extension module from the library.</info>
+ <return type='int' info='0 if sucessful, -1 in case of error'/>
+ <arg name='URI' type='const xmlChar *' info='URI associated to this module'/>
+ </function>
+ <function name='xsltUnregisterExtModuleElement' file='extensions'>
+ <info>Unregisters an extension module element</info>
+ <return type='int' info='0 if successful, -1 in case of error.'/>
+ <arg name='name' type='const xmlChar *' info='the element name'/>
+ <arg name='URI' type='const xmlChar *' info='the element namespace URI'/>
+ </function>
+ <function name='xsltUnregisterExtModuleFunction' file='extensions'>
+ <info>Unregisters an extension module function</info>
+ <return type='int' info='0 if successful, -1 in case of error.'/>
+ <arg name='name' type='const xmlChar *' info='the function name'/>
+ <arg name='URI' type='const xmlChar *' info='the function namespace URI'/>
+ </function>
+ <function name='xsltUnregisterExtModuleTopLevel' file='extensions'>
+ <info>Unregisters an extension module top-level element</info>
+ <return type='int' info='0 if successful, -1 in case of error.'/>
+ <arg name='name' type='const xmlChar *' info='the top-level element name'/>
+ <arg name='URI' type='const xmlChar *' info='the top-level element namespace URI'/>
+ </function>
+ <function name='xsltValueOf' file='transform'>
+ <info>Process the xslt value-of node on the source node</info>
+ <return type='void'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='a XSLT process context'/>
+ <arg name='node' type='xmlNodePtr' info='the node in the source tree.'/>
+ <arg name='inst' type='xmlNodePtr' info='the xslt value-of node'/>
+ <arg name='castedComp' type='xsltStylePreCompPtr' info='precomputed information'/>
+ </function>
+ <function name='xsltVariableLookup' file='variables'>
+ <info>Search in the Variable array of the context for the given variable value.</info>
+ <return type='xmlXPathObjectPtr' info='the value or NULL if not found'/>
+ <arg name='ctxt' type='xsltTransformContextPtr' info='the XSLT transformation context'/>
+ <arg name='name' type='const xmlChar *' info='the variable name'/>
+ <arg name='ns_uri' type='const xmlChar *' info='the variable namespace URI'/>
+ </function>
+ <function name='xsltXPathCompile' file='xsltutils'>
+ <info>Compile an XPath expression</info>
+ <return type='xmlXPathCompExprPtr' info='the xmlXPathCompExprPtr resulting from the compilation or NULL. the caller has to free the object.'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ <arg name='str' type='const xmlChar *' info='the XPath expression'/>
+ </function>
+ <function name='xsltXPathCompileFlags' file='xsltutils'>
+ <info>Compile an XPath expression</info>
+ <return type='xmlXPathCompExprPtr' info='the xmlXPathCompExprPtr resulting from the compilation or NULL. the caller has to free the object.'/>
+ <arg name='style' type='xsltStylesheetPtr' info='the stylesheet'/>
+ <arg name='str' type='const xmlChar *' info='the XPath expression'/>
+ <arg name='flags' type='int' info='extra compilation flags to pass down to libxml2 XPath'/>
+ </function>
+ <function name='xsltXPathFunctionLookup' file='functions'>
+ <info>This is the entry point when a function is needed by the XPath interpretor.</info>
+ <return type='xmlXPathFunction' info='the callback function or NULL if not found'/>
+ <arg name='ctxt' type='xmlXPathContextPtr' info='a void * but the XSLT transformation context actually'/>
+ <arg name='name' type='const xmlChar *' info='the function name'/>
+ <arg name='ns_uri' type='const xmlChar *' info='the function namespace URI'/>
+ </function>
+ <function name='xsltXPathGetTransformContext' file='extensions'>
+ <info>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.</info>
+ <return type='xsltTransformContextPtr' info='the XSLT transformation context or NULL in case of error.'/>
+ <arg name='ctxt' type='xmlXPathParserContextPtr' info='an XPath transformation context'/>
+ </function>
+ <function name='xsltXPathVariableLookup' file='variables'>
+ <info>This is the entry point when a varibale is needed by the XPath interpretor.</info>
+ <return type='xmlXPathObjectPtr' info='the value or NULL if not found'/>
+ <arg name='ctxt' type='void *' info='a void * but the the XSLT transformation context actually'/>
+ <arg name='name' type='const xmlChar *' info='the variable name'/>
+ <arg name='ns_uri' type='const xmlChar *' info='the variable namespace URI'/>
+ </function>
+ </symbols>
+</api>
diff --git a/libxslt/doc/libxslt-decl.txt b/libxslt/doc/libxslt-decl.txt
new file mode 100644
index 0000000..423230e
--- /dev/null
+++ b/libxslt/doc/libxslt-decl.txt
@@ -0,0 +1,1449 @@
+<MACRO>
+<NAME>LIBXSLT_DOTTED_VERSION</NAME>
+#define LIBXSLT_DOTTED_VERSION "1.1.0"
+</MACRO>
+<MACRO>
+<NAME>LIBXSLT_VERSION</NAME>
+#define LIBXSLT_VERSION 10100
+</MACRO>
+<MACRO>
+<NAME>LIBXSLT_VERSION_STRING</NAME>
+#define LIBXSLT_VERSION_STRING "10100"
+</MACRO>
+<MACRO>
+<NAME>WITH_XSLT_DEBUG</NAME>
+#define WITH_XSLT_DEBUG
+</MACRO>
+<MACRO>
+<NAME>DEBUG_MEMORY</NAME>
+#define DEBUG_MEMORY
+</MACRO>
+<MACRO>
+<NAME>DEBUG_MEMORY_LOCATION</NAME>
+#define DEBUG_MEMORY_LOCATION
+</MACRO>
+<MACRO>
+<NAME>XSLT_NEED_TRIO</NAME>
+#define XSLT_NEED_TRIO
+</MACRO>
+<MACRO>
+<NAME>XSLT_NEED_TRIO</NAME>
+#define XSLT_NEED_TRIO
+</MACRO>
+<MACRO>
+<NAME>WITH_DEBUGGER</NAME>
+#define WITH_DEBUGGER
+</MACRO>
+<MACRO>
+<NAME>ATTRIBUTE_UNUSED</NAME>
+#define ATTRIBUTE_UNUSED __attribute__((unused))
+</MACRO>
+<MACRO>
+<NAME>ATTRIBUTE_UNUSED</NAME>
+#define ATTRIBUTE_UNUSED
+</MACRO>
+<MACRO>
+<NAME>LIBXSLT_PUBLIC</NAME>
+#define LIBXSLT_PUBLIC __declspec(dllimport)
+</MACRO>
+<MACRO>
+<NAME>LIBXSLT_PUBLIC</NAME>
+#define LIBXSLT_PUBLIC
+</MACRO>
+<MACRO>
+<NAME>XSLT_LIBXSLT_NAMESPACE</NAME>
+#define XSLT_LIBXSLT_NAMESPACE ((xmlChar *) "http://xmlsoft.org/XSLT/namespace")
+</MACRO>
+<MACRO>
+<NAME>XSLT_SAXON_NAMESPACE</NAME>
+#define XSLT_SAXON_NAMESPACE ((xmlChar *) "http://icl.com/saxon")
+</MACRO>
+<MACRO>
+<NAME>XSLT_XT_NAMESPACE</NAME>
+#define XSLT_XT_NAMESPACE ((xmlChar *) "http://www.jclark.com/xt")
+</MACRO>
+<MACRO>
+<NAME>XSLT_XALAN_NAMESPACE</NAME>
+#define XSLT_XALAN_NAMESPACE ((xmlChar *) \
+ "org.apache.xalan.xslt.extensions.Redirect")
+</MACRO>
+<MACRO>
+<NAME>XSLT_NORM_SAXON_NAMESPACE</NAME>
+#define XSLT_NORM_SAXON_NAMESPACE ((xmlChar *) \
+ "http://nwalsh.com/xslt/ext/com.nwalsh.saxon.CVS")
+</MACRO>
+<USER_FUNCTION>
+<NAME>xsltStyleExtInitFunction</NAME>
+<RETURNS>void *</RETURNS>
+xsltStylesheetPtr style,
+ const xmlChar *URI
+</USER_FUNCTION>
+<USER_FUNCTION>
+<NAME>xsltStyleExtShutdownFunction</NAME>
+<RETURNS>void </RETURNS>
+xsltStylesheetPtr style,
+ const xmlChar *URI,
+ void *data
+</USER_FUNCTION>
+<USER_FUNCTION>
+<NAME>xsltExtInitFunction</NAME>
+<RETURNS>void *</RETURNS>
+xsltTransformContextPtr ctxt,
+ const xmlChar *URI
+</USER_FUNCTION>
+<USER_FUNCTION>
+<NAME>xsltExtShutdownFunction</NAME>
+<RETURNS>void </RETURNS>
+xsltTransformContextPtr ctxt,
+ const xmlChar *URI,
+ void *data
+</USER_FUNCTION>
+<USER_FUNCTION>
+<NAME>xsltTopLevelFunction</NAME>
+<RETURNS>void </RETURNS>
+xsltStylesheetPtr style,
+ xmlNodePtr inst
+</USER_FUNCTION>
+<MACRO>
+<NAME>XSLT_REGISTER_FUNCTION_LOOKUP</NAME>
+#define XSLT_REGISTER_FUNCTION_LOOKUP(ctxt) \
+ xmlXPathRegisterFuncLookup((ctxt)->xpathCtxt, \
+ (xmlXPathFuncLookupFunc) xsltXPathFunctionLookup, \
+ (void *)(ctxt->xpathCtxt));
+</MACRO>
+<MACRO>
+<NAME>XSLT_GET_IMPORT_PTR</NAME>
+#define XSLT_GET_IMPORT_PTR(res, style, name) { \
+ xsltStylesheetPtr st = style; \
+ res = NULL; \
+ while (st != NULL) { \
+ if (st->name != NULL) { res = st->name; break; } \
+ st = xsltNextImport(st); \
+ }}
+</MACRO>
+<MACRO>
+<NAME>XSLT_GET_IMPORT_INT</NAME>
+#define XSLT_GET_IMPORT_INT(res, style, name) { \
+ xsltStylesheetPtr st = style; \
+ res = -1; \
+ while (st != NULL) { \
+ if (st->name != -1) { res = st->name; break; } \
+ st = xsltNextImport(st); \
+ }}
+</MACRO>
+<MACRO>
+<NAME>LIBXSLT_PUBLIC</NAME>
+#define LIBXSLT_PUBLIC __declspec(dllimport)
+</MACRO>
+<MACRO>
+<NAME>LIBXSLT_PUBLIC</NAME>
+#define LIBXSLT_PUBLIC
+</MACRO>
+<STRUCT>
+<NAME>xsltNumberData</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltNumberDataPtr</NAME>
+typedef xsltNumberData *xsltNumberDataPtr;
+</TYPEDEF>
+<STRUCT>
+<NAME>xsltNumberData</NAME>
+struct xsltNumberData {
+ xmlChar *level;
+ xmlChar *count;
+ xmlChar *from;
+ xmlChar *value;
+ xmlChar *format;
+ int has_format;
+ int digitsPerGroup;
+ int groupingCharacter;
+ int groupingCharacterLen;
+ xmlDocPtr doc;
+ xmlNodePtr node;
+
+ /*
+ * accelerators
+ */
+};
+</STRUCT>
+<STRUCT>
+<NAME>xsltFormatNumberInfo</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltFormatNumberInfoPtr</NAME>
+typedef xsltFormatNumberInfo *xsltFormatNumberInfoPtr;
+</TYPEDEF>
+<STRUCT>
+<NAME>xsltFormatNumberInfo</NAME>
+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 in pattern */
+ char is_multiplier_set; /* Flag to catch multiple occurences of percent/permille */
+ char is_negative_pattern;/* Flag for processing -ve prefix/suffix */
+};
+</STRUCT>
+<STRUCT>
+<NAME>xsltCompMatch</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltCompMatchPtr</NAME>
+typedef xsltCompMatch *xsltCompMatchPtr;
+</TYPEDEF>
+<FUNCTION>
+<NAME>xsltMatchPattern</NAME>
+<RETURNS>int </RETURNS>
+xsltTransformContextPtr ctxt,xmlNodePtr node,const xmlChar *pattern,xmlDocPtr ctxtdoc,xmlNodePtr ctxtnode
+</FUNCTION>
+<VARIABLE>
+<NAME>xsltExtMarker</NAME>
+extern const xmlChar *xsltExtMarker;
+</VARIABLE>
+<MACRO>
+<NAME>XSLT_REGISTER_VARIABLE_LOOKUP</NAME>
+#define XSLT_REGISTER_VARIABLE_LOOKUP(ctxt) \
+ xmlXPathRegisterVariableLookup((ctxt)->xpathCtxt, \
+ xsltXPathVariableLookup, (void *)(ctxt)); \
+ xsltRegisterAllFunctions((ctxt)->xpathCtxt); \
+ xsltRegisterAllElement(ctxt); \
+ (ctxt)->xpathCtxt->extra = ctxt
+</MACRO>
+<MACRO>
+<NAME>XSLT_DEFAULT_VERSION</NAME>
+#define XSLT_DEFAULT_VERSION "1.0"
+</MACRO>
+<MACRO>
+<NAME>XSLT_DEFAULT_VENDOR</NAME>
+#define XSLT_DEFAULT_VENDOR "libxslt"
+</MACRO>
+<MACRO>
+<NAME>XSLT_DEFAULT_URL</NAME>
+#define XSLT_DEFAULT_URL "http://xmlsoft.org/XSLT/"
+</MACRO>
+<MACRO>
+<NAME>XSLT_NAMESPACE</NAME>
+#define XSLT_NAMESPACE ((xmlChar *) "http://www.w3.org/1999/XSL/Transform")
+</MACRO>
+<MACRO>
+<NAME>XSLT_PARSE_OPTIONS</NAME>
+#define XSLT_PARSE_OPTIONS \
+ XML_PARSE_NOENT | XML_PARSE_DTDLOAD | XML_PARSE_DTDATTR | XML_PARSE_NOCDATA
+</MACRO>
+<VARIABLE>
+<NAME>xsltMaxDepth</NAME>
+extern int xsltMaxDepth;
+</VARIABLE>
+<VARIABLE>
+<NAME>xsltMaxVars</NAME>
+extern int xsltMaxVars;
+</VARIABLE>
+<VARIABLE>
+<NAME>xsltEngineVersion</NAME>
+extern const char *xsltEngineVersion;
+</VARIABLE>
+<VARIABLE>
+<NAME>xsltLibxsltVersion</NAME>
+extern const int xsltLibxsltVersion;
+</VARIABLE>
+<VARIABLE>
+<NAME>xsltLibxmlVersion</NAME>
+extern const int xsltLibxmlVersion;
+</VARIABLE>
+<MACRO>
+<NAME>XSLT_TODO</NAME>
+#define XSLT_TODO \
+ xsltGenericError(xsltGenericErrorContext, \
+ "Unimplemented block at %s:%d\n", \
+ __FILE__, __LINE__);
+</MACRO>
+<MACRO>
+<NAME>XSLT_STRANGE</NAME>
+#define XSLT_STRANGE \
+ xsltGenericError(xsltGenericErrorContext, \
+ "Internal error at %s:%d\n", \
+ __FILE__, __LINE__);
+</MACRO>
+<MACRO>
+<NAME>IS_XSLT_ELEM</NAME>
+#define IS_XSLT_ELEM(n) \
+ (((n) != NULL) && ((n)->ns != NULL) && \
+ (xmlStrEqual((n)->ns->href, XSLT_NAMESPACE)))
+</MACRO>
+<MACRO>
+<NAME>IS_XSLT_NAME</NAME>
+#define IS_XSLT_NAME(n, val) \
+ (xmlStrEqual((n)->name, (const xmlChar *) (val)))
+</MACRO>
+<MACRO>
+<NAME>IS_XSLT_REAL_NODE</NAME>
+#define IS_XSLT_REAL_NODE(n) \
+ (((n) != NULL) && \
+ (((n)->type == XML_ELEMENT_NODE) || \
+ ((n)->type == XML_TEXT_NODE) || \
+ ((n)->type == XML_ATTRIBUTE_NODE) || \
+ ((n)->type == XML_DOCUMENT_NODE) || \
+ ((n)->type == XML_HTML_DOCUMENT_NODE) || \
+ ((n)->type == XML_PI_NODE)))
+</MACRO>
+<ENUM>
+<NAME>xsltDebugTraceCodes</NAME>
+typedef enum {
+ XSLT_TRACE_ALL = -1,
+ XSLT_TRACE_NONE = 0,
+ XSLT_TRACE_COPY_TEXT = 1<<0,
+ XSLT_TRACE_PROCESS_NODE = 1<<1,
+ XSLT_TRACE_APPLY_TEMPLATE = 1<<2,
+ XSLT_TRACE_COPY = 1<<3,
+ XSLT_TRACE_COMMENT = 1<<4,
+ XSLT_TRACE_PI = 1<<5,
+ XSLT_TRACE_COPY_OF = 1<<6,
+ XSLT_TRACE_VALUE_OF = 1<<7,
+ XSLT_TRACE_CALL_TEMPLATE = 1<<8,
+ XSLT_TRACE_APPLY_TEMPLATES = 1<<9,
+ XSLT_TRACE_CHOOSE = 1<<10,
+ XSLT_TRACE_IF = 1<<11,
+ XSLT_TRACE_FOR_EACH = 1<<12,
+ XSLT_TRACE_STRIP_SPACES = 1<<13,
+ XSLT_TRACE_TEMPLATES = 1<<14,
+ XSLT_TRACE_KEYS = 1<<15,
+ XSLT_TRACE_VARIABLES = 1<<16
+} xsltDebugTraceCodes;
+</ENUM>
+<MACRO>
+<NAME>XSLT_TRACE</NAME>
+#define XSLT_TRACE(ctxt,code,call) \
+ if (ctxt->traceCode && (*(ctxt->traceCode) & code)) \
+ call
+</MACRO>
+<VARIABLE>
+<NAME>xsltGenericError</NAME>
+extern xmlGenericErrorFunc xsltGenericError;
+</VARIABLE>
+<VARIABLE>
+<NAME>xsltGenericErrorContext</NAME>
+extern void *xsltGenericErrorContext;
+</VARIABLE>
+<VARIABLE>
+<NAME>xsltGenericDebug</NAME>
+extern xmlGenericErrorFunc xsltGenericDebug;
+</VARIABLE>
+<VARIABLE>
+<NAME>xsltGenericDebugContext</NAME>
+extern void *xsltGenericDebugContext;
+</VARIABLE>
+<MACRO>
+<NAME>XSLT_TIMESTAMP_TICS_PER_SEC</NAME>
+#define XSLT_TIMESTAMP_TICS_PER_SEC 100000l
+</MACRO>
+<ENUM>
+<NAME>xsltDebugStatusCodes</NAME>
+typedef enum {
+ XSLT_DEBUG_NONE = 0, /* no debugging allowed */
+ XSLT_DEBUG_INIT,
+ XSLT_DEBUG_STEP,
+ XSLT_DEBUG_STEPOUT,
+ XSLT_DEBUG_NEXT,
+ XSLT_DEBUG_STOP,
+ XSLT_DEBUG_CONT,
+ XSLT_DEBUG_RUN,
+ XSLT_DEBUG_RUN_RESTART,
+ XSLT_DEBUG_QUIT
+} xsltDebugStatusCodes;
+</ENUM>
+<VARIABLE>
+<NAME>xslDebugStatus</NAME>
+extern int xslDebugStatus;
+</VARIABLE>
+<USER_FUNCTION>
+<NAME>xsltHandleDebuggerCallback</NAME>
+<RETURNS>void </RETURNS>
+xmlNodePtr cur, xmlNodePtr node,
+ xsltTemplatePtr templ, xsltTransformContextPtr ctxt
+</USER_FUNCTION>
+<USER_FUNCTION>
+<NAME>xsltAddCallCallback</NAME>
+<RETURNS>int </RETURNS>
+xsltTemplatePtr templ, xmlNodePtr source
+</USER_FUNCTION>
+<USER_FUNCTION>
+<NAME>xsltDropCallCallback</NAME>
+<RETURNS>void </RETURNS>
+void
+</USER_FUNCTION>
+<MACRO>
+<NAME>LIBXSLT_DOTTED_VERSION</NAME>
+#define LIBXSLT_DOTTED_VERSION "1.1.0"
+</MACRO>
+<MACRO>
+<NAME>LIBXSLT_VERSION</NAME>
+#define LIBXSLT_VERSION 10100
+</MACRO>
+<MACRO>
+<NAME>LIBXSLT_VERSION_STRING</NAME>
+#define LIBXSLT_VERSION_STRING "10100"
+</MACRO>
+<MACRO>
+<NAME>WITH_XSLT_DEBUG</NAME>
+#define WITH_XSLT_DEBUG
+</MACRO>
+<MACRO>
+<NAME>DEBUG_MEMORY</NAME>
+#define DEBUG_MEMORY
+</MACRO>
+<MACRO>
+<NAME>DEBUG_MEMORY_LOCATION</NAME>
+#define DEBUG_MEMORY_LOCATION
+</MACRO>
+<MACRO>
+<NAME>ATTRIBUTE_UNUSED</NAME>
+#define ATTRIBUTE_UNUSED
+</MACRO>
+<MACRO>
+<NAME>TRIO_ERROR_CODE</NAME>
+#define TRIO_ERROR_CODE(x) ((-(x)) & 0x00FF)
+</MACRO>
+<MACRO>
+<NAME>TRIO_ERROR_POSITION</NAME>
+#define TRIO_ERROR_POSITION(x) ((-(x)) >> 8)
+</MACRO>
+<MACRO>
+<NAME>TRIO_ERROR_NAME</NAME>
+#define TRIO_ERROR_NAME(x) trio_strerror(x)
+</MACRO>
+<TYPEDEF>
+<NAME>int))</NAME>
+typedef int (*trio_outstream_t) TRIO_PROTO((trio_pointer_t, int));
+</TYPEDEF>
+<TYPEDEF>
+<NAME>TRIO_PROTO((trio_pointer_t))</NAME>
+typedef int (*trio_instream_t) TRIO_PROTO((trio_pointer_t));
+</TYPEDEF>
+<MACRO>
+<NAME>printf</NAME>
+# define printf trio_printf
+</MACRO>
+<MACRO>
+<NAME>vprintf</NAME>
+# define vprintf trio_vprintf
+</MACRO>
+<MACRO>
+<NAME>fprintf</NAME>
+# define fprintf trio_fprintf
+</MACRO>
+<MACRO>
+<NAME>vfprintf</NAME>
+# define vfprintf trio_vfprintf
+</MACRO>
+<MACRO>
+<NAME>sprintf</NAME>
+# define sprintf trio_sprintf
+</MACRO>
+<MACRO>
+<NAME>vsprintf</NAME>
+# define vsprintf trio_vsprintf
+</MACRO>
+<MACRO>
+<NAME>snprintf</NAME>
+# define snprintf trio_snprintf
+</MACRO>
+<MACRO>
+<NAME>vsnprintf</NAME>
+# define vsnprintf trio_vsnprintf
+</MACRO>
+<MACRO>
+<NAME>scanf</NAME>
+# define scanf trio_scanf
+</MACRO>
+<MACRO>
+<NAME>vscanf</NAME>
+# define vscanf trio_vscanf
+</MACRO>
+<MACRO>
+<NAME>fscanf</NAME>
+# define fscanf trio_fscanf
+</MACRO>
+<MACRO>
+<NAME>vfscanf</NAME>
+# define vfscanf trio_vfscanf
+</MACRO>
+<MACRO>
+<NAME>sscanf</NAME>
+# define sscanf trio_sscanf
+</MACRO>
+<MACRO>
+<NAME>vsscanf</NAME>
+# define vsscanf trio_vsscanf
+</MACRO>
+<MACRO>
+<NAME>dprintf</NAME>
+#define dprintf trio_dprintf
+</MACRO>
+<MACRO>
+<NAME>vdprintf</NAME>
+#define vdprintf trio_vdprintf
+</MACRO>
+<MACRO>
+<NAME>aprintf</NAME>
+#define aprintf trio_aprintf
+</MACRO>
+<MACRO>
+<NAME>vaprintf</NAME>
+#define vaprintf trio_vaprintf
+</MACRO>
+<MACRO>
+<NAME>asprintf</NAME>
+#define asprintf trio_asprintf
+</MACRO>
+<MACRO>
+<NAME>vasprintf</NAME>
+#define vasprintf trio_vasprintf
+</MACRO>
+<MACRO>
+<NAME>dscanf</NAME>
+#define dscanf trio_dscanf
+</MACRO>
+<MACRO>
+<NAME>vdscanf</NAME>
+#define vdscanf trio_vdscanf
+</MACRO>
+<MACRO>
+<NAME>XSLT_MAX_SORT</NAME>
+#define XSLT_MAX_SORT 15
+</MACRO>
+<MACRO>
+<NAME>XSLT_PAT_NO_PRIORITY</NAME>
+#define XSLT_PAT_NO_PRIORITY -12345789
+</MACRO>
+<STRUCT>
+<NAME>xsltRuntimeExtra</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltRuntimeExtraPtr</NAME>
+typedef xsltRuntimeExtra *xsltRuntimeExtraPtr;
+</TYPEDEF>
+<STRUCT>
+<NAME>xsltRuntimeExtra</NAME>
+struct xsltRuntimeExtra {
+ void *info; /* pointer to the extra data */
+ xmlFreeFunc deallocate; /* pointer to the deallocation routine */
+ void *val; /* data not needing deallocation */
+};
+</STRUCT>
+<MACRO>
+<NAME>XSLT_RUNTIME_EXTRA_LST</NAME>
+#define XSLT_RUNTIME_EXTRA_LST(ctxt, nr) (ctxt)->extras[(nr)].info
+</MACRO>
+<MACRO>
+<NAME>XSLT_RUNTIME_EXTRA_FREE</NAME>
+#define XSLT_RUNTIME_EXTRA_FREE(ctxt, nr) (ctxt)->extras[(nr)].deallocate
+</MACRO>
+<MACRO>
+<NAME>XSLT_RUNTIME_EXTRA</NAME>
+#define XSLT_RUNTIME_EXTRA(ctxt, nr) (ctxt)->extras[(nr)].val
+</MACRO>
+<STRUCT>
+<NAME>xsltTemplate</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltTemplatePtr</NAME>
+typedef xsltTemplate *xsltTemplatePtr;
+</TYPEDEF>
+<STRUCT>
+<NAME>xsltTemplate</NAME>
+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 computed */
+ xmlChar *name; /* the local part of the name QName */
+ xmlChar *nameURI; /* the URI part of the name QName */
+ xmlChar *mode; /* the local part of the mode QName */
+ xmlChar *modeURI; /* the URI part of the mode QName */
+ xmlNodePtr content; /* the template replacement value */
+ xmlNodePtr elem; /* the source element */
+
+ int inheritedNsNr; /* number of inherited namespaces */
+ xmlNsPtr *inheritedNs;/* inherited non-excluded namespaces */
+
+ /* Profiling informations */
+ int nbCalls; /* the number of time the template was called */
+ unsigned long time; /* the time spent in this template */
+};
+</STRUCT>
+<STRUCT>
+<NAME>xsltDecimalFormat</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltDecimalFormatPtr</NAME>
+typedef xsltDecimalFormat *xsltDecimalFormatPtr;
+</TYPEDEF>
+<STRUCT>
+<NAME>xsltDecimalFormat</NAME>
+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 pattern and may appear in result */
+ xmlChar *decimalPoint;
+ xmlChar *grouping;
+ xmlChar *percent;
+ xmlChar *permille;
+ xmlChar *zeroDigit;
+};
+</STRUCT>
+<STRUCT>
+<NAME>xsltDocument</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltDocumentPtr</NAME>
+typedef xsltDocument *xsltDocumentPtr;
+</TYPEDEF>
+<STRUCT>
+<NAME>xsltDocument</NAME>
+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 */
+};
+</STRUCT>
+<STRUCT>
+<NAME>xsltTransformContext</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltTransformContextPtr</NAME>
+typedef xsltTransformContext *xsltTransformContextPtr;
+</TYPEDEF>
+<STRUCT>
+<NAME>xsltElemPreComp</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltElemPreCompPtr</NAME>
+typedef xsltElemPreComp *xsltElemPreCompPtr;
+</TYPEDEF>
+<USER_FUNCTION>
+<NAME>xsltTransformFunction</NAME>
+<RETURNS>void </RETURNS>
+xsltTransformContextPtr ctxt,
+ xmlNodePtr node,
+ xmlNodePtr inst,
+ xsltElemPreCompPtr comp
+</USER_FUNCTION>
+<USER_FUNCTION>
+<NAME>xsltSortFunc</NAME>
+<RETURNS>void </RETURNS>
+xsltTransformContextPtr ctxt, xmlNodePtr *sorts,
+ int nbsorts
+</USER_FUNCTION>
+<ENUM>
+<NAME>xsltStyleType</NAME>
+typedef enum {
+ XSLT_FUNC_COPY=1,
+ XSLT_FUNC_SORT,
+ XSLT_FUNC_TEXT,
+ XSLT_FUNC_ELEMENT,
+ XSLT_FUNC_ATTRIBUTE,
+ XSLT_FUNC_COMMENT,
+ XSLT_FUNC_PI,
+ XSLT_FUNC_COPYOF,
+ XSLT_FUNC_VALUEOF,
+ XSLT_FUNC_NUMBER,
+ XSLT_FUNC_APPLYIMPORTS,
+ XSLT_FUNC_CALLTEMPLATE,
+ XSLT_FUNC_APPLYTEMPLATES,
+ XSLT_FUNC_CHOOSE,
+ XSLT_FUNC_IF,
+ XSLT_FUNC_FOREACH,
+ XSLT_FUNC_DOCUMENT,
+ XSLT_FUNC_WITHPARAM,
+ XSLT_FUNC_PARAM,
+ XSLT_FUNC_VARIABLE,
+ XSLT_FUNC_WHEN,
+ XSLT_FUNC_EXTENSION
+} xsltStyleType;
+</ENUM>
+<USER_FUNCTION>
+<NAME>xsltElemPreCompDeallocator</NAME>
+<RETURNS>void </RETURNS>
+xsltElemPreCompPtr comp
+</USER_FUNCTION>
+<STRUCT>
+<NAME>xsltElemPreComp</NAME>
+struct xsltElemPreComp {
+ xsltElemPreCompPtr next; /* chained list */
+ xsltStyleType type; /* type of the element */
+ xsltTransformFunction func; /* handling function */
+ xmlNodePtr inst; /* the instruction */
+
+ /* end of common part */
+ xsltElemPreCompDeallocator free; /* the deallocator */
+};
+</STRUCT>
+<STRUCT>
+<NAME>xsltStylePreComp</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltStylePreCompPtr</NAME>
+typedef xsltStylePreComp *xsltStylePreCompPtr;
+</TYPEDEF>
+<STRUCT>
+<NAME>xsltStylePreComp</NAME>
+struct xsltStylePreComp {
+ xsltElemPreCompPtr next; /* chained list */
+ xsltStyleType type; /* type of the element */
+ xsltTransformFunction func; /* handling function */
+ xmlNodePtr inst; /* the instruction */
+
+ /*
+ * Pre computed values.
+ */
+
+ xmlChar *stype; /* sort */
+ int has_stype; /* sort */
+ int number; /* sort */
+ xmlChar *order; /* sort */
+ int has_order; /* sort */
+ int descending; /* sort */
+ xmlChar *lang; /* sort */
+ int has_lang; /* sort */
+ xmlChar *case_order; /* sort */
+ int lower_first; /* sort */
+
+ xmlChar *use; /* copy, element */
+ int has_use; /* copy, element */
+
+ int noescape; /* text */
+
+ xmlChar *name; /* element, attribute, pi */
+ int has_name; /* element, attribute, pi */
+ xmlChar *ns; /* element */
+ int has_ns; /* element */
+
+ xmlChar *mode; /* apply-templates */
+ xmlChar *modeURI; /* apply-templates */
+
+ xmlChar *test; /* if */
+
+ xsltTemplatePtr templ; /* call-template */
+
+ xmlChar *select; /* sort, copy-of, value-of, apply-templates */
+
+ int ver11; /* document */
+ xmlChar *filename; /* document URL */
+ int has_filename; /* document */
+
+ xsltNumberData numdata; /* number */
+
+ xmlXPathCompExprPtr comp; /* a precompiled XPath expression */
+ xmlNsPtr *nsList; /* the namespaces in scope */
+ int nsNr; /* the number of namespaces in scope */
+};
+</STRUCT>
+<STRUCT>
+<NAME>xsltStackElem</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltStackElemPtr</NAME>
+typedef xsltStackElem *xsltStackElemPtr;
+</TYPEDEF>
+<STRUCT>
+<NAME>xsltStackElem</NAME>
+struct xsltStackElem {
+ struct _xsltStackElem *next;/* chained list */
+ xsltStylePreCompPtr comp; /* the compiled form */
+ int computed; /* was the evaluation done */
+ xmlChar *name; /* the local part of the name QName */
+ xmlChar *nameURI; /* the URI part of the name QName */
+ xmlChar *select; /* the eval string */
+ xmlNodePtr tree; /* the tree if no eval string or the location */
+ xmlXPathObjectPtr value; /* The value if computed */
+};
+</STRUCT>
+<STRUCT>
+<NAME>xsltStylesheet</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltStylesheetPtr</NAME>
+typedef xsltStylesheet *xsltStylesheetPtr;
+</TYPEDEF>
+<STRUCT>
+<NAME>xsltStylesheet</NAME>
+struct xsltStylesheet {
+ /*
+ * The stylesheet import relation is kept as a tree.
+ */
+ struct _xsltStylesheet *parent;
+ struct _xsltStylesheet *next;
+ struct _xsltStylesheet *imports;
+
+ xsltDocumentPtr docList; /* the include document list */
+
+ /*
+ * General data on the style sheet document.
+ */
+ xmlDocPtr doc; /* the parsed XML stylesheet */
+ xmlHashTablePtr stripSpaces;/* the hash table of the strip-space and
+ preserve space elements */
+ int stripAll; /* strip-space * (1) preserve-space * (-1) */
+ xmlHashTablePtr cdataSection;/* the hash table of the cdata-section */
+
+ /*
+ * Global variable or parameters.
+ */
+ xsltStackElemPtr variables; /* linked list of param and variables */
+
+ /*
+ * Template descriptions.
+ */
+ xsltTemplatePtr templates; /* the ordered list of templates */
+ void *templatesHash; /* hash table or wherever compiled templates
+ informations are stored */
+ 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-instruction() */
+ void *commentMatch; /* template based on comment() */
+
+ /*
+ * Namespace aliases.
+ */
+ xmlHashTablePtr nsAliases; /* the namespace alias hash tables */
+
+ /*
+ * Attribute sets.
+ */
+ xmlHashTablePtr attributeSets;/* the attribute sets hash tables */
+
+ /*
+ * Namespaces.
+ */
+ xmlHashTablePtr nsHash; /* the set of namespaces in use */
+ void *nsDefs; /* the namespaces defined */
+
+ /*
+ * Key definitions.
+ */
+ void *keys; /* key definitions */
+
+ /*
+ * Output related stuff.
+ */
+ xmlChar *method; /* the output method */
+ xmlChar *methodURI; /* associated namespace if any */
+ xmlChar *version; /* version string */
+ xmlChar *encoding; /* encoding string */
+ int omitXmlDeclaration; /* omit-xml-declaration = "yes" | "no" */
+
+ /*
+ * Number formatting.
+ */
+ xsltDecimalFormatPtr decimalFormat;
+ int standalone; /* standalone = "yes" | "no" */
+ xmlChar *doctypePublic; /* doctype-public string */
+ xmlChar *doctypeSystem; /* doctype-system string */
+ int indent; /* should output being indented */
+ xmlChar *mediaType; /* media-type string */
+
+ /*
+ * Precomputed blocks.
+ */
+ xsltElemPreCompPtr 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; /* user defined data */
+
+ /*
+ * Extensions.
+ */
+ xmlHashTablePtr extInfos; /* the extension data */
+ int extrasNr; /* the number of extras required */
+
+ /*
+ * For keeping track of nested includes
+ */
+ xsltDocumentPtr includes; /* points to last nested include */
+};
+</STRUCT>
+<ENUM>
+<NAME>xsltOutputType</NAME>
+typedef enum {
+ XSLT_OUTPUT_XML = 0,
+ XSLT_OUTPUT_HTML,
+ XSLT_OUTPUT_TEXT
+} xsltOutputType;
+</ENUM>
+<ENUM>
+<NAME>xsltTransformState</NAME>
+typedef enum {
+ XSLT_STATE_OK = 0,
+ XSLT_STATE_ERROR,
+ XSLT_STATE_STOPPED
+} xsltTransformState;
+</ENUM>
+<STRUCT>
+<NAME>xsltTransformContext</NAME>
+struct xsltTransformContext {
+ xsltStylesheetPtr style; /* the stylesheet used */
+ xsltOutputType type; /* the type of output */
+
+ xsltTemplatePtr templ; /* the current template */
+ int templNr; /* Nb of templates in the stack */
+ int templMax; /* Size of the templtes stack */
+ xsltTemplatePtr *templTab; /* the template stack */
+
+ xsltStackElemPtr vars; /* the current variable list */
+ int varsNr; /* Nb of variable list in the stack */
+ int varsMax; /* Size of the variable list stack */
+ xsltStackElemPtr *varsTab; /* the variable list stack */
+ int varsBase; /* the var base for current templ */
+
+ /*
+ * 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 */
+
+ xsltDocumentPtr docList; /* the document list */
+
+ xsltDocumentPtr document; /* the current document */
+ xmlNodePtr node; /* the current node being processed */
+ xmlNodeSetPtr nodeList; /* the current node list */
+ /* xmlNodePtr current; the node */
+
+ xmlDocPtr output; /* the resulting document */
+ xmlNodePtr insert; /* the insertion node */
+
+ xmlXPathContextPtr xpathCtxt; /* the XPath context */
+ xsltTransformState state; /* the current 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 */
+ xsltRuntimeExtraPtr extras; /* extra per runtime informations */
+
+ xsltDocumentPtr 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 */
+
+ xsltSortFunc sortfunc; /* a ctxt specific sort routine */
+
+ /*
+ * handling of temporary Result Value Tree
+ */
+ xmlDocPtr tmpRVT; /* list of RVT without persistance */
+ xmlDocPtr persistRVT; /* list of persistant RVTs */
+ int ctxtflags; /* context processing flags */
+
+ /*
+ * Speed optimization when coalescing text nodes
+ */
+ const xmlChar *lasttext; /* last text node content */
+ unsigned int lasttsize; /* last text node size */
+ unsigned int lasttuse; /* last text node use */
+ /*
+ * Per Context Debugging
+ */
+ int debugStatus; /* the context level debug status */
+ unsigned long* traceCode; /* pointer to the variable holding the mask */
+};
+</STRUCT>
+<MACRO>
+<NAME>CHECK_STOPPED</NAME>
+#define CHECK_STOPPED if (ctxt->state == XSLT_STATE_STOPPED) return;
+</MACRO>
+<MACRO>
+<NAME>CHECK_STOPPEDE</NAME>
+#define CHECK_STOPPEDE if (ctxt->state == XSLT_STATE_STOPPED) goto error;
+</MACRO>
+<MACRO>
+<NAME>CHECK_STOPPED0</NAME>
+#define CHECK_STOPPED0 if (ctxt->state == XSLT_STATE_STOPPED) return(0);
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_GCC</NAME>
+# define TRIO_COMPILER_GCC
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUNPRO</NAME>
+# define TRIO_COMPILER_SUNPRO
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUNPRO</NAME>
+# define TRIO_COMPILER_SUNPRO
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_XLC</NAME>
+# define TRIO_COMPILER_XLC
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_XLC</NAME>
+# define TRIO_COMPILER_XLC /* Workaround for old xlc */
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_DECC</NAME>
+# define TRIO_COMPILER_DECC
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_DECC</NAME>
+# define TRIO_COMPILER_DECC /* Workaround for old DEC C compilers */
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_MSVC</NAME>
+# define TRIO_COMPILER_MSVC
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_BCB</NAME>
+# define TRIO_COMPILER_BCB
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_VMS</NAME>
+# define TRIO_PLATFORM_VMS
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_UNIX</NAME>
+# define TRIO_PLATFORM_UNIX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_UNIX</NAME>
+# define TRIO_PLATFORM_UNIX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_UNIX</NAME>
+# define TRIO_PLATFORM_UNIX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_UNIX</NAME>
+# define TRIO_PLATFORM_UNIX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_UNIX</NAME>
+# define TRIO_PLATFORM_UNIX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_QNX</NAME>
+# define TRIO_PLATFORM_QNX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_UNIX</NAME>
+# define TRIO_PLATFORM_UNIX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_UNIX</NAME>
+# define TRIO_PLATFORM_UNIX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_WIN32</NAME>
+# define TRIO_PLATFORM_WIN32
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_MPEIX</NAME>
+# define TRIO_PLATFORM_MPEIX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_AIX</NAME>
+# define TRIO_PLATFORM_AIX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_HPUX</NAME>
+# define TRIO_PLATFORM_HPUX
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_SOLARIS</NAME>
+# define TRIO_PLATFORM_SOLARIS
+</MACRO>
+<MACRO>
+<NAME>TRIO_PLATFORM_SUNOS</NAME>
+# define TRIO_PLATFORM_SUNOS
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUPPORTS_C89</NAME>
+# define TRIO_COMPILER_SUPPORTS_C89
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUPPORTS_C90</NAME>
+# define TRIO_COMPILER_SUPPORTS_C90
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUPPORTS_C94</NAME>
+# define TRIO_COMPILER_SUPPORTS_C94
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUPPORTS_C99</NAME>
+# define TRIO_COMPILER_SUPPORTS_C99
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUPPORTS_C94</NAME>
+# define TRIO_COMPILER_SUPPORTS_C94
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUPPORTS_UNIX95</NAME>
+# define TRIO_COMPILER_SUPPORTS_UNIX95
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUPPORTS_UNIX98</NAME>
+# define TRIO_COMPILER_SUPPORTS_UNIX98
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUPPORTS_UNIX01</NAME>
+# define TRIO_COMPILER_SUPPORTS_UNIX01
+</MACRO>
+<MACRO>
+<NAME>TRIO_PUBLIC</NAME>
+# define TRIO_PUBLIC
+</MACRO>
+<MACRO>
+<NAME>TRIO_PRIVATE</NAME>
+# define TRIO_PRIVATE static
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_ANCIENT</NAME>
+# define TRIO_COMPILER_ANCIENT
+</MACRO>
+<MACRO>
+<NAME>TRIO_CONST</NAME>
+# define TRIO_CONST
+</MACRO>
+<MACRO>
+<NAME>TRIO_VOLATILE</NAME>
+# define TRIO_VOLATILE
+</MACRO>
+<MACRO>
+<NAME>TRIO_SIGNED</NAME>
+# define TRIO_SIGNED
+</MACRO>
+<TYPEDEF>
+<NAME>trio_long_double_t</NAME>
+typedef double trio_long_double_t;
+</TYPEDEF>
+<TYPEDEF>
+<NAME>trio_pointer_t</NAME>
+typedef char * trio_pointer_t;
+</TYPEDEF>
+<MACRO>
+<NAME>TRIO_SUFFIX_LONG</NAME>
+# define TRIO_SUFFIX_LONG(x) x
+</MACRO>
+<MACRO>
+<NAME>TRIO_PROTO</NAME>
+# define TRIO_PROTO(x) ()
+</MACRO>
+<MACRO>
+<NAME>TRIO_NOARGS</NAME>
+# define TRIO_NOARGS
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS1</NAME>
+# define TRIO_ARGS1(list,a1) list a1;
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS2</NAME>
+# define TRIO_ARGS2(list,a1,a2) list a1; a2;
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS3</NAME>
+# define TRIO_ARGS3(list,a1,a2,a3) list a1; a2; a3;
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS4</NAME>
+# define TRIO_ARGS4(list,a1,a2,a3,a4) list a1; a2; a3; a4;
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS5</NAME>
+# define TRIO_ARGS5(list,a1,a2,a3,a4,a5) list a1; a2; a3; a4; a5;
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS6</NAME>
+# define TRIO_ARGS6(list,a1,a2,a3,a4,a5,a6) list a1; a2; a3; a4; a5; a6;
+</MACRO>
+<MACRO>
+<NAME>TRIO_VARGS2</NAME>
+# define TRIO_VARGS2(list,a1,a2) list a1; a2
+</MACRO>
+<MACRO>
+<NAME>TRIO_VARGS3</NAME>
+# define TRIO_VARGS3(list,a1,a2,a3) list a1; a2; a3
+</MACRO>
+<MACRO>
+<NAME>TRIO_VARGS4</NAME>
+# define TRIO_VARGS4(list,a1,a2,a3,a4) list a1; a2; a3; a4
+</MACRO>
+<MACRO>
+<NAME>TRIO_VARGS5</NAME>
+# define TRIO_VARGS5(list,a1,a2,a3,a4,a5) list a1; a2; a3; a4; a5
+</MACRO>
+<MACRO>
+<NAME>TRIO_VA_DECL</NAME>
+# define TRIO_VA_DECL va_dcl
+</MACRO>
+<MACRO>
+<NAME>TRIO_VA_START</NAME>
+# define TRIO_VA_START(x,y) va_start(x)
+</MACRO>
+<MACRO>
+<NAME>TRIO_VA_END</NAME>
+# define TRIO_VA_END(x) va_end(x)
+</MACRO>
+<MACRO>
+<NAME>TRIO_CONST</NAME>
+# define TRIO_CONST const
+</MACRO>
+<MACRO>
+<NAME>TRIO_VOLATILE</NAME>
+# define TRIO_VOLATILE volatile
+</MACRO>
+<MACRO>
+<NAME>TRIO_SIGNED</NAME>
+# define TRIO_SIGNED signed
+</MACRO>
+<TYPEDEF>
+<NAME>trio_long_double_t</NAME>
+typedef long double trio_long_double_t;
+</TYPEDEF>
+<TYPEDEF>
+<NAME>trio_pointer_t</NAME>
+typedef void * trio_pointer_t;
+</TYPEDEF>
+<MACRO>
+<NAME>TRIO_SUFFIX_LONG</NAME>
+# define TRIO_SUFFIX_LONG(x) x ## L
+</MACRO>
+<MACRO>
+<NAME>TRIO_PROTO</NAME>
+# define TRIO_PROTO(x) x
+</MACRO>
+<MACRO>
+<NAME>TRIO_NOARGS</NAME>
+# define TRIO_NOARGS void
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS1</NAME>
+# define TRIO_ARGS1(list,a1) (a1)
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS2</NAME>
+# define TRIO_ARGS2(list,a1,a2) (a1,a2)
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS3</NAME>
+# define TRIO_ARGS3(list,a1,a2,a3) (a1,a2,a3)
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS4</NAME>
+# define TRIO_ARGS4(list,a1,a2,a3,a4) (a1,a2,a3,a4)
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS5</NAME>
+# define TRIO_ARGS5(list,a1,a2,a3,a4,a5) (a1,a2,a3,a4,a5)
+</MACRO>
+<MACRO>
+<NAME>TRIO_ARGS6</NAME>
+# define TRIO_ARGS6(list,a1,a2,a3,a4,a5,a6) (a1,a2,a3,a4,a5,a6)
+</MACRO>
+<MACRO>
+<NAME>TRIO_VARGS2</NAME>
+# define TRIO_VARGS2 TRIO_ARGS2
+</MACRO>
+<MACRO>
+<NAME>TRIO_VARGS3</NAME>
+# define TRIO_VARGS3 TRIO_ARGS3
+</MACRO>
+<MACRO>
+<NAME>TRIO_VARGS4</NAME>
+# define TRIO_VARGS4 TRIO_ARGS4
+</MACRO>
+<MACRO>
+<NAME>TRIO_VARGS5</NAME>
+# define TRIO_VARGS5 TRIO_ARGS5
+</MACRO>
+<MACRO>
+<NAME>TRIO_VA_DECL</NAME>
+# define TRIO_VA_DECL ...
+</MACRO>
+<MACRO>
+<NAME>TRIO_VA_START</NAME>
+# define TRIO_VA_START(x,y) va_start(x,y)
+</MACRO>
+<MACRO>
+<NAME>TRIO_VA_END</NAME>
+# define TRIO_VA_END(x) va_end(x)
+</MACRO>
+<MACRO>
+<NAME>TRIO_INLINE</NAME>
+# define TRIO_INLINE inline
+</MACRO>
+<MACRO>
+<NAME>TRIO_INLINE</NAME>
+# define TRIO_INLINE __inline__
+</MACRO>
+<MACRO>
+<NAME>TRIO_INLINE</NAME>
+# define TRIO_INLINE _inline
+</MACRO>
+<MACRO>
+<NAME>TRIO_INLINE</NAME>
+# define TRIO_INLINE __inline
+</MACRO>
+<MACRO>
+<NAME>TRIO_INLINE</NAME>
+# define TRIO_INLINE
+</MACRO>
+<MACRO>
+<NAME>TRIO_COMPILER_SUPPORTS_LL</NAME>
+# define TRIO_COMPILER_SUPPORTS_LL
+</MACRO>
+<STRUCT>
+<NAME>xsltSecurityPrefs</NAME>
+</STRUCT>
+<TYPEDEF>
+<NAME>xsltSecurityPrefsPtr</NAME>
+typedef xsltSecurityPrefs *xsltSecurityPrefsPtr;
+</TYPEDEF>
+<ENUM>
+<NAME>xsltSecurityOption</NAME>
+typedef enum {
+ XSLT_SECPREF_READ_FILE = 1,
+ XSLT_SECPREF_WRITE_FILE,
+ XSLT_SECPREF_CREATE_DIRECTORY,
+ XSLT_SECPREF_READ_NETWORK,
+ XSLT_SECPREF_WRITE_NETWORK
+} xsltSecurityOption;
+</ENUM>
+<USER_FUNCTION>
+<NAME>xsltSecurityCheck</NAME>
+<RETURNS>int </RETURNS>
+xsltSecurityPrefsPtr sec,
+ xsltTransformContextPtr ctxt,
+ const char *value
+</USER_FUNCTION>
+<MACRO>
+<NAME>XSLTPUBFUN</NAME>
+#define XSLTPUBFUN
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBVAR</NAME>
+#define XSLTPUBVAR extern
+</MACRO>
+<MACRO>
+<NAME>XSLTCALL</NAME>
+#define XSLTCALL
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBFUN</NAME>
+ #define XSLTPUBFUN __declspec(dllexport)
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBVAR</NAME>
+ #define XSLTPUBVAR __declspec(dllexport)
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBFUN</NAME>
+ #define XSLTPUBFUN
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBVAR</NAME>
+ #define XSLTPUBVAR __declspec(dllimport) extern
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBVAR</NAME>
+ #define XSLTPUBVAR extern
+</MACRO>
+<MACRO>
+<NAME>XSLTCALL</NAME>
+ #define XSLTCALL __cdecl
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBFUN</NAME>
+ #define XSLTPUBFUN __declspec(dllexport)
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBVAR</NAME>
+ #define XSLTPUBVAR __declspec(dllexport) extern
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBFUN</NAME>
+ #define XSLTPUBFUN
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBVAR</NAME>
+ #define XSLTPUBVAR __declspec(dllimport) extern
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBVAR</NAME>
+ #define XSLTPUBVAR extern
+</MACRO>
+<MACRO>
+<NAME>XSLTCALL</NAME>
+ #define XSLTCALL __cdecl
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBFUN</NAME>
+ #define XSLTPUBFUN __declspec(dllexport)
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBVAR</NAME>
+ #define XSLTPUBVAR __declspec(dllexport)
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBFUN</NAME>
+ #define XSLTPUBFUN
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBVAR</NAME>
+ #define XSLTPUBVAR __declspec(dllimport) extern
+</MACRO>
+<MACRO>
+<NAME>XSLTPUBVAR</NAME>
+ #define XSLTPUBVAR
+</MACRO>
+<MACRO>
+<NAME>XSLTCALL</NAME>
+ #define XSLTCALL __cdecl
+</MACRO>
+<MACRO>
+<NAME>LIBXSLT_PUBLIC</NAME>
+#define LIBXSLT_PUBLIC XSLTPUBVAR
+</MACRO>
diff --git a/libxslt/doc/libxslt-refs.xml b/libxslt/doc/libxslt-refs.xml
new file mode 100644
index 0000000..3d2169f
--- /dev/null
+++ b/libxslt/doc/libxslt-refs.xml
@@ -0,0 +1,8634 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<apirefs name='libxslt'>
+ <references>
+ <reference name='CHECK_STOPPED' href='html/libxslt-xsltInternals.html#CHECK_STOPPED'/>
+ <reference name='CHECK_STOPPED0' href='html/libxslt-xsltInternals.html#CHECK_STOPPED0'/>
+ <reference name='CHECK_STOPPEDE' href='html/libxslt-xsltInternals.html#CHECK_STOPPEDE'/>
+ <reference name='IS_XSLT_ATTR_FAST' href='html/libxslt-xsltInternals.html#IS_XSLT_ATTR_FAST'/>
+ <reference name='IS_XSLT_ELEM' href='html/libxslt-xsltutils.html#IS_XSLT_ELEM'/>
+ <reference name='IS_XSLT_ELEM_FAST' href='html/libxslt-xsltInternals.html#IS_XSLT_ELEM_FAST'/>
+ <reference name='IS_XSLT_NAME' href='html/libxslt-xsltutils.html#IS_XSLT_NAME'/>
+ <reference name='IS_XSLT_REAL_NODE' href='html/libxslt-xsltutils.html#IS_XSLT_REAL_NODE'/>
+ <reference name='LIBXSLT_PUBLIC' href='html/libxslt-xsltexports.html#LIBXSLT_PUBLIC'/>
+ <reference name='NODE_IS_KEYED' href='html/libxslt-keys.html#NODE_IS_KEYED'/>
+ <reference name='UNDEFINED_DEFAULT_NS' href='html/libxslt-namespaces.html#UNDEFINED_DEFAULT_NS'/>
+ <reference name='XML_CAST_FPTR' href='html/libxslt-xsltInternals.html#XML_CAST_FPTR'/>
+ <reference name='XSLTCALL' href='html/libxslt-xsltexports.html#XSLTCALL'/>
+ <reference name='XSLTPUBFUN' href='html/libxslt-xsltexports.html#XSLTPUBFUN'/>
+ <reference name='XSLTPUBVAR' href='html/libxslt-xsltexports.html#XSLTPUBVAR'/>
+ <reference name='XSLT_CCTXT' href='html/libxslt-xsltInternals.html#XSLT_CCTXT'/>
+ <reference name='XSLT_DEBUG_CONT' href='html/libxslt-xsltutils.html#XSLT_DEBUG_CONT'/>
+ <reference name='XSLT_DEBUG_INIT' href='html/libxslt-xsltutils.html#XSLT_DEBUG_INIT'/>
+ <reference name='XSLT_DEBUG_NEXT' href='html/libxslt-xsltutils.html#XSLT_DEBUG_NEXT'/>
+ <reference name='XSLT_DEBUG_NONE' href='html/libxslt-xsltutils.html#XSLT_DEBUG_NONE'/>
+ <reference name='XSLT_DEBUG_QUIT' href='html/libxslt-xsltutils.html#XSLT_DEBUG_QUIT'/>
+ <reference name='XSLT_DEBUG_RUN' href='html/libxslt-xsltutils.html#XSLT_DEBUG_RUN'/>
+ <reference name='XSLT_DEBUG_RUN_RESTART' href='html/libxslt-xsltutils.html#XSLT_DEBUG_RUN_RESTART'/>
+ <reference name='XSLT_DEBUG_STEP' href='html/libxslt-xsltutils.html#XSLT_DEBUG_STEP'/>
+ <reference name='XSLT_DEBUG_STEPOUT' href='html/libxslt-xsltutils.html#XSLT_DEBUG_STEPOUT'/>
+ <reference name='XSLT_DEBUG_STOP' href='html/libxslt-xsltutils.html#XSLT_DEBUG_STOP'/>
+ <reference name='XSLT_DEFAULT_URL' href='html/libxslt-xslt.html#XSLT_DEFAULT_URL'/>
+ <reference name='XSLT_DEFAULT_VENDOR' href='html/libxslt-xslt.html#XSLT_DEFAULT_VENDOR'/>
+ <reference name='XSLT_DEFAULT_VERSION' href='html/libxslt-xslt.html#XSLT_DEFAULT_VERSION'/>
+ <reference name='XSLT_ERROR_SEVERITY_ERROR' href='html/libxslt-xsltInternals.html#XSLT_ERROR_SEVERITY_ERROR'/>
+ <reference name='XSLT_ERROR_SEVERITY_WARNING' href='html/libxslt-xsltInternals.html#XSLT_ERROR_SEVERITY_WARNING'/>
+ <reference name='XSLT_FAST_IF' href='html/libxslt-xsltInternals.html#XSLT_FAST_IF'/>
+ <reference name='XSLT_FUNC_APPLYIMPORTS' href='html/libxslt-xsltInternals.html#XSLT_FUNC_APPLYIMPORTS'/>
+ <reference name='XSLT_FUNC_APPLYTEMPLATES' href='html/libxslt-xsltInternals.html#XSLT_FUNC_APPLYTEMPLATES'/>
+ <reference name='XSLT_FUNC_ATTRIBUTE' href='html/libxslt-xsltInternals.html#XSLT_FUNC_ATTRIBUTE'/>
+ <reference name='XSLT_FUNC_ATTRSET' href='html/libxslt-xsltInternals.html#XSLT_FUNC_ATTRSET'/>
+ <reference name='XSLT_FUNC_CALLTEMPLATE' href='html/libxslt-xsltInternals.html#XSLT_FUNC_CALLTEMPLATE'/>
+ <reference name='XSLT_FUNC_CHOOSE' href='html/libxslt-xsltInternals.html#XSLT_FUNC_CHOOSE'/>
+ <reference name='XSLT_FUNC_COMMENT' href='html/libxslt-xsltInternals.html#XSLT_FUNC_COMMENT'/>
+ <reference name='XSLT_FUNC_COPY' href='html/libxslt-xsltInternals.html#XSLT_FUNC_COPY'/>
+ <reference name='XSLT_FUNC_COPYOF' href='html/libxslt-xsltInternals.html#XSLT_FUNC_COPYOF'/>
+ <reference name='XSLT_FUNC_DOCUMENT' href='html/libxslt-xsltInternals.html#XSLT_FUNC_DOCUMENT'/>
+ <reference name='XSLT_FUNC_ELEMENT' href='html/libxslt-xsltInternals.html#XSLT_FUNC_ELEMENT'/>
+ <reference name='XSLT_FUNC_EXTENSION' href='html/libxslt-xsltInternals.html#XSLT_FUNC_EXTENSION'/>
+ <reference name='XSLT_FUNC_FALLBACK' href='html/libxslt-xsltInternals.html#XSLT_FUNC_FALLBACK'/>
+ <reference name='XSLT_FUNC_FOREACH' href='html/libxslt-xsltInternals.html#XSLT_FUNC_FOREACH'/>
+ <reference name='XSLT_FUNC_IF' href='html/libxslt-xsltInternals.html#XSLT_FUNC_IF'/>
+ <reference name='XSLT_FUNC_INCLUDE' href='html/libxslt-xsltInternals.html#XSLT_FUNC_INCLUDE'/>
+ <reference name='XSLT_FUNC_LITERAL_RESULT_ELEMENT' href='html/libxslt-xsltInternals.html#XSLT_FUNC_LITERAL_RESULT_ELEMENT'/>
+ <reference name='XSLT_FUNC_MESSAGE' href='html/libxslt-xsltInternals.html#XSLT_FUNC_MESSAGE'/>
+ <reference name='XSLT_FUNC_NUMBER' href='html/libxslt-xsltInternals.html#XSLT_FUNC_NUMBER'/>
+ <reference name='XSLT_FUNC_OTHERWISE' href='html/libxslt-xsltInternals.html#XSLT_FUNC_OTHERWISE'/>
+ <reference name='XSLT_FUNC_PARAM' href='html/libxslt-xsltInternals.html#XSLT_FUNC_PARAM'/>
+ <reference name='XSLT_FUNC_PI' href='html/libxslt-xsltInternals.html#XSLT_FUNC_PI'/>
+ <reference name='XSLT_FUNC_SORT' href='html/libxslt-xsltInternals.html#XSLT_FUNC_SORT'/>
+ <reference name='XSLT_FUNC_TEXT' href='html/libxslt-xsltInternals.html#XSLT_FUNC_TEXT'/>
+ <reference name='XSLT_FUNC_UNKOWN_FORWARDS_COMPAT' href='html/libxslt-xsltInternals.html#XSLT_FUNC_UNKOWN_FORWARDS_COMPAT'/>
+ <reference name='XSLT_FUNC_VALUEOF' href='html/libxslt-xsltInternals.html#XSLT_FUNC_VALUEOF'/>
+ <reference name='XSLT_FUNC_VARIABLE' href='html/libxslt-xsltInternals.html#XSLT_FUNC_VARIABLE'/>
+ <reference name='XSLT_FUNC_WHEN' href='html/libxslt-xsltInternals.html#XSLT_FUNC_WHEN'/>
+ <reference name='XSLT_FUNC_WITHPARAM' href='html/libxslt-xsltInternals.html#XSLT_FUNC_WITHPARAM'/>
+ <reference name='XSLT_GET_IMPORT_INT' href='html/libxslt-imports.html#XSLT_GET_IMPORT_INT'/>
+ <reference name='XSLT_GET_IMPORT_PTR' href='html/libxslt-imports.html#XSLT_GET_IMPORT_PTR'/>
+ <reference name='XSLT_GET_INTERNAL_NSMAP' href='html/libxslt-xsltInternals.html#XSLT_GET_INTERNAL_NSMAP'/>
+ <reference name='XSLT_HAS_INTERNAL_NSMAP' href='html/libxslt-xsltInternals.html#XSLT_HAS_INTERNAL_NSMAP'/>
+ <reference name='XSLT_IS_RES_TREE_FRAG' href='html/libxslt-xsltInternals.html#XSLT_IS_RES_TREE_FRAG'/>
+ <reference name='XSLT_IS_TEXT_NODE' href='html/libxslt-xsltInternals.html#XSLT_IS_TEXT_NODE'/>
+ <reference name='XSLT_ITEM_COMMON_FIELDS' href='html/libxslt-xsltInternals.html#XSLT_ITEM_COMMON_FIELDS'/>
+ <reference name='XSLT_ITEM_COMPATIBILITY_FIELDS' href='html/libxslt-xsltInternals.html#XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <reference name='XSLT_ITEM_NAVIGATION_FIELDS' href='html/libxslt-xsltInternals.html#XSLT_ITEM_NAVIGATION_FIELDS'/>
+ <reference name='XSLT_ITEM_NSINSCOPE_FIELDS' href='html/libxslt-xsltInternals.html#XSLT_ITEM_NSINSCOPE_FIELDS'/>
+ <reference name='XSLT_LIBXSLT_NAMESPACE' href='html/libxslt-extra.html#XSLT_LIBXSLT_NAMESPACE'/>
+ <reference name='XSLT_LOAD_DOCUMENT' href='html/libxslt-documents.html#XSLT_LOAD_DOCUMENT'/>
+ <reference name='XSLT_LOAD_START' href='html/libxslt-documents.html#XSLT_LOAD_START'/>
+ <reference name='XSLT_LOAD_STYLESHEET' href='html/libxslt-documents.html#XSLT_LOAD_STYLESHEET'/>
+ <reference name='XSLT_LOCALE_NONE' href='html/libxslt-xsltlocale.html#XSLT_LOCALE_NONE'/>
+ <reference name='XSLT_MARK_RES_TREE_FRAG' href='html/libxslt-xsltInternals.html#XSLT_MARK_RES_TREE_FRAG'/>
+ <reference name='XSLT_MAX_SORT' href='html/libxslt-xsltInternals.html#XSLT_MAX_SORT'/>
+ <reference name='XSLT_NAMESPACE' href='html/libxslt-xslt.html#XSLT_NAMESPACE'/>
+ <reference name='XSLT_NORM_SAXON_NAMESPACE' href='html/libxslt-extra.html#XSLT_NORM_SAXON_NAMESPACE'/>
+ <reference name='XSLT_OUTPUT_HTML' href='html/libxslt-xsltInternals.html#XSLT_OUTPUT_HTML'/>
+ <reference name='XSLT_OUTPUT_TEXT' href='html/libxslt-xsltInternals.html#XSLT_OUTPUT_TEXT'/>
+ <reference name='XSLT_OUTPUT_XML' href='html/libxslt-xsltInternals.html#XSLT_OUTPUT_XML'/>
+ <reference name='XSLT_PARSE_OPTIONS' href='html/libxslt-xslt.html#XSLT_PARSE_OPTIONS'/>
+ <reference name='XSLT_PAT_NO_PRIORITY' href='html/libxslt-xsltInternals.html#XSLT_PAT_NO_PRIORITY'/>
+ <reference name='XSLT_REFACTORED_KEYCOMP' href='html/libxslt-xsltInternals.html#XSLT_REFACTORED_KEYCOMP'/>
+ <reference name='XSLT_REFACTORED_VARS' href='html/libxslt-xsltInternals.html#XSLT_REFACTORED_VARS'/>
+ <reference name='XSLT_REFACTORED_XPATHCOMP' href='html/libxslt-xsltInternals.html#XSLT_REFACTORED_XPATHCOMP'/>
+ <reference name='XSLT_REGISTER_FUNCTION_LOOKUP' href='html/libxslt-functions.html#XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <reference name='XSLT_REGISTER_VARIABLE_LOOKUP' href='html/libxslt-variables.html#XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ <reference name='XSLT_RUNTIME_EXTRA' href='html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA'/>
+ <reference name='XSLT_RUNTIME_EXTRA_FREE' href='html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_FREE'/>
+ <reference name='XSLT_RUNTIME_EXTRA_LST' href='html/libxslt-xsltInternals.html#XSLT_RUNTIME_EXTRA_LST'/>
+ <reference name='XSLT_SAXON_NAMESPACE' href='html/libxslt-extra.html#XSLT_SAXON_NAMESPACE'/>
+ <reference name='XSLT_SECPREF_CREATE_DIRECTORY' href='html/libxslt-security.html#XSLT_SECPREF_CREATE_DIRECTORY'/>
+ <reference name='XSLT_SECPREF_READ_FILE' href='html/libxslt-security.html#XSLT_SECPREF_READ_FILE'/>
+ <reference name='XSLT_SECPREF_READ_NETWORK' href='html/libxslt-security.html#XSLT_SECPREF_READ_NETWORK'/>
+ <reference name='XSLT_SECPREF_WRITE_FILE' href='html/libxslt-security.html#XSLT_SECPREF_WRITE_FILE'/>
+ <reference name='XSLT_SECPREF_WRITE_NETWORK' href='html/libxslt-security.html#XSLT_SECPREF_WRITE_NETWORK'/>
+ <reference name='XSLT_STATE_ERROR' href='html/libxslt-xsltInternals.html#XSLT_STATE_ERROR'/>
+ <reference name='XSLT_STATE_OK' href='html/libxslt-xsltInternals.html#XSLT_STATE_OK'/>
+ <reference name='XSLT_STATE_STOPPED' href='html/libxslt-xsltInternals.html#XSLT_STATE_STOPPED'/>
+ <reference name='XSLT_STRANGE' href='html/libxslt-xsltutils.html#XSLT_STRANGE'/>
+ <reference name='XSLT_TIMESTAMP_TICS_PER_SEC' href='html/libxslt-xsltutils.html#XSLT_TIMESTAMP_TICS_PER_SEC'/>
+ <reference name='XSLT_TODO' href='html/libxslt-xsltutils.html#XSLT_TODO'/>
+ <reference name='XSLT_TRACE' href='html/libxslt-xsltutils.html#XSLT_TRACE'/>
+ <reference name='XSLT_TRACE_ALL' href='html/libxslt-xsltutils.html#XSLT_TRACE_ALL'/>
+ <reference name='XSLT_TRACE_APPLY_TEMPLATE' href='html/libxslt-xsltutils.html#XSLT_TRACE_APPLY_TEMPLATE'/>
+ <reference name='XSLT_TRACE_APPLY_TEMPLATES' href='html/libxslt-xsltutils.html#XSLT_TRACE_APPLY_TEMPLATES'/>
+ <reference name='XSLT_TRACE_CALL_TEMPLATE' href='html/libxslt-xsltutils.html#XSLT_TRACE_CALL_TEMPLATE'/>
+ <reference name='XSLT_TRACE_CHOOSE' href='html/libxslt-xsltutils.html#XSLT_TRACE_CHOOSE'/>
+ <reference name='XSLT_TRACE_COMMENT' href='html/libxslt-xsltutils.html#XSLT_TRACE_COMMENT'/>
+ <reference name='XSLT_TRACE_COPY' href='html/libxslt-xsltutils.html#XSLT_TRACE_COPY'/>
+ <reference name='XSLT_TRACE_COPY_OF' href='html/libxslt-xsltutils.html#XSLT_TRACE_COPY_OF'/>
+ <reference name='XSLT_TRACE_COPY_TEXT' href='html/libxslt-xsltutils.html#XSLT_TRACE_COPY_TEXT'/>
+ <reference name='XSLT_TRACE_FOR_EACH' href='html/libxslt-xsltutils.html#XSLT_TRACE_FOR_EACH'/>
+ <reference name='XSLT_TRACE_IF' href='html/libxslt-xsltutils.html#XSLT_TRACE_IF'/>
+ <reference name='XSLT_TRACE_KEYS' href='html/libxslt-xsltutils.html#XSLT_TRACE_KEYS'/>
+ <reference name='XSLT_TRACE_NONE' href='html/libxslt-xsltutils.html#XSLT_TRACE_NONE'/>
+ <reference name='XSLT_TRACE_PI' href='html/libxslt-xsltutils.html#XSLT_TRACE_PI'/>
+ <reference name='XSLT_TRACE_PROCESS_NODE' href='html/libxslt-xsltutils.html#XSLT_TRACE_PROCESS_NODE'/>
+ <reference name='XSLT_TRACE_STRIP_SPACES' href='html/libxslt-xsltutils.html#XSLT_TRACE_STRIP_SPACES'/>
+ <reference name='XSLT_TRACE_TEMPLATES' href='html/libxslt-xsltutils.html#XSLT_TRACE_TEMPLATES'/>
+ <reference name='XSLT_TRACE_VALUE_OF' href='html/libxslt-xsltutils.html#XSLT_TRACE_VALUE_OF'/>
+ <reference name='XSLT_TRACE_VARIABLES' href='html/libxslt-xsltutils.html#XSLT_TRACE_VARIABLES'/>
+ <reference name='XSLT_XALAN_NAMESPACE' href='html/libxslt-extra.html#XSLT_XALAN_NAMESPACE'/>
+ <reference name='XSLT_XT_NAMESPACE' href='html/libxslt-extra.html#XSLT_XT_NAMESPACE'/>
+ <reference name='_REENTRANT' href='html/libxslt-xsltexports.html#_REENTRANT'/>
+ <reference name='_xsltCompMatch' href='html/libxslt-numbersInternals.html#_xsltCompMatch'/>
+ <reference name='_xsltCompilerCtxt' href='html/libxslt-xsltInternals.html#_xsltCompilerCtxt'/>
+ <reference name='_xsltCompilerNodeInfo' href='html/libxslt-xsltInternals.html#_xsltCompilerNodeInfo'/>
+ <reference name='_xsltDecimalFormat' href='html/libxslt-xsltInternals.html#_xsltDecimalFormat'/>
+ <reference name='_xsltDocument' href='html/libxslt-xsltInternals.html#_xsltDocument'/>
+ <reference name='_xsltEffectiveNs' href='html/libxslt-xsltInternals.html#_xsltEffectiveNs'/>
+ <reference name='_xsltElemPreComp' href='html/libxslt-xsltInternals.html#_xsltElemPreComp'/>
+ <reference name='_xsltFormatNumberInfo' href='html/libxslt-numbersInternals.html#_xsltFormatNumberInfo'/>
+ <reference name='_xsltKeyDef' href='html/libxslt-xsltInternals.html#_xsltKeyDef'/>
+ <reference name='_xsltKeyTable' href='html/libxslt-xsltInternals.html#_xsltKeyTable'/>
+ <reference name='_xsltNsAlias' href='html/libxslt-xsltInternals.html#_xsltNsAlias'/>
+ <reference name='_xsltNsList' href='html/libxslt-xsltInternals.html#_xsltNsList'/>
+ <reference name='_xsltNsListContainer' href='html/libxslt-xsltInternals.html#_xsltNsListContainer'/>
+ <reference name='_xsltNsMap' href='html/libxslt-xsltInternals.html#_xsltNsMap'/>
+ <reference name='_xsltNumberData' href='html/libxslt-numbersInternals.html#_xsltNumberData'/>
+ <reference name='_xsltPointerList' href='html/libxslt-xsltInternals.html#_xsltPointerList'/>
+ <reference name='_xsltPrincipalStylesheetData' href='html/libxslt-xsltInternals.html#_xsltPrincipalStylesheetData'/>
+ <reference name='_xsltRuntimeExtra' href='html/libxslt-xsltInternals.html#_xsltRuntimeExtra'/>
+ <reference name='_xsltStackElem' href='html/libxslt-xsltInternals.html#_xsltStackElem'/>
+ <reference name='_xsltStyleBasicEmptyItem' href='html/libxslt-xsltInternals.html#_xsltStyleBasicEmptyItem'/>
+ <reference name='_xsltStyleBasicExpressionItem' href='html/libxslt-xsltInternals.html#_xsltStyleBasicExpressionItem'/>
+ <reference name='_xsltStyleBasicItemVariable' href='html/libxslt-xsltInternals.html#_xsltStyleBasicItemVariable'/>
+ <reference name='_xsltStyleItemApplyTemplates' href='html/libxslt-xsltInternals.html#_xsltStyleItemApplyTemplates'/>
+ <reference name='_xsltStyleItemAttribute' href='html/libxslt-xsltInternals.html#_xsltStyleItemAttribute'/>
+ <reference name='_xsltStyleItemCallTemplate' href='html/libxslt-xsltInternals.html#_xsltStyleItemCallTemplate'/>
+ <reference name='_xsltStyleItemCopy' href='html/libxslt-xsltInternals.html#_xsltStyleItemCopy'/>
+ <reference name='_xsltStyleItemDocument' href='html/libxslt-xsltInternals.html#_xsltStyleItemDocument'/>
+ <reference name='_xsltStyleItemElement' href='html/libxslt-xsltInternals.html#_xsltStyleItemElement'/>
+ <reference name='_xsltStyleItemExtElement' href='html/libxslt-xsltInternals.html#_xsltStyleItemExtElement'/>
+ <reference name='_xsltStyleItemIf' href='html/libxslt-xsltInternals.html#_xsltStyleItemIf'/>
+ <reference name='_xsltStyleItemInclude' href='html/libxslt-xsltInternals.html#_xsltStyleItemInclude'/>
+ <reference name='_xsltStyleItemLRElementInfo' href='html/libxslt-xsltInternals.html#_xsltStyleItemLRElementInfo'/>
+ <reference name='_xsltStyleItemMessage' href='html/libxslt-xsltInternals.html#_xsltStyleItemMessage'/>
+ <reference name='_xsltStyleItemNumber' href='html/libxslt-xsltInternals.html#_xsltStyleItemNumber'/>
+ <reference name='_xsltStyleItemOtherwise' href='html/libxslt-xsltInternals.html#_xsltStyleItemOtherwise'/>
+ <reference name='_xsltStyleItemPI' href='html/libxslt-xsltInternals.html#_xsltStyleItemPI'/>
+ <reference name='_xsltStyleItemParam' href='html/libxslt-xsltInternals.html#_xsltStyleItemParam'/>
+ <reference name='_xsltStyleItemSort' href='html/libxslt-xsltInternals.html#_xsltStyleItemSort'/>
+ <reference name='_xsltStyleItemText' href='html/libxslt-xsltInternals.html#_xsltStyleItemText'/>
+ <reference name='_xsltStyleItemUknown' href='html/libxslt-xsltInternals.html#_xsltStyleItemUknown'/>
+ <reference name='_xsltStyleItemValueOf' href='html/libxslt-xsltInternals.html#_xsltStyleItemValueOf'/>
+ <reference name='_xsltStyleItemWhen' href='html/libxslt-xsltInternals.html#_xsltStyleItemWhen'/>
+ <reference name='_xsltStylePreComp' href='html/libxslt-xsltInternals.html#_xsltStylePreComp'/>
+ <reference name='_xsltStylesheet' href='html/libxslt-xsltInternals.html#_xsltStylesheet'/>
+ <reference name='_xsltTemplate' href='html/libxslt-xsltInternals.html#_xsltTemplate'/>
+ <reference name='_xsltTransformCache' href='html/libxslt-xsltInternals.html#_xsltTransformCache'/>
+ <reference name='_xsltTransformContext' href='html/libxslt-xsltInternals.html#_xsltTransformContext'/>
+ <reference name='_xsltVarInfo' href='html/libxslt-xsltInternals.html#_xsltVarInfo'/>
+ <reference name='xslAddCall' href='html/libxslt-xsltutils.html#xslAddCall'/>
+ <reference name='xslDebugStatus' href='html/libxslt-xsltutils.html#xslDebugStatus'/>
+ <reference name='xslDropCall' href='html/libxslt-xsltutils.html#xslDropCall'/>
+ <reference name='xslHandleDebugger' href='html/libxslt-transform.html#xslHandleDebugger'/>
+ <reference name='xsltAddCallCallback' href='html/libxslt-xsltutils.html#xsltAddCallCallback'/>
+ <reference name='xsltAddKey' href='html/libxslt-keys.html#xsltAddKey'/>
+ <reference name='xsltAddStackElemList' href='html/libxslt-variables.html#xsltAddStackElemList'/>
+ <reference name='xsltAddTemplate' href='html/libxslt-pattern.html#xsltAddTemplate'/>
+ <reference name='xsltAllocateExtra' href='html/libxslt-xsltInternals.html#xsltAllocateExtra'/>
+ <reference name='xsltAllocateExtraCtxt' href='html/libxslt-xsltInternals.html#xsltAllocateExtraCtxt'/>
+ <reference name='xsltApplyAttributeSet' href='html/libxslt-attributes.html#xsltApplyAttributeSet'/>
+ <reference name='xsltApplyImports' href='html/libxslt-transform.html#xsltApplyImports'/>
+ <reference name='xsltApplyOneTemplate' href='html/libxslt-transform.html#xsltApplyOneTemplate'/>
+ <reference name='xsltApplyStripSpaces' href='html/libxslt-transform.html#xsltApplyStripSpaces'/>
+ <reference name='xsltApplyStylesheet' href='html/libxslt-transform.html#xsltApplyStylesheet'/>
+ <reference name='xsltApplyStylesheetUser' href='html/libxslt-transform.html#xsltApplyStylesheetUser'/>
+ <reference name='xsltApplyTemplates' href='html/libxslt-transform.html#xsltApplyTemplates'/>
+ <reference name='xsltAttrListTemplateProcess' href='html/libxslt-templates.html#xsltAttrListTemplateProcess'/>
+ <reference name='xsltAttrTemplateProcess' href='html/libxslt-templates.html#xsltAttrTemplateProcess'/>
+ <reference name='xsltAttrTemplateValueProcess' href='html/libxslt-templates.html#xsltAttrTemplateValueProcess'/>
+ <reference name='xsltAttrTemplateValueProcessNode' href='html/libxslt-templates.html#xsltAttrTemplateValueProcessNode'/>
+ <reference name='xsltAttribute' href='html/libxslt-transform.html#xsltAttribute'/>
+ <reference name='xsltCalibrateAdjust' href='html/libxslt-xsltutils.html#xsltCalibrateAdjust'/>
+ <reference name='xsltCallTemplate' href='html/libxslt-transform.html#xsltCallTemplate'/>
+ <reference name='xsltCheckExtPrefix' href='html/libxslt-extensions.html#xsltCheckExtPrefix'/>
+ <reference name='xsltCheckExtURI' href='html/libxslt-extensions.html#xsltCheckExtURI'/>
+ <reference name='xsltCheckRead' href='html/libxslt-security.html#xsltCheckRead'/>
+ <reference name='xsltCheckWrite' href='html/libxslt-security.html#xsltCheckWrite'/>
+ <reference name='xsltChoose' href='html/libxslt-transform.html#xsltChoose'/>
+ <reference name='xsltCleanupGlobals' href='html/libxslt-xslt.html#xsltCleanupGlobals'/>
+ <reference name='xsltCleanupTemplates' href='html/libxslt-pattern.html#xsltCleanupTemplates'/>
+ <reference name='xsltComment' href='html/libxslt-transform.html#xsltComment'/>
+ <reference name='xsltCompMatch' href='html/libxslt-pattern.html#xsltCompMatch'/>
+ <reference name='xsltCompMatchPtr' href='html/libxslt-pattern.html#xsltCompMatchPtr'/>
+ <reference name='xsltCompileAttr' href='html/libxslt-xsltInternals.html#xsltCompileAttr'/>
+ <reference name='xsltCompilePattern' href='html/libxslt-pattern.html#xsltCompilePattern'/>
+ <reference name='xsltCompilerCtxt' href='html/libxslt-xsltInternals.html#xsltCompilerCtxt'/>
+ <reference name='xsltCompilerCtxtPtr' href='html/libxslt-xsltInternals.html#xsltCompilerCtxtPtr'/>
+ <reference name='xsltCompilerNodeInfo' href='html/libxslt-xsltInternals.html#xsltCompilerNodeInfo'/>
+ <reference name='xsltCompilerNodeInfoPtr' href='html/libxslt-xsltInternals.html#xsltCompilerNodeInfoPtr'/>
+ <reference name='xsltComputeSortResult' href='html/libxslt-xsltutils.html#xsltComputeSortResult'/>
+ <reference name='xsltConstNamespaceNameXSLT' href='html/libxslt-xsltInternals.html#xsltConstNamespaceNameXSLT'/>
+ <reference name='xsltCopy' href='html/libxslt-transform.html#xsltCopy'/>
+ <reference name='xsltCopyNamespace' href='html/libxslt-namespaces.html#xsltCopyNamespace'/>
+ <reference name='xsltCopyNamespaceList' href='html/libxslt-namespaces.html#xsltCopyNamespaceList'/>
+ <reference name='xsltCopyOf' href='html/libxslt-transform.html#xsltCopyOf'/>
+ <reference name='xsltCopyTextString' href='html/libxslt-transform.html#xsltCopyTextString'/>
+ <reference name='xsltCreateRVT' href='html/libxslt-xsltInternals.html#xsltCreateRVT'/>
+ <reference name='xsltDebug' href='html/libxslt-extra.html#xsltDebug'/>
+ <reference name='xsltDebugDumpExtensions' href='html/libxslt-extensions.html#xsltDebugDumpExtensions'/>
+ <reference name='xsltDebugGetDefaultTrace' href='html/libxslt-xsltutils.html#xsltDebugGetDefaultTrace'/>
+ <reference name='xsltDebugSetDefaultTrace' href='html/libxslt-xsltutils.html#xsltDebugSetDefaultTrace'/>
+ <reference name='xsltDebugStatusCodes' href='html/libxslt-xsltutils.html#xsltDebugStatusCodes'/>
+ <reference name='xsltDebugTraceCodes' href='html/libxslt-xsltutils.html#xsltDebugTraceCodes'/>
+ <reference name='xsltDecimalFormat' href='html/libxslt-xsltInternals.html#xsltDecimalFormat'/>
+ <reference name='xsltDecimalFormatGetByName' href='html/libxslt-xsltInternals.html#xsltDecimalFormatGetByName'/>
+ <reference name='xsltDecimalFormatPtr' href='html/libxslt-xsltInternals.html#xsltDecimalFormatPtr'/>
+ <reference name='xsltDefaultSortFunction' href='html/libxslt-xsltutils.html#xsltDefaultSortFunction'/>
+ <reference name='xsltDoSortFunction' href='html/libxslt-xsltutils.html#xsltDoSortFunction'/>
+ <reference name='xsltDocDefaultLoader' href='html/libxslt-documents.html#xsltDocDefaultLoader'/>
+ <reference name='xsltDocLoaderFunc' href='html/libxslt-documents.html#xsltDocLoaderFunc'/>
+ <reference name='xsltDocument' href='html/libxslt-xsltInternals.html#xsltDocument'/>
+ <reference name='xsltDocumentComp' href='html/libxslt-preproc.html#xsltDocumentComp'/>
+ <reference name='xsltDocumentElem' href='html/libxslt-transform.html#xsltDocumentElem'/>
+ <reference name='xsltDocumentFunction' href='html/libxslt-functions.html#xsltDocumentFunction'/>
+ <reference name='xsltDocumentPtr' href='html/libxslt-xsltInternals.html#xsltDocumentPtr'/>
+ <reference name='xsltDocumentSortFunction' href='html/libxslt-xsltutils.html#xsltDocumentSortFunction'/>
+ <reference name='xsltDropCallCallback' href='html/libxslt-xsltutils.html#xsltDropCallCallback'/>
+ <reference name='xsltEffectiveNs' href='html/libxslt-xsltInternals.html#xsltEffectiveNs'/>
+ <reference name='xsltEffectiveNsPtr' href='html/libxslt-xsltInternals.html#xsltEffectiveNsPtr'/>
+ <reference name='xsltElemPreComp' href='html/libxslt-xsltInternals.html#xsltElemPreComp'/>
+ <reference name='xsltElemPreCompDeallocator' href='html/libxslt-xsltInternals.html#xsltElemPreCompDeallocator'/>
+ <reference name='xsltElemPreCompPtr' href='html/libxslt-xsltInternals.html#xsltElemPreCompPtr'/>
+ <reference name='xsltElement' href='html/libxslt-transform.html#xsltElement'/>
+ <reference name='xsltElementAvailableFunction' href='html/libxslt-functions.html#xsltElementAvailableFunction'/>
+ <reference name='xsltEngineVersion' href='html/libxslt-xslt.html#xsltEngineVersion'/>
+ <reference name='xsltErrorSeverityType' href='html/libxslt-xsltInternals.html#xsltErrorSeverityType'/>
+ <reference name='xsltEvalAVT' href='html/libxslt-xsltInternals.html#xsltEvalAVT'/>
+ <reference name='xsltEvalAttrValueTemplate' href='html/libxslt-templates.html#xsltEvalAttrValueTemplate'/>
+ <reference name='xsltEvalGlobalVariables' href='html/libxslt-variables.html#xsltEvalGlobalVariables'/>
+ <reference name='xsltEvalOneUserParam' href='html/libxslt-variables.html#xsltEvalOneUserParam'/>
+ <reference name='xsltEvalStaticAttrValueTemplate' href='html/libxslt-templates.html#xsltEvalStaticAttrValueTemplate'/>
+ <reference name='xsltEvalTemplateString' href='html/libxslt-templates.html#xsltEvalTemplateString'/>
+ <reference name='xsltEvalUserParams' href='html/libxslt-variables.html#xsltEvalUserParams'/>
+ <reference name='xsltEvalXPathPredicate' href='html/libxslt-templates.html#xsltEvalXPathPredicate'/>
+ <reference name='xsltEvalXPathString' href='html/libxslt-templates.html#xsltEvalXPathString'/>
+ <reference name='xsltEvalXPathStringNs' href='html/libxslt-templates.html#xsltEvalXPathStringNs'/>
+ <reference name='xsltExtElementLookup' href='html/libxslt-extensions.html#xsltExtElementLookup'/>
+ <reference name='xsltExtInitFunction' href='html/libxslt-extensions.html#xsltExtInitFunction'/>
+ <reference name='xsltExtMarker' href='html/libxslt-preproc.html#xsltExtMarker'/>
+ <reference name='xsltExtModuleElementLookup' href='html/libxslt-extensions.html#xsltExtModuleElementLookup'/>
+ <reference name='xsltExtModuleElementPreComputeLookup' href='html/libxslt-extensions.html#xsltExtModuleElementPreComputeLookup'/>
+ <reference name='xsltExtModuleFunctionLookup' href='html/libxslt-extensions.html#xsltExtModuleFunctionLookup'/>
+ <reference name='xsltExtModuleTopLevelLookup' href='html/libxslt-extensions.html#xsltExtModuleTopLevelLookup'/>
+ <reference name='xsltExtShutdownFunction' href='html/libxslt-extensions.html#xsltExtShutdownFunction'/>
+ <reference name='xsltExtensionInstructionResultFinalize' href='html/libxslt-xsltInternals.html#xsltExtensionInstructionResultFinalize'/>
+ <reference name='xsltExtensionInstructionResultRegister' href='html/libxslt-xsltInternals.html#xsltExtensionInstructionResultRegister'/>
+ <reference name='xsltFindDocument' href='html/libxslt-documents.html#xsltFindDocument'/>
+ <reference name='xsltFindElemSpaceHandling' href='html/libxslt-imports.html#xsltFindElemSpaceHandling'/>
+ <reference name='xsltFindTemplate' href='html/libxslt-imports.html#xsltFindTemplate'/>
+ <reference name='xsltForEach' href='html/libxslt-transform.html#xsltForEach'/>
+ <reference name='xsltFormatNumberConversion' href='html/libxslt-xsltInternals.html#xsltFormatNumberConversion'/>
+ <reference name='xsltFormatNumberFunction' href='html/libxslt-functions.html#xsltFormatNumberFunction'/>
+ <reference name='xsltFormatNumberInfo' href='html/libxslt-numbersInternals.html#xsltFormatNumberInfo'/>
+ <reference name='xsltFormatNumberInfoPtr' href='html/libxslt-numbersInternals.html#xsltFormatNumberInfoPtr'/>
+ <reference name='xsltFreeAVTList' href='html/libxslt-xsltInternals.html#xsltFreeAVTList'/>
+ <reference name='xsltFreeAttributeSetsHashes' href='html/libxslt-attributes.html#xsltFreeAttributeSetsHashes'/>
+ <reference name='xsltFreeCompMatchList' href='html/libxslt-pattern.html#xsltFreeCompMatchList'/>
+ <reference name='xsltFreeCtxtExts' href='html/libxslt-extensions.html#xsltFreeCtxtExts'/>
+ <reference name='xsltFreeDocumentKeys' href='html/libxslt-keys.html#xsltFreeDocumentKeys'/>
+ <reference name='xsltFreeDocuments' href='html/libxslt-documents.html#xsltFreeDocuments'/>
+ <reference name='xsltFreeExts' href='html/libxslt-extensions.html#xsltFreeExts'/>
+ <reference name='xsltFreeGlobalVariables' href='html/libxslt-variables.html#xsltFreeGlobalVariables'/>
+ <reference name='xsltFreeKeys' href='html/libxslt-keys.html#xsltFreeKeys'/>
+ <reference name='xsltFreeLocale' href='html/libxslt-xsltlocale.html#xsltFreeLocale'/>
+ <reference name='xsltFreeLocales' href='html/libxslt-xsltlocale.html#xsltFreeLocales'/>
+ <reference name='xsltFreeNamespaceAliasHashes' href='html/libxslt-namespaces.html#xsltFreeNamespaceAliasHashes'/>
+ <reference name='xsltFreeRVTs' href='html/libxslt-xsltInternals.html#xsltFreeRVTs'/>
+ <reference name='xsltFreeSecurityPrefs' href='html/libxslt-security.html#xsltFreeSecurityPrefs'/>
+ <reference name='xsltFreeStackElemList' href='html/libxslt-xsltInternals.html#xsltFreeStackElemList'/>
+ <reference name='xsltFreeStyleDocuments' href='html/libxslt-documents.html#xsltFreeStyleDocuments'/>
+ <reference name='xsltFreeStylePreComps' href='html/libxslt-preproc.html#xsltFreeStylePreComps'/>
+ <reference name='xsltFreeStylesheet' href='html/libxslt-xsltInternals.html#xsltFreeStylesheet'/>
+ <reference name='xsltFreeTemplateHashes' href='html/libxslt-pattern.html#xsltFreeTemplateHashes'/>
+ <reference name='xsltFreeTransformContext' href='html/libxslt-transform.html#xsltFreeTransformContext'/>
+ <reference name='xsltFunctionAvailableFunction' href='html/libxslt-functions.html#xsltFunctionAvailableFunction'/>
+ <reference name='xsltFunctionNodeSet' href='html/libxslt-extra.html#xsltFunctionNodeSet'/>
+ <reference name='xsltGenerateIdFunction' href='html/libxslt-functions.html#xsltGenerateIdFunction'/>
+ <reference name='xsltGenericDebug' href='html/libxslt-xsltutils.html#xsltGenericDebug'/>
+ <reference name='xsltGenericDebugContext' href='html/libxslt-xsltutils.html#xsltGenericDebugContext'/>
+ <reference name='xsltGenericError' href='html/libxslt-xsltutils.html#xsltGenericError'/>
+ <reference name='xsltGenericErrorContext' href='html/libxslt-xsltutils.html#xsltGenericErrorContext'/>
+ <reference name='xsltGetCNsProp' href='html/libxslt-xsltutils.html#xsltGetCNsProp'/>
+ <reference name='xsltGetDebuggerStatus' href='html/libxslt-xsltutils.html#xsltGetDebuggerStatus'/>
+ <reference name='xsltGetDefaultSecurityPrefs' href='html/libxslt-security.html#xsltGetDefaultSecurityPrefs'/>
+ <reference name='xsltGetExtData' href='html/libxslt-extensions.html#xsltGetExtData'/>
+ <reference name='xsltGetExtInfo' href='html/libxslt-extensions.html#xsltGetExtInfo'/>
+ <reference name='xsltGetKey' href='html/libxslt-keys.html#xsltGetKey'/>
+ <reference name='xsltGetNamespace' href='html/libxslt-namespaces.html#xsltGetNamespace'/>
+ <reference name='xsltGetNsProp' href='html/libxslt-xsltutils.html#xsltGetNsProp'/>
+ <reference name='xsltGetPlainNamespace' href='html/libxslt-namespaces.html#xsltGetPlainNamespace'/>
+ <reference name='xsltGetProfileInformation' href='html/libxslt-xsltutils.html#xsltGetProfileInformation'/>
+ <reference name='xsltGetQNameURI' href='html/libxslt-xsltutils.html#xsltGetQNameURI'/>
+ <reference name='xsltGetQNameURI2' href='html/libxslt-xsltutils.html#xsltGetQNameURI2'/>
+ <reference name='xsltGetSecurityPrefs' href='html/libxslt-security.html#xsltGetSecurityPrefs'/>
+ <reference name='xsltGetSpecialNamespace' href='html/libxslt-namespaces.html#xsltGetSpecialNamespace'/>
+ <reference name='xsltGetTemplate' href='html/libxslt-pattern.html#xsltGetTemplate'/>
+ <reference name='xsltGetUTF8Char' href='html/libxslt-xsltutils.html#xsltGetUTF8Char'/>
+ <reference name='xsltGetXIncludeDefault' href='html/libxslt-transform.html#xsltGetXIncludeDefault'/>
+ <reference name='xsltHandleDebuggerCallback' href='html/libxslt-xsltutils.html#xsltHandleDebuggerCallback'/>
+ <reference name='xsltIf' href='html/libxslt-transform.html#xsltIf'/>
+ <reference name='xsltInit' href='html/libxslt-xslt.html#xsltInit'/>
+ <reference name='xsltInitAllDocKeys' href='html/libxslt-xsltInternals.html#xsltInitAllDocKeys'/>
+ <reference name='xsltInitCtxtExts' href='html/libxslt-extensions.html#xsltInitCtxtExts'/>
+ <reference name='xsltInitCtxtKey' href='html/libxslt-xsltInternals.html#xsltInitCtxtKey'/>
+ <reference name='xsltInitCtxtKeys' href='html/libxslt-keys.html#xsltInitCtxtKeys'/>
+ <reference name='xsltInitElemPreComp' href='html/libxslt-extensions.html#xsltInitElemPreComp'/>
+ <reference name='xsltInitGlobals' href='html/libxslt-extensions.html#xsltInitGlobals'/>
+ <reference name='xsltIsBlank' href='html/libxslt-xsltInternals.html#xsltIsBlank'/>
+ <reference name='xsltKeyDef' href='html/libxslt-xsltInternals.html#xsltKeyDef'/>
+ <reference name='xsltKeyDefPtr' href='html/libxslt-xsltInternals.html#xsltKeyDefPtr'/>
+ <reference name='xsltKeyFunction' href='html/libxslt-functions.html#xsltKeyFunction'/>
+ <reference name='xsltKeyTable' href='html/libxslt-xsltInternals.html#xsltKeyTable'/>
+ <reference name='xsltKeyTablePtr' href='html/libxslt-xsltInternals.html#xsltKeyTablePtr'/>
+ <reference name='xsltLibxmlVersion' href='html/libxslt-xslt.html#xsltLibxmlVersion'/>
+ <reference name='xsltLibxsltVersion' href='html/libxslt-xslt.html#xsltLibxsltVersion'/>
+ <reference name='xsltLoadDocument' href='html/libxslt-documents.html#xsltLoadDocument'/>
+ <reference name='xsltLoadStyleDocument' href='html/libxslt-documents.html#xsltLoadStyleDocument'/>
+ <reference name='xsltLoadStylesheetPI' href='html/libxslt-xsltInternals.html#xsltLoadStylesheetPI'/>
+ <reference name='xsltLoadType' href='html/libxslt-documents.html#xsltLoadType'/>
+ <reference name='xsltLocalVariablePop' href='html/libxslt-transform.html#xsltLocalVariablePop'/>
+ <reference name='xsltLocalVariablePush' href='html/libxslt-transform.html#xsltLocalVariablePush'/>
+ <reference name='xsltLocale' href='html/libxslt-xsltlocale.html#xsltLocale'/>
+ <reference name='xsltLocaleChar' href='html/libxslt-xsltlocale.html#xsltLocaleChar'/>
+ <reference name='xsltLocaleStrcmp' href='html/libxslt-xsltlocale.html#xsltLocaleStrcmp'/>
+ <reference name='xsltMatchPattern' href='html/libxslt-pattern.html#xsltMatchPattern'/>
+ <reference name='xsltMaxDepth' href='html/libxslt-xslt.html#xsltMaxDepth'/>
+ <reference name='xsltMaxVars' href='html/libxslt-xslt.html#xsltMaxVars'/>
+ <reference name='xsltMessage' href='html/libxslt-xsltutils.html#xsltMessage'/>
+ <reference name='xsltNamespaceAlias' href='html/libxslt-namespaces.html#xsltNamespaceAlias'/>
+ <reference name='xsltNeedElemSpaceHandling' href='html/libxslt-imports.html#xsltNeedElemSpaceHandling'/>
+ <reference name='xsltNewDocument' href='html/libxslt-documents.html#xsltNewDocument'/>
+ <reference name='xsltNewElemPreComp' href='html/libxslt-extensions.html#xsltNewElemPreComp'/>
+ <reference name='xsltNewLocale' href='html/libxslt-xsltlocale.html#xsltNewLocale'/>
+ <reference name='xsltNewSecurityPrefs' href='html/libxslt-security.html#xsltNewSecurityPrefs'/>
+ <reference name='xsltNewStyleDocument' href='html/libxslt-documents.html#xsltNewStyleDocument'/>
+ <reference name='xsltNewStylesheet' href='html/libxslt-xsltInternals.html#xsltNewStylesheet'/>
+ <reference name='xsltNewTransformContext' href='html/libxslt-transform.html#xsltNewTransformContext'/>
+ <reference name='xsltNextImport' href='html/libxslt-imports.html#xsltNextImport'/>
+ <reference name='xsltNormalizeCompSteps' href='html/libxslt-pattern.html#xsltNormalizeCompSteps'/>
+ <reference name='xsltNsAlias' href='html/libxslt-xsltInternals.html#xsltNsAlias'/>
+ <reference name='xsltNsAliasPtr' href='html/libxslt-xsltInternals.html#xsltNsAliasPtr'/>
+ <reference name='xsltNsList' href='html/libxslt-xsltInternals.html#xsltNsList'/>
+ <reference name='xsltNsListContainer' href='html/libxslt-xsltInternals.html#xsltNsListContainer'/>
+ <reference name='xsltNsListContainerPtr' href='html/libxslt-xsltInternals.html#xsltNsListContainerPtr'/>
+ <reference name='xsltNsListPtr' href='html/libxslt-xsltInternals.html#xsltNsListPtr'/>
+ <reference name='xsltNsMap' href='html/libxslt-xsltInternals.html#xsltNsMap'/>
+ <reference name='xsltNsMapPtr' href='html/libxslt-xsltInternals.html#xsltNsMapPtr'/>
+ <reference name='xsltNumber' href='html/libxslt-transform.html#xsltNumber'/>
+ <reference name='xsltNumberData' href='html/libxslt-numbersInternals.html#xsltNumberData'/>
+ <reference name='xsltNumberDataPtr' href='html/libxslt-numbersInternals.html#xsltNumberDataPtr'/>
+ <reference name='xsltNumberFormat' href='html/libxslt-xsltInternals.html#xsltNumberFormat'/>
+ <reference name='xsltOutputType' href='html/libxslt-xsltInternals.html#xsltOutputType'/>
+ <reference name='xsltParseAnyXSLTElem' href='html/libxslt-xsltInternals.html#xsltParseAnyXSLTElem'/>
+ <reference name='xsltParseGlobalParam' href='html/libxslt-variables.html#xsltParseGlobalParam'/>
+ <reference name='xsltParseGlobalVariable' href='html/libxslt-variables.html#xsltParseGlobalVariable'/>
+ <reference name='xsltParseSequenceConstructor' href='html/libxslt-xsltInternals.html#xsltParseSequenceConstructor'/>
+ <reference name='xsltParseStylesheetAttributeSet' href='html/libxslt-attributes.html#xsltParseStylesheetAttributeSet'/>
+ <reference name='xsltParseStylesheetCallerParam' href='html/libxslt-variables.html#xsltParseStylesheetCallerParam'/>
+ <reference name='xsltParseStylesheetDoc' href='html/libxslt-xsltInternals.html#xsltParseStylesheetDoc'/>
+ <reference name='xsltParseStylesheetFile' href='html/libxslt-xsltInternals.html#xsltParseStylesheetFile'/>
+ <reference name='xsltParseStylesheetImport' href='html/libxslt-imports.html#xsltParseStylesheetImport'/>
+ <reference name='xsltParseStylesheetImportedDoc' href='html/libxslt-xsltInternals.html#xsltParseStylesheetImportedDoc'/>
+ <reference name='xsltParseStylesheetInclude' href='html/libxslt-imports.html#xsltParseStylesheetInclude'/>
+ <reference name='xsltParseStylesheetOutput' href='html/libxslt-xsltInternals.html#xsltParseStylesheetOutput'/>
+ <reference name='xsltParseStylesheetParam' href='html/libxslt-variables.html#xsltParseStylesheetParam'/>
+ <reference name='xsltParseStylesheetProcess' href='html/libxslt-xsltInternals.html#xsltParseStylesheetProcess'/>
+ <reference name='xsltParseStylesheetVariable' href='html/libxslt-variables.html#xsltParseStylesheetVariable'/>
+ <reference name='xsltParseTemplateContent' href='html/libxslt-xsltInternals.html#xsltParseTemplateContent'/>
+ <reference name='xsltPointerList' href='html/libxslt-xsltInternals.html#xsltPointerList'/>
+ <reference name='xsltPointerListAddSize' href='html/libxslt-xsltInternals.html#xsltPointerListAddSize'/>
+ <reference name='xsltPointerListClear' href='html/libxslt-xsltInternals.html#xsltPointerListClear'/>
+ <reference name='xsltPointerListCreate' href='html/libxslt-xsltInternals.html#xsltPointerListCreate'/>
+ <reference name='xsltPointerListFree' href='html/libxslt-xsltInternals.html#xsltPointerListFree'/>
+ <reference name='xsltPointerListPtr' href='html/libxslt-xsltInternals.html#xsltPointerListPtr'/>
+ <reference name='xsltPreComputeExtModuleElement' href='html/libxslt-extensions.html#xsltPreComputeExtModuleElement'/>
+ <reference name='xsltPreComputeFunction' href='html/libxslt-extensions.html#xsltPreComputeFunction'/>
+ <reference name='xsltPrincipalStylesheetData' href='html/libxslt-xsltInternals.html#xsltPrincipalStylesheetData'/>
+ <reference name='xsltPrincipalStylesheetDataPtr' href='html/libxslt-xsltInternals.html#xsltPrincipalStylesheetDataPtr'/>
+ <reference name='xsltPrintErrorContext' href='html/libxslt-xsltutils.html#xsltPrintErrorContext'/>
+ <reference name='xsltProcessOneNode' href='html/libxslt-transform.html#xsltProcessOneNode'/>
+ <reference name='xsltProcessingInstruction' href='html/libxslt-transform.html#xsltProcessingInstruction'/>
+ <reference name='xsltProfileStylesheet' href='html/libxslt-transform.html#xsltProfileStylesheet'/>
+ <reference name='xsltQuoteOneUserParam' href='html/libxslt-variables.html#xsltQuoteOneUserParam'/>
+ <reference name='xsltQuoteUserParams' href='html/libxslt-variables.html#xsltQuoteUserParams'/>
+ <reference name='xsltRegisterAllElement' href='html/libxslt-transform.html#xsltRegisterAllElement'/>
+ <reference name='xsltRegisterAllExtras' href='html/libxslt-extra.html#xsltRegisterAllExtras'/>
+ <reference name='xsltRegisterAllFunctions' href='html/libxslt-functions.html#xsltRegisterAllFunctions'/>
+ <reference name='xsltRegisterExtElement' href='html/libxslt-extensions.html#xsltRegisterExtElement'/>
+ <reference name='xsltRegisterExtFunction' href='html/libxslt-extensions.html#xsltRegisterExtFunction'/>
+ <reference name='xsltRegisterExtModule' href='html/libxslt-extensions.html#xsltRegisterExtModule'/>
+ <reference name='xsltRegisterExtModuleElement' href='html/libxslt-extensions.html#xsltRegisterExtModuleElement'/>
+ <reference name='xsltRegisterExtModuleFull' href='html/libxslt-extensions.html#xsltRegisterExtModuleFull'/>
+ <reference name='xsltRegisterExtModuleFunction' href='html/libxslt-extensions.html#xsltRegisterExtModuleFunction'/>
+ <reference name='xsltRegisterExtModuleTopLevel' href='html/libxslt-extensions.html#xsltRegisterExtModuleTopLevel'/>
+ <reference name='xsltRegisterExtPrefix' href='html/libxslt-extensions.html#xsltRegisterExtPrefix'/>
+ <reference name='xsltRegisterExtras' href='html/libxslt-extra.html#xsltRegisterExtras'/>
+ <reference name='xsltRegisterLocalRVT' href='html/libxslt-xsltInternals.html#xsltRegisterLocalRVT'/>
+ <reference name='xsltRegisterPersistRVT' href='html/libxslt-xsltInternals.html#xsltRegisterPersistRVT'/>
+ <reference name='xsltRegisterTestModule' href='html/libxslt-extensions.html#xsltRegisterTestModule'/>
+ <reference name='xsltRegisterTmpRVT' href='html/libxslt-xsltInternals.html#xsltRegisterTmpRVT'/>
+ <reference name='xsltReleaseRVT' href='html/libxslt-xsltInternals.html#xsltReleaseRVT'/>
+ <reference name='xsltResolveStylesheetAttributeSet' href='html/libxslt-attributes.html#xsltResolveStylesheetAttributeSet'/>
+ <reference name='xsltRestoreDocumentNamespaces' href='html/libxslt-xsltInternals.html#xsltRestoreDocumentNamespaces'/>
+ <reference name='xsltRunStylesheet' href='html/libxslt-transform.html#xsltRunStylesheet'/>
+ <reference name='xsltRunStylesheetUser' href='html/libxslt-transform.html#xsltRunStylesheetUser'/>
+ <reference name='xsltRuntimeExtra' href='html/libxslt-xsltInternals.html#xsltRuntimeExtra'/>
+ <reference name='xsltRuntimeExtraPtr' href='html/libxslt-xsltInternals.html#xsltRuntimeExtraPtr'/>
+ <reference name='xsltSaveProfiling' href='html/libxslt-xsltutils.html#xsltSaveProfiling'/>
+ <reference name='xsltSaveResultTo' href='html/libxslt-xsltutils.html#xsltSaveResultTo'/>
+ <reference name='xsltSaveResultToFd' href='html/libxslt-xsltutils.html#xsltSaveResultToFd'/>
+ <reference name='xsltSaveResultToFile' href='html/libxslt-xsltutils.html#xsltSaveResultToFile'/>
+ <reference name='xsltSaveResultToFilename' href='html/libxslt-xsltutils.html#xsltSaveResultToFilename'/>
+ <reference name='xsltSaveResultToString' href='html/libxslt-xsltutils.html#xsltSaveResultToString'/>
+ <reference name='xsltSecurityAllow' href='html/libxslt-security.html#xsltSecurityAllow'/>
+ <reference name='xsltSecurityCheck' href='html/libxslt-security.html#xsltSecurityCheck'/>
+ <reference name='xsltSecurityForbid' href='html/libxslt-security.html#xsltSecurityForbid'/>
+ <reference name='xsltSecurityOption' href='html/libxslt-security.html#xsltSecurityOption'/>
+ <reference name='xsltSecurityPrefs' href='html/libxslt-security.html#xsltSecurityPrefs'/>
+ <reference name='xsltSecurityPrefsPtr' href='html/libxslt-security.html#xsltSecurityPrefsPtr'/>
+ <reference name='xsltSetCtxtParseOptions' href='html/libxslt-xsltutils.html#xsltSetCtxtParseOptions'/>
+ <reference name='xsltSetCtxtSecurityPrefs' href='html/libxslt-security.html#xsltSetCtxtSecurityPrefs'/>
+ <reference name='xsltSetCtxtSortFunc' href='html/libxslt-xsltutils.html#xsltSetCtxtSortFunc'/>
+ <reference name='xsltSetDebuggerCallbacks' href='html/libxslt-xsltutils.html#xsltSetDebuggerCallbacks'/>
+ <reference name='xsltSetDebuggerStatus' href='html/libxslt-xsltutils.html#xsltSetDebuggerStatus'/>
+ <reference name='xsltSetDefaultSecurityPrefs' href='html/libxslt-security.html#xsltSetDefaultSecurityPrefs'/>
+ <reference name='xsltSetGenericDebugFunc' href='html/libxslt-xsltutils.html#xsltSetGenericDebugFunc'/>
+ <reference name='xsltSetGenericErrorFunc' href='html/libxslt-xsltutils.html#xsltSetGenericErrorFunc'/>
+ <reference name='xsltSetLoaderFunc' href='html/libxslt-documents.html#xsltSetLoaderFunc'/>
+ <reference name='xsltSetSecurityPrefs' href='html/libxslt-security.html#xsltSetSecurityPrefs'/>
+ <reference name='xsltSetSortFunc' href='html/libxslt-xsltutils.html#xsltSetSortFunc'/>
+ <reference name='xsltSetTransformErrorFunc' href='html/libxslt-xsltutils.html#xsltSetTransformErrorFunc'/>
+ <reference name='xsltSetXIncludeDefault' href='html/libxslt-transform.html#xsltSetXIncludeDefault'/>
+ <reference name='xsltShutdownCtxtExts' href='html/libxslt-extensions.html#xsltShutdownCtxtExts'/>
+ <reference name='xsltShutdownExts' href='html/libxslt-extensions.html#xsltShutdownExts'/>
+ <reference name='xsltSort' href='html/libxslt-transform.html#xsltSort'/>
+ <reference name='xsltSortFunc' href='html/libxslt-xsltInternals.html#xsltSortFunc'/>
+ <reference name='xsltSplitQName' href='html/libxslt-xsltutils.html#xsltSplitQName'/>
+ <reference name='xsltStackElem' href='html/libxslt-xsltInternals.html#xsltStackElem'/>
+ <reference name='xsltStackElemPtr' href='html/libxslt-xsltInternals.html#xsltStackElemPtr'/>
+ <reference name='xsltStrxfrm' href='html/libxslt-xsltlocale.html#xsltStrxfrm'/>
+ <reference name='xsltStyleBasicEmptyItem' href='html/libxslt-xsltInternals.html#xsltStyleBasicEmptyItem'/>
+ <reference name='xsltStyleBasicEmptyItemPtr' href='html/libxslt-xsltInternals.html#xsltStyleBasicEmptyItemPtr'/>
+ <reference name='xsltStyleBasicExpressionItem' href='html/libxslt-xsltInternals.html#xsltStyleBasicExpressionItem'/>
+ <reference name='xsltStyleBasicExpressionItemPtr' href='html/libxslt-xsltInternals.html#xsltStyleBasicExpressionItemPtr'/>
+ <reference name='xsltStyleBasicItemVariable' href='html/libxslt-xsltInternals.html#xsltStyleBasicItemVariable'/>
+ <reference name='xsltStyleBasicItemVariablePtr' href='html/libxslt-xsltInternals.html#xsltStyleBasicItemVariablePtr'/>
+ <reference name='xsltStyleExtInitFunction' href='html/libxslt-extensions.html#xsltStyleExtInitFunction'/>
+ <reference name='xsltStyleExtShutdownFunction' href='html/libxslt-extensions.html#xsltStyleExtShutdownFunction'/>
+ <reference name='xsltStyleGetExtData' href='html/libxslt-extensions.html#xsltStyleGetExtData'/>
+ <reference name='xsltStyleItemApplyImports' href='html/libxslt-xsltInternals.html#xsltStyleItemApplyImports'/>
+ <reference name='xsltStyleItemApplyImportsPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemApplyImportsPtr'/>
+ <reference name='xsltStyleItemApplyTemplates' href='html/libxslt-xsltInternals.html#xsltStyleItemApplyTemplates'/>
+ <reference name='xsltStyleItemApplyTemplatesPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemApplyTemplatesPtr'/>
+ <reference name='xsltStyleItemAttribute' href='html/libxslt-xsltInternals.html#xsltStyleItemAttribute'/>
+ <reference name='xsltStyleItemAttributePtr' href='html/libxslt-xsltInternals.html#xsltStyleItemAttributePtr'/>
+ <reference name='xsltStyleItemCallTemplate' href='html/libxslt-xsltInternals.html#xsltStyleItemCallTemplate'/>
+ <reference name='xsltStyleItemCallTemplatePtr' href='html/libxslt-xsltInternals.html#xsltStyleItemCallTemplatePtr'/>
+ <reference name='xsltStyleItemChoose' href='html/libxslt-xsltInternals.html#xsltStyleItemChoose'/>
+ <reference name='xsltStyleItemChoosePtr' href='html/libxslt-xsltInternals.html#xsltStyleItemChoosePtr'/>
+ <reference name='xsltStyleItemComment' href='html/libxslt-xsltInternals.html#xsltStyleItemComment'/>
+ <reference name='xsltStyleItemCommentPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemCommentPtr'/>
+ <reference name='xsltStyleItemCopy' href='html/libxslt-xsltInternals.html#xsltStyleItemCopy'/>
+ <reference name='xsltStyleItemCopyOf' href='html/libxslt-xsltInternals.html#xsltStyleItemCopyOf'/>
+ <reference name='xsltStyleItemCopyOfPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemCopyOfPtr'/>
+ <reference name='xsltStyleItemCopyPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemCopyPtr'/>
+ <reference name='xsltStyleItemDocument' href='html/libxslt-xsltInternals.html#xsltStyleItemDocument'/>
+ <reference name='xsltStyleItemDocumentPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemDocumentPtr'/>
+ <reference name='xsltStyleItemElement' href='html/libxslt-xsltInternals.html#xsltStyleItemElement'/>
+ <reference name='xsltStyleItemElementPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemElementPtr'/>
+ <reference name='xsltStyleItemExtElement' href='html/libxslt-xsltInternals.html#xsltStyleItemExtElement'/>
+ <reference name='xsltStyleItemExtElementPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemExtElementPtr'/>
+ <reference name='xsltStyleItemFallback' href='html/libxslt-xsltInternals.html#xsltStyleItemFallback'/>
+ <reference name='xsltStyleItemFallbackPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemFallbackPtr'/>
+ <reference name='xsltStyleItemForEach' href='html/libxslt-xsltInternals.html#xsltStyleItemForEach'/>
+ <reference name='xsltStyleItemForEachPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemForEachPtr'/>
+ <reference name='xsltStyleItemIf' href='html/libxslt-xsltInternals.html#xsltStyleItemIf'/>
+ <reference name='xsltStyleItemIfPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemIfPtr'/>
+ <reference name='xsltStyleItemInclude' href='html/libxslt-xsltInternals.html#xsltStyleItemInclude'/>
+ <reference name='xsltStyleItemIncludePtr' href='html/libxslt-xsltInternals.html#xsltStyleItemIncludePtr'/>
+ <reference name='xsltStyleItemLRElementInfo' href='html/libxslt-xsltInternals.html#xsltStyleItemLRElementInfo'/>
+ <reference name='xsltStyleItemLRElementInfoPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemLRElementInfoPtr'/>
+ <reference name='xsltStyleItemMessage' href='html/libxslt-xsltInternals.html#xsltStyleItemMessage'/>
+ <reference name='xsltStyleItemMessagePtr' href='html/libxslt-xsltInternals.html#xsltStyleItemMessagePtr'/>
+ <reference name='xsltStyleItemNumber' href='html/libxslt-xsltInternals.html#xsltStyleItemNumber'/>
+ <reference name='xsltStyleItemNumberPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemNumberPtr'/>
+ <reference name='xsltStyleItemOtherwise' href='html/libxslt-xsltInternals.html#xsltStyleItemOtherwise'/>
+ <reference name='xsltStyleItemOtherwisePtr' href='html/libxslt-xsltInternals.html#xsltStyleItemOtherwisePtr'/>
+ <reference name='xsltStyleItemPI' href='html/libxslt-xsltInternals.html#xsltStyleItemPI'/>
+ <reference name='xsltStyleItemPIPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemPIPtr'/>
+ <reference name='xsltStyleItemParam' href='html/libxslt-xsltInternals.html#xsltStyleItemParam'/>
+ <reference name='xsltStyleItemParamPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemParamPtr'/>
+ <reference name='xsltStyleItemSort' href='html/libxslt-xsltInternals.html#xsltStyleItemSort'/>
+ <reference name='xsltStyleItemSortPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemSortPtr'/>
+ <reference name='xsltStyleItemText' href='html/libxslt-xsltInternals.html#xsltStyleItemText'/>
+ <reference name='xsltStyleItemTextPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemTextPtr'/>
+ <reference name='xsltStyleItemUknown' href='html/libxslt-xsltInternals.html#xsltStyleItemUknown'/>
+ <reference name='xsltStyleItemUknownPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemUknownPtr'/>
+ <reference name='xsltStyleItemValueOf' href='html/libxslt-xsltInternals.html#xsltStyleItemValueOf'/>
+ <reference name='xsltStyleItemValueOfPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemValueOfPtr'/>
+ <reference name='xsltStyleItemVariable' href='html/libxslt-xsltInternals.html#xsltStyleItemVariable'/>
+ <reference name='xsltStyleItemVariablePtr' href='html/libxslt-xsltInternals.html#xsltStyleItemVariablePtr'/>
+ <reference name='xsltStyleItemWhen' href='html/libxslt-xsltInternals.html#xsltStyleItemWhen'/>
+ <reference name='xsltStyleItemWhenPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemWhenPtr'/>
+ <reference name='xsltStyleItemWithParam' href='html/libxslt-xsltInternals.html#xsltStyleItemWithParam'/>
+ <reference name='xsltStyleItemWithParamPtr' href='html/libxslt-xsltInternals.html#xsltStyleItemWithParamPtr'/>
+ <reference name='xsltStylePreComp' href='html/libxslt-xsltInternals.html#xsltStylePreComp'/>
+ <reference name='xsltStylePreCompPtr' href='html/libxslt-xsltInternals.html#xsltStylePreCompPtr'/>
+ <reference name='xsltStylePreCompute' href='html/libxslt-preproc.html#xsltStylePreCompute'/>
+ <reference name='xsltStyleStylesheetLevelGetExtData' href='html/libxslt-extensions.html#xsltStyleStylesheetLevelGetExtData'/>
+ <reference name='xsltStyleType' href='html/libxslt-xsltInternals.html#xsltStyleType'/>
+ <reference name='xsltStylesheet' href='html/libxslt-xsltInternals.html#xsltStylesheet'/>
+ <reference name='xsltStylesheetPtr' href='html/libxslt-xsltInternals.html#xsltStylesheetPtr'/>
+ <reference name='xsltSystemPropertyFunction' href='html/libxslt-functions.html#xsltSystemPropertyFunction'/>
+ <reference name='xsltTemplate' href='html/libxslt-xsltInternals.html#xsltTemplate'/>
+ <reference name='xsltTemplateProcess' href='html/libxslt-templates.html#xsltTemplateProcess'/>
+ <reference name='xsltTemplatePtr' href='html/libxslt-xsltInternals.html#xsltTemplatePtr'/>
+ <reference name='xsltTestCompMatchList' href='html/libxslt-pattern.html#xsltTestCompMatchList'/>
+ <reference name='xsltText' href='html/libxslt-transform.html#xsltText'/>
+ <reference name='xsltTimestamp' href='html/libxslt-xsltutils.html#xsltTimestamp'/>
+ <reference name='xsltTopLevelFunction' href='html/libxslt-extensions.html#xsltTopLevelFunction'/>
+ <reference name='xsltTransformCache' href='html/libxslt-xsltInternals.html#xsltTransformCache'/>
+ <reference name='xsltTransformCachePtr' href='html/libxslt-xsltInternals.html#xsltTransformCachePtr'/>
+ <reference name='xsltTransformContext' href='html/libxslt-xsltInternals.html#xsltTransformContext'/>
+ <reference name='xsltTransformContextPtr' href='html/libxslt-xsltInternals.html#xsltTransformContextPtr'/>
+ <reference name='xsltTransformError' href='html/libxslt-xsltutils.html#xsltTransformError'/>
+ <reference name='xsltTransformFunction' href='html/libxslt-xsltInternals.html#xsltTransformFunction'/>
+ <reference name='xsltTransformState' href='html/libxslt-xsltInternals.html#xsltTransformState'/>
+ <reference name='xsltUninit' href='html/libxslt-xsltInternals.html#xsltUninit'/>
+ <reference name='xsltUnparsedEntityURIFunction' href='html/libxslt-functions.html#xsltUnparsedEntityURIFunction'/>
+ <reference name='xsltUnregisterExtModule' href='html/libxslt-extensions.html#xsltUnregisterExtModule'/>
+ <reference name='xsltUnregisterExtModuleElement' href='html/libxslt-extensions.html#xsltUnregisterExtModuleElement'/>
+ <reference name='xsltUnregisterExtModuleFunction' href='html/libxslt-extensions.html#xsltUnregisterExtModuleFunction'/>
+ <reference name='xsltUnregisterExtModuleTopLevel' href='html/libxslt-extensions.html#xsltUnregisterExtModuleTopLevel'/>
+ <reference name='xsltValueOf' href='html/libxslt-transform.html#xsltValueOf'/>
+ <reference name='xsltVarInfo' href='html/libxslt-xsltInternals.html#xsltVarInfo'/>
+ <reference name='xsltVarInfoPtr' href='html/libxslt-xsltInternals.html#xsltVarInfoPtr'/>
+ <reference name='xsltVariableLookup' href='html/libxslt-variables.html#xsltVariableLookup'/>
+ <reference name='xsltXPathCompile' href='html/libxslt-xsltutils.html#xsltXPathCompile'/>
+ <reference name='xsltXPathCompileFlags' href='html/libxslt-xsltutils.html#xsltXPathCompileFlags'/>
+ <reference name='xsltXPathFunctionLookup' href='html/libxslt-functions.html#xsltXPathFunctionLookup'/>
+ <reference name='xsltXPathGetTransformContext' href='html/libxslt-extensions.html#xsltXPathGetTransformContext'/>
+ <reference name='xsltXPathVariableLookup' href='html/libxslt-variables.html#xsltXPathVariableLookup'/>
+ <reference name='xsltXSLTAttrMarker' href='html/libxslt-xsltInternals.html#xsltXSLTAttrMarker'/>
+ </references>
+ <alpha>
+ <letter name='C'>
+ <ref name='CHECK_STOPPED'/>
+ <ref name='CHECK_STOPPED0'/>
+ <ref name='CHECK_STOPPEDE'/>
+ </letter>
+ <letter name='I'>
+ <ref name='IS_XSLT_ATTR_FAST'/>
+ <ref name='IS_XSLT_ELEM'/>
+ <ref name='IS_XSLT_ELEM_FAST'/>
+ <ref name='IS_XSLT_NAME'/>
+ <ref name='IS_XSLT_REAL_NODE'/>
+ </letter>
+ <letter name='L'>
+ <ref name='LIBXSLT_PUBLIC'/>
+ </letter>
+ <letter name='N'>
+ <ref name='NODE_IS_KEYED'/>
+ </letter>
+ <letter name='U'>
+ <ref name='UNDEFINED_DEFAULT_NS'/>
+ </letter>
+ <letter name='X'>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='XSLTCALL'/>
+ <ref name='XSLTPUBFUN'/>
+ <ref name='XSLTPUBVAR'/>
+ <ref name='XSLT_CCTXT'/>
+ <ref name='XSLT_DEBUG_CONT'/>
+ <ref name='XSLT_DEBUG_INIT'/>
+ <ref name='XSLT_DEBUG_NEXT'/>
+ <ref name='XSLT_DEBUG_NONE'/>
+ <ref name='XSLT_DEBUG_QUIT'/>
+ <ref name='XSLT_DEBUG_RUN'/>
+ <ref name='XSLT_DEBUG_RUN_RESTART'/>
+ <ref name='XSLT_DEBUG_STEP'/>
+ <ref name='XSLT_DEBUG_STEPOUT'/>
+ <ref name='XSLT_DEBUG_STOP'/>
+ <ref name='XSLT_DEFAULT_URL'/>
+ <ref name='XSLT_DEFAULT_VENDOR'/>
+ <ref name='XSLT_DEFAULT_VERSION'/>
+ <ref name='XSLT_ERROR_SEVERITY_ERROR'/>
+ <ref name='XSLT_ERROR_SEVERITY_WARNING'/>
+ <ref name='XSLT_FAST_IF'/>
+ <ref name='XSLT_FUNC_APPLYIMPORTS'/>
+ <ref name='XSLT_FUNC_APPLYTEMPLATES'/>
+ <ref name='XSLT_FUNC_ATTRIBUTE'/>
+ <ref name='XSLT_FUNC_ATTRSET'/>
+ <ref name='XSLT_FUNC_CALLTEMPLATE'/>
+ <ref name='XSLT_FUNC_CHOOSE'/>
+ <ref name='XSLT_FUNC_COMMENT'/>
+ <ref name='XSLT_FUNC_COPY'/>
+ <ref name='XSLT_FUNC_COPYOF'/>
+ <ref name='XSLT_FUNC_DOCUMENT'/>
+ <ref name='XSLT_FUNC_ELEMENT'/>
+ <ref name='XSLT_FUNC_EXTENSION'/>
+ <ref name='XSLT_FUNC_FALLBACK'/>
+ <ref name='XSLT_FUNC_FOREACH'/>
+ <ref name='XSLT_FUNC_IF'/>
+ <ref name='XSLT_FUNC_INCLUDE'/>
+ <ref name='XSLT_FUNC_LITERAL_RESULT_ELEMENT'/>
+ <ref name='XSLT_FUNC_MESSAGE'/>
+ <ref name='XSLT_FUNC_NUMBER'/>
+ <ref name='XSLT_FUNC_OTHERWISE'/>
+ <ref name='XSLT_FUNC_PARAM'/>
+ <ref name='XSLT_FUNC_PI'/>
+ <ref name='XSLT_FUNC_SORT'/>
+ <ref name='XSLT_FUNC_TEXT'/>
+ <ref name='XSLT_FUNC_UNKOWN_FORWARDS_COMPAT'/>
+ <ref name='XSLT_FUNC_VALUEOF'/>
+ <ref name='XSLT_FUNC_VARIABLE'/>
+ <ref name='XSLT_FUNC_WHEN'/>
+ <ref name='XSLT_FUNC_WITHPARAM'/>
+ <ref name='XSLT_GET_IMPORT_INT'/>
+ <ref name='XSLT_GET_IMPORT_PTR'/>
+ <ref name='XSLT_GET_INTERNAL_NSMAP'/>
+ <ref name='XSLT_HAS_INTERNAL_NSMAP'/>
+ <ref name='XSLT_IS_RES_TREE_FRAG'/>
+ <ref name='XSLT_IS_TEXT_NODE'/>
+ <ref name='XSLT_ITEM_COMMON_FIELDS'/>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
+ <ref name='XSLT_ITEM_NSINSCOPE_FIELDS'/>
+ <ref name='XSLT_LIBXSLT_NAMESPACE'/>
+ <ref name='XSLT_LOAD_DOCUMENT'/>
+ <ref name='XSLT_LOAD_START'/>
+ <ref name='XSLT_LOAD_STYLESHEET'/>
+ <ref name='XSLT_LOCALE_NONE'/>
+ <ref name='XSLT_MARK_RES_TREE_FRAG'/>
+ <ref name='XSLT_MAX_SORT'/>
+ <ref name='XSLT_NAMESPACE'/>
+ <ref name='XSLT_NORM_SAXON_NAMESPACE'/>
+ <ref name='XSLT_OUTPUT_HTML'/>
+ <ref name='XSLT_OUTPUT_TEXT'/>
+ <ref name='XSLT_OUTPUT_XML'/>
+ <ref name='XSLT_PARSE_OPTIONS'/>
+ <ref name='XSLT_PAT_NO_PRIORITY'/>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ <ref name='XSLT_REFACTORED_VARS'/>
+ <ref name='XSLT_REFACTORED_XPATHCOMP'/>
+ <ref name='XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <ref name='XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ <ref name='XSLT_RUNTIME_EXTRA'/>
+ <ref name='XSLT_RUNTIME_EXTRA_FREE'/>
+ <ref name='XSLT_RUNTIME_EXTRA_LST'/>
+ <ref name='XSLT_SAXON_NAMESPACE'/>
+ <ref name='XSLT_SECPREF_CREATE_DIRECTORY'/>
+ <ref name='XSLT_SECPREF_READ_FILE'/>
+ <ref name='XSLT_SECPREF_READ_NETWORK'/>
+ <ref name='XSLT_SECPREF_WRITE_FILE'/>
+ <ref name='XSLT_SECPREF_WRITE_NETWORK'/>
+ <ref name='XSLT_STATE_ERROR'/>
+ <ref name='XSLT_STATE_OK'/>
+ <ref name='XSLT_STATE_STOPPED'/>
+ <ref name='XSLT_STRANGE'/>
+ <ref name='XSLT_TIMESTAMP_TICS_PER_SEC'/>
+ <ref name='XSLT_TODO'/>
+ <ref name='XSLT_TRACE'/>
+ <ref name='XSLT_TRACE_ALL'/>
+ <ref name='XSLT_TRACE_APPLY_TEMPLATE'/>
+ <ref name='XSLT_TRACE_APPLY_TEMPLATES'/>
+ <ref name='XSLT_TRACE_CALL_TEMPLATE'/>
+ <ref name='XSLT_TRACE_CHOOSE'/>
+ <ref name='XSLT_TRACE_COMMENT'/>
+ <ref name='XSLT_TRACE_COPY'/>
+ <ref name='XSLT_TRACE_COPY_OF'/>
+ <ref name='XSLT_TRACE_COPY_TEXT'/>
+ <ref name='XSLT_TRACE_FOR_EACH'/>
+ <ref name='XSLT_TRACE_IF'/>
+ <ref name='XSLT_TRACE_KEYS'/>
+ <ref name='XSLT_TRACE_NONE'/>
+ <ref name='XSLT_TRACE_PI'/>
+ <ref name='XSLT_TRACE_PROCESS_NODE'/>
+ <ref name='XSLT_TRACE_STRIP_SPACES'/>
+ <ref name='XSLT_TRACE_TEMPLATES'/>
+ <ref name='XSLT_TRACE_VALUE_OF'/>
+ <ref name='XSLT_TRACE_VARIABLES'/>
+ <ref name='XSLT_XALAN_NAMESPACE'/>
+ <ref name='XSLT_XT_NAMESPACE'/>
+ </letter>
+ <letter name='_'>
+ <ref name='_REENTRANT'/>
+ <ref name='_xsltCompMatch'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltDecimalFormat'/>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltEffectiveNs'/>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='_xsltKeyDef'/>
+ <ref name='_xsltKeyTable'/>
+ <ref name='_xsltNsAlias'/>
+ <ref name='_xsltNsList'/>
+ <ref name='_xsltNsListContainer'/>
+ <ref name='_xsltNsMap'/>
+ <ref name='_xsltNumberData'/>
+ <ref name='_xsltPointerList'/>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='_xsltRuntimeExtra'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltStyleBasicEmptyItem'/>
+ <ref name='_xsltStyleBasicExpressionItem'/>
+ <ref name='_xsltStyleBasicItemVariable'/>
+ <ref name='_xsltStyleItemApplyTemplates'/>
+ <ref name='_xsltStyleItemAttribute'/>
+ <ref name='_xsltStyleItemCallTemplate'/>
+ <ref name='_xsltStyleItemCopy'/>
+ <ref name='_xsltStyleItemDocument'/>
+ <ref name='_xsltStyleItemElement'/>
+ <ref name='_xsltStyleItemExtElement'/>
+ <ref name='_xsltStyleItemIf'/>
+ <ref name='_xsltStyleItemInclude'/>
+ <ref name='_xsltStyleItemLRElementInfo'/>
+ <ref name='_xsltStyleItemMessage'/>
+ <ref name='_xsltStyleItemNumber'/>
+ <ref name='_xsltStyleItemOtherwise'/>
+ <ref name='_xsltStyleItemPI'/>
+ <ref name='_xsltStyleItemParam'/>
+ <ref name='_xsltStyleItemSort'/>
+ <ref name='_xsltStyleItemText'/>
+ <ref name='_xsltStyleItemUknown'/>
+ <ref name='_xsltStyleItemValueOf'/>
+ <ref name='_xsltStyleItemWhen'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='_xsltTransformCache'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='_xsltVarInfo'/>
+ </letter>
+ <letter name='x'>
+ <ref name='xslAddCall'/>
+ <ref name='xslDebugStatus'/>
+ <ref name='xslDropCall'/>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltAddCallCallback'/>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltAddStackElemList'/>
+ <ref name='xsltAddTemplate'/>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltApplyImports'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltApplyStripSpaces'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltApplyTemplates'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltAttribute'/>
+ <ref name='xsltCalibrateAdjust'/>
+ <ref name='xsltCallTemplate'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltChoose'/>
+ <ref name='xsltCleanupGlobals'/>
+ <ref name='xsltCleanupTemplates'/>
+ <ref name='xsltComment'/>
+ <ref name='xsltCompMatch'/>
+ <ref name='xsltCompMatchPtr'/>
+ <ref name='xsltCompileAttr'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltCompilerCtxt'/>
+ <ref name='xsltCompilerCtxtPtr'/>
+ <ref name='xsltCompilerNodeInfo'/>
+ <ref name='xsltCompilerNodeInfoPtr'/>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltConstNamespaceNameXSLT'/>
+ <ref name='xsltCopy'/>
+ <ref name='xsltCopyNamespace'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltCopyOf'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltDebug'/>
+ <ref name='xsltDebugDumpExtensions'/>
+ <ref name='xsltDebugGetDefaultTrace'/>
+ <ref name='xsltDebugSetDefaultTrace'/>
+ <ref name='xsltDebugStatusCodes'/>
+ <ref name='xsltDebugTraceCodes'/>
+ <ref name='xsltDecimalFormat'/>
+ <ref name='xsltDecimalFormatGetByName'/>
+ <ref name='xsltDecimalFormatPtr'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltDocDefaultLoader'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltDocument'/>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltDocumentElem'/>
+ <ref name='xsltDocumentFunction'/>
+ <ref name='xsltDocumentPtr'/>
+ <ref name='xsltDocumentSortFunction'/>
+ <ref name='xsltDropCallCallback'/>
+ <ref name='xsltEffectiveNs'/>
+ <ref name='xsltEffectiveNsPtr'/>
+ <ref name='xsltElemPreComp'/>
+ <ref name='xsltElemPreCompDeallocator'/>
+ <ref name='xsltElemPreCompPtr'/>
+ <ref name='xsltElement'/>
+ <ref name='xsltElementAvailableFunction'/>
+ <ref name='xsltEngineVersion'/>
+ <ref name='xsltErrorSeverityType'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltExtInitFunction'/>
+ <ref name='xsltExtMarker'/>
+ <ref name='xsltExtModuleElementLookup'/>
+ <ref name='xsltExtModuleElementPreComputeLookup'/>
+ <ref name='xsltExtModuleFunctionLookup'/>
+ <ref name='xsltExtModuleTopLevelLookup'/>
+ <ref name='xsltExtShutdownFunction'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltForEach'/>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltFormatNumberFunction'/>
+ <ref name='xsltFormatNumberInfo'/>
+ <ref name='xsltFormatNumberInfoPtr'/>
+ <ref name='xsltFreeAVTList'/>
+ <ref name='xsltFreeAttributeSetsHashes'/>
+ <ref name='xsltFreeCompMatchList'/>
+ <ref name='xsltFreeCtxtExts'/>
+ <ref name='xsltFreeDocumentKeys'/>
+ <ref name='xsltFreeDocuments'/>
+ <ref name='xsltFreeExts'/>
+ <ref name='xsltFreeGlobalVariables'/>
+ <ref name='xsltFreeKeys'/>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltFreeLocales'/>
+ <ref name='xsltFreeNamespaceAliasHashes'/>
+ <ref name='xsltFreeRVTs'/>
+ <ref name='xsltFreeSecurityPrefs'/>
+ <ref name='xsltFreeStackElemList'/>
+ <ref name='xsltFreeStyleDocuments'/>
+ <ref name='xsltFreeStylePreComps'/>
+ <ref name='xsltFreeStylesheet'/>
+ <ref name='xsltFreeTemplateHashes'/>
+ <ref name='xsltFreeTransformContext'/>
+ <ref name='xsltFunctionAvailableFunction'/>
+ <ref name='xsltFunctionNodeSet'/>
+ <ref name='xsltGenerateIdFunction'/>
+ <ref name='xsltGenericDebug'/>
+ <ref name='xsltGenericDebugContext'/>
+ <ref name='xsltGenericError'/>
+ <ref name='xsltGenericErrorContext'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetDebuggerStatus'/>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltGetExtInfo'/>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltGetXIncludeDefault'/>
+ <ref name='xsltHandleDebuggerCallback'/>
+ <ref name='xsltIf'/>
+ <ref name='xsltInit'/>
+ <ref name='xsltInitAllDocKeys'/>
+ <ref name='xsltInitCtxtExts'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltInitGlobals'/>
+ <ref name='xsltIsBlank'/>
+ <ref name='xsltKeyDef'/>
+ <ref name='xsltKeyDefPtr'/>
+ <ref name='xsltKeyFunction'/>
+ <ref name='xsltKeyTable'/>
+ <ref name='xsltKeyTablePtr'/>
+ <ref name='xsltLibxmlVersion'/>
+ <ref name='xsltLibxsltVersion'/>
+ <ref name='xsltLoadDocument'/>
+ <ref name='xsltLoadStyleDocument'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltLoadType'/>
+ <ref name='xsltLocalVariablePop'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltLocale'/>
+ <ref name='xsltLocaleChar'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltMatchPattern'/>
+ <ref name='xsltMaxDepth'/>
+ <ref name='xsltMaxVars'/>
+ <ref name='xsltMessage'/>
+ <ref name='xsltNamespaceAlias'/>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewElemPreComp'/>
+ <ref name='xsltNewLocale'/>
+ <ref name='xsltNewSecurityPrefs'/>
+ <ref name='xsltNewStyleDocument'/>
+ <ref name='xsltNewStylesheet'/>
+ <ref name='xsltNewTransformContext'/>
+ <ref name='xsltNextImport'/>
+ <ref name='xsltNormalizeCompSteps'/>
+ <ref name='xsltNsAlias'/>
+ <ref name='xsltNsAliasPtr'/>
+ <ref name='xsltNsList'/>
+ <ref name='xsltNsListContainer'/>
+ <ref name='xsltNsListContainerPtr'/>
+ <ref name='xsltNsListPtr'/>
+ <ref name='xsltNsMap'/>
+ <ref name='xsltNsMapPtr'/>
+ <ref name='xsltNumber'/>
+ <ref name='xsltNumberData'/>
+ <ref name='xsltNumberDataPtr'/>
+ <ref name='xsltNumberFormat'/>
+ <ref name='xsltOutputType'/>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltParseGlobalParam'/>
+ <ref name='xsltParseGlobalVariable'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ <ref name='xsltParseStylesheetAttributeSet'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetFile'/>
+ <ref name='xsltParseStylesheetImport'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetInclude'/>
+ <ref name='xsltParseStylesheetOutput'/>
+ <ref name='xsltParseStylesheetParam'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltParseStylesheetVariable'/>
+ <ref name='xsltParseTemplateContent'/>
+ <ref name='xsltPointerList'/>
+ <ref name='xsltPointerListAddSize'/>
+ <ref name='xsltPointerListClear'/>
+ <ref name='xsltPointerListCreate'/>
+ <ref name='xsltPointerListFree'/>
+ <ref name='xsltPointerListPtr'/>
+ <ref name='xsltPreComputeExtModuleElement'/>
+ <ref name='xsltPreComputeFunction'/>
+ <ref name='xsltPrincipalStylesheetData'/>
+ <ref name='xsltPrincipalStylesheetDataPtr'/>
+ <ref name='xsltPrintErrorContext'/>
+ <ref name='xsltProcessOneNode'/>
+ <ref name='xsltProcessingInstruction'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRegisterAllElement'/>
+ <ref name='xsltRegisterAllExtras'/>
+ <ref name='xsltRegisterAllFunctions'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleElement'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ <ref name='xsltRegisterExtModuleFunction'/>
+ <ref name='xsltRegisterExtModuleTopLevel'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltRegisterExtras'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTestModule'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltReleaseRVT'/>
+ <ref name='xsltResolveStylesheetAttributeSet'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltRuntimeExtra'/>
+ <ref name='xsltRuntimeExtraPtr'/>
+ <ref name='xsltSaveProfiling'/>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltSaveResultToString'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityCheck'/>
+ <ref name='xsltSecurityForbid'/>
+ <ref name='xsltSecurityOption'/>
+ <ref name='xsltSecurityPrefs'/>
+ <ref name='xsltSecurityPrefsPtr'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ <ref name='xsltSetDebuggerStatus'/>
+ <ref name='xsltSetDefaultSecurityPrefs'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetLoaderFunc'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ <ref name='xsltSetSortFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ <ref name='xsltShutdownCtxtExts'/>
+ <ref name='xsltShutdownExts'/>
+ <ref name='xsltSort'/>
+ <ref name='xsltSortFunc'/>
+ <ref name='xsltSplitQName'/>
+ <ref name='xsltStackElem'/>
+ <ref name='xsltStackElemPtr'/>
+ <ref name='xsltStrxfrm'/>
+ <ref name='xsltStyleBasicEmptyItem'/>
+ <ref name='xsltStyleBasicEmptyItemPtr'/>
+ <ref name='xsltStyleBasicExpressionItem'/>
+ <ref name='xsltStyleBasicExpressionItemPtr'/>
+ <ref name='xsltStyleBasicItemVariable'/>
+ <ref name='xsltStyleBasicItemVariablePtr'/>
+ <ref name='xsltStyleExtInitFunction'/>
+ <ref name='xsltStyleExtShutdownFunction'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStyleItemApplyImports'/>
+ <ref name='xsltStyleItemApplyImportsPtr'/>
+ <ref name='xsltStyleItemApplyTemplates'/>
+ <ref name='xsltStyleItemApplyTemplatesPtr'/>
+ <ref name='xsltStyleItemAttribute'/>
+ <ref name='xsltStyleItemAttributePtr'/>
+ <ref name='xsltStyleItemCallTemplate'/>
+ <ref name='xsltStyleItemCallTemplatePtr'/>
+ <ref name='xsltStyleItemChoose'/>
+ <ref name='xsltStyleItemChoosePtr'/>
+ <ref name='xsltStyleItemComment'/>
+ <ref name='xsltStyleItemCommentPtr'/>
+ <ref name='xsltStyleItemCopy'/>
+ <ref name='xsltStyleItemCopyOf'/>
+ <ref name='xsltStyleItemCopyOfPtr'/>
+ <ref name='xsltStyleItemCopyPtr'/>
+ <ref name='xsltStyleItemDocument'/>
+ <ref name='xsltStyleItemDocumentPtr'/>
+ <ref name='xsltStyleItemElement'/>
+ <ref name='xsltStyleItemElementPtr'/>
+ <ref name='xsltStyleItemExtElement'/>
+ <ref name='xsltStyleItemExtElementPtr'/>
+ <ref name='xsltStyleItemFallback'/>
+ <ref name='xsltStyleItemFallbackPtr'/>
+ <ref name='xsltStyleItemForEach'/>
+ <ref name='xsltStyleItemForEachPtr'/>
+ <ref name='xsltStyleItemIf'/>
+ <ref name='xsltStyleItemIfPtr'/>
+ <ref name='xsltStyleItemInclude'/>
+ <ref name='xsltStyleItemIncludePtr'/>
+ <ref name='xsltStyleItemLRElementInfo'/>
+ <ref name='xsltStyleItemLRElementInfoPtr'/>
+ <ref name='xsltStyleItemMessage'/>
+ <ref name='xsltStyleItemMessagePtr'/>
+ <ref name='xsltStyleItemNumber'/>
+ <ref name='xsltStyleItemNumberPtr'/>
+ <ref name='xsltStyleItemOtherwise'/>
+ <ref name='xsltStyleItemOtherwisePtr'/>
+ <ref name='xsltStyleItemPI'/>
+ <ref name='xsltStyleItemPIPtr'/>
+ <ref name='xsltStyleItemParam'/>
+ <ref name='xsltStyleItemParamPtr'/>
+ <ref name='xsltStyleItemSort'/>
+ <ref name='xsltStyleItemSortPtr'/>
+ <ref name='xsltStyleItemText'/>
+ <ref name='xsltStyleItemTextPtr'/>
+ <ref name='xsltStyleItemUknown'/>
+ <ref name='xsltStyleItemUknownPtr'/>
+ <ref name='xsltStyleItemValueOf'/>
+ <ref name='xsltStyleItemValueOfPtr'/>
+ <ref name='xsltStyleItemVariable'/>
+ <ref name='xsltStyleItemVariablePtr'/>
+ <ref name='xsltStyleItemWhen'/>
+ <ref name='xsltStyleItemWhenPtr'/>
+ <ref name='xsltStyleItemWithParam'/>
+ <ref name='xsltStyleItemWithParamPtr'/>
+ <ref name='xsltStylePreComp'/>
+ <ref name='xsltStylePreCompPtr'/>
+ <ref name='xsltStylePreCompute'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ <ref name='xsltStyleType'/>
+ <ref name='xsltStylesheet'/>
+ <ref name='xsltStylesheetPtr'/>
+ <ref name='xsltSystemPropertyFunction'/>
+ <ref name='xsltTemplate'/>
+ <ref name='xsltTemplateProcess'/>
+ <ref name='xsltTemplatePtr'/>
+ <ref name='xsltTestCompMatchList'/>
+ <ref name='xsltText'/>
+ <ref name='xsltTimestamp'/>
+ <ref name='xsltTopLevelFunction'/>
+ <ref name='xsltTransformCache'/>
+ <ref name='xsltTransformCachePtr'/>
+ <ref name='xsltTransformContext'/>
+ <ref name='xsltTransformContextPtr'/>
+ <ref name='xsltTransformError'/>
+ <ref name='xsltTransformFunction'/>
+ <ref name='xsltTransformState'/>
+ <ref name='xsltUninit'/>
+ <ref name='xsltUnparsedEntityURIFunction'/>
+ <ref name='xsltUnregisterExtModule'/>
+ <ref name='xsltUnregisterExtModuleElement'/>
+ <ref name='xsltUnregisterExtModuleFunction'/>
+ <ref name='xsltUnregisterExtModuleTopLevel'/>
+ <ref name='xsltValueOf'/>
+ <ref name='xsltVarInfo'/>
+ <ref name='xsltVarInfoPtr'/>
+ <ref name='xsltVariableLookup'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ <ref name='xsltXPathVariableLookup'/>
+ <ref name='xsltXSLTAttrMarker'/>
+ </letter>
+ </alpha>
+ <constructors>
+ <type name='const xmlChar *'>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltSplitQName'/>
+ </type>
+ <type name='long'>
+ <ref name='xsltTimestamp'/>
+ </type>
+ <type name='void *'>
+ <ref name='xsltExtInitFunction'/>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltStyleExtInitFunction'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ </type>
+ <type name='xmlAttrPtr'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ </type>
+ <type name='xmlChar *'>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltGetNsProp'/>
+ </type>
+ <type name='xmlDocPtr'>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltProfileStylesheet'/>
+ </type>
+ <type name='xmlHashTablePtr'>
+ <ref name='xsltGetExtInfo'/>
+ </type>
+ <type name='xmlNodePtr'>
+ <ref name='xsltCopyTextString'/>
+ </type>
+ <type name='xmlNodePtr *'>
+ <ref name='xsltTemplateProcess'/>
+ </type>
+ <type name='xmlNodeSetPtr'>
+ <ref name='xsltGetKey'/>
+ </type>
+ <type name='xmlNsPtr'>
+ <ref name='xsltCopyNamespace'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </type>
+ <type name='xmlXPathCompExprPtr'>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </type>
+ <type name='xmlXPathError'>
+ <ref name='xsltFormatNumberConversion'/>
+ </type>
+ <type name='xmlXPathFunction'>
+ <ref name='xsltExtModuleFunctionLookup'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ </type>
+ <type name='xmlXPathObjectPtr'>
+ <ref name='xsltVariableLookup'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </type>
+ <type name='xmlXPathObjectPtr *'>
+ <ref name='xsltComputeSortResult'/>
+ </type>
+ <type name='xsltCompMatchPtr'>
+ <ref name='xsltCompilePattern'/>
+ </type>
+ <type name='xsltDebugTraceCodes'>
+ <ref name='xsltDebugGetDefaultTrace'/>
+ </type>
+ <type name='xsltDecimalFormatPtr'>
+ <ref name='xsltDecimalFormatGetByName'/>
+ </type>
+ <type name='xsltDocumentPtr'>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltLoadDocument'/>
+ <ref name='xsltLoadStyleDocument'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ </type>
+ <type name='xsltElemPreCompPtr'>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltNewElemPreComp'/>
+ <ref name='xsltPreComputeExtModuleElement'/>
+ <ref name='xsltPreComputeFunction'/>
+ </type>
+ <type name='xsltLocale'>
+ <ref name='xsltNewLocale'/>
+ </type>
+ <type name='xsltLocaleChar *'>
+ <ref name='xsltStrxfrm'/>
+ </type>
+ <type name='xsltPointerListPtr'>
+ <ref name='xsltPointerListCreate'/>
+ </type>
+ <type name='xsltPreComputeFunction'>
+ <ref name='xsltExtModuleElementPreComputeLookup'/>
+ </type>
+ <type name='xsltSecurityCheck'>
+ <ref name='xsltGetSecurityPrefs'/>
+ </type>
+ <type name='xsltSecurityPrefsPtr'>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ <ref name='xsltNewSecurityPrefs'/>
+ </type>
+ <type name='xsltStackElemPtr'>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ </type>
+ <type name='xsltStylesheetPtr'>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltNewStylesheet'/>
+ <ref name='xsltNextImport'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetFile'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ </type>
+ <type name='xsltTemplatePtr'>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetTemplate'/>
+ </type>
+ <type name='xsltTopLevelFunction'>
+ <ref name='xsltExtModuleTopLevelLookup'/>
+ </type>
+ <type name='xsltTransformContextPtr'>
+ <ref name='xsltNewTransformContext'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ </type>
+ <type name='xsltTransformFunction'>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltExtModuleElementLookup'/>
+ </type>
+ </constructors>
+ <functions>
+ <type name='...'>
+ <ref name='xsltTransformError'/>
+ </type>
+ <type name='FILE *'>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltDebugDumpExtensions'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveProfiling'/>
+ <ref name='xsltSaveResultToFile'/>
+ </type>
+ <type name='const char **'>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </type>
+ <type name='const unsigned char *'>
+ <ref name='xsltGetUTF8Char'/>
+ </type>
+ <type name='const xmlChar *'>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltAddTemplate'/>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltExtInitFunction'/>
+ <ref name='xsltExtModuleElementLookup'/>
+ <ref name='xsltExtModuleElementPreComputeLookup'/>
+ <ref name='xsltExtModuleFunctionLookup'/>
+ <ref name='xsltExtModuleTopLevelLookup'/>
+ <ref name='xsltExtShutdownFunction'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltGetExtInfo'/>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltLoadDocument'/>
+ <ref name='xsltLoadStyleDocument'/>
+ <ref name='xsltMatchPattern'/>
+ <ref name='xsltNewLocale'/>
+ <ref name='xsltNormalizeCompSteps'/>
+ <ref name='xsltParseStylesheetFile'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleElement'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ <ref name='xsltRegisterExtModuleFunction'/>
+ <ref name='xsltRegisterExtModuleTopLevel'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltSplitQName'/>
+ <ref name='xsltStrxfrm'/>
+ <ref name='xsltStyleExtInitFunction'/>
+ <ref name='xsltStyleExtShutdownFunction'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ <ref name='xsltUnregisterExtModule'/>
+ <ref name='xsltUnregisterExtModuleElement'/>
+ <ref name='xsltUnregisterExtModuleFunction'/>
+ <ref name='xsltUnregisterExtModuleTopLevel'/>
+ <ref name='xsltVariableLookup'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </type>
+ <type name='const xmlChar **'>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltSplitQName'/>
+ </type>
+ <type name='const xsltLocaleChar *'>
+ <ref name='xsltLocaleStrcmp'/>
+ </type>
+ <type name='double'>
+ <ref name='xsltFormatNumberConversion'/>
+ </type>
+ <type name='int *'>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltSaveResultToString'/>
+ </type>
+ <type name='long'>
+ <ref name='xsltCalibrateAdjust'/>
+ </type>
+ <type name='void *'>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltExtShutdownFunction'/>
+ <ref name='xsltFreeAVTList'/>
+ <ref name='xsltNormalizeCompSteps'/>
+ <ref name='xsltPointerListAddSize'/>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ <ref name='xsltStyleExtShutdownFunction'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </type>
+ <type name='xmlAttrPtr'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltCompileAttr'/>
+ </type>
+ <type name='xmlChar *'>
+ <ref name='xsltDecimalFormatGetByName'/>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltIsBlank'/>
+ </type>
+ <type name='xmlChar **'>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltSaveResultToString'/>
+ </type>
+ <type name='xmlDictPtr'>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltSplitQName'/>
+ </type>
+ <type name='xmlDocPtr'>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltMatchPattern'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ <ref name='xsltNewTransformContext'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltReleaseRVT'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltSaveResultToString'/>
+ </type>
+ <type name='xmlGenericErrorFunc'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </type>
+ <type name='xmlNodePtr'>
+ <ref name='xslAddCall'/>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltAddCallCallback'/>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltApplyImports'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltApplyStripSpaces'/>
+ <ref name='xsltApplyTemplates'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltAttribute'/>
+ <ref name='xsltCallTemplate'/>
+ <ref name='xsltChoose'/>
+ <ref name='xsltComment'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltCopy'/>
+ <ref name='xsltCopyNamespace'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltCopyOf'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltDebug'/>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltDocumentElem'/>
+ <ref name='xsltElement'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltForEach'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltHandleDebuggerCallback'/>
+ <ref name='xsltIf'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltMatchPattern'/>
+ <ref name='xsltMessage'/>
+ <ref name='xsltNamespaceAlias'/>
+ <ref name='xsltNewElemPreComp'/>
+ <ref name='xsltNumber'/>
+ <ref name='xsltNumberFormat'/>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltParseGlobalParam'/>
+ <ref name='xsltParseGlobalVariable'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ <ref name='xsltParseStylesheetAttributeSet'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltParseStylesheetImport'/>
+ <ref name='xsltParseStylesheetInclude'/>
+ <ref name='xsltParseStylesheetOutput'/>
+ <ref name='xsltParseStylesheetParam'/>
+ <ref name='xsltParseStylesheetVariable'/>
+ <ref name='xsltParseTemplateContent'/>
+ <ref name='xsltPreComputeExtModuleElement'/>
+ <ref name='xsltPreComputeFunction'/>
+ <ref name='xsltPrintErrorContext'/>
+ <ref name='xsltProcessOneNode'/>
+ <ref name='xsltProcessingInstruction'/>
+ <ref name='xsltSort'/>
+ <ref name='xsltStylePreCompute'/>
+ <ref name='xsltTemplateProcess'/>
+ <ref name='xsltTestCompMatchList'/>
+ <ref name='xsltText'/>
+ <ref name='xsltTopLevelFunction'/>
+ <ref name='xsltTransformError'/>
+ <ref name='xsltTransformFunction'/>
+ <ref name='xsltValueOf'/>
+ </type>
+ <type name='xmlNodePtr *'>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltSortFunc'/>
+ </type>
+ <type name='xmlNodeSetPtr'>
+ <ref name='xsltDocumentSortFunction'/>
+ </type>
+ <type name='xmlNsPtr'>
+ <ref name='xsltCopyNamespace'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetPlainNamespace'/>
+ </type>
+ <type name='xmlNsPtr *'>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ </type>
+ <type name='xmlOutputBufferPtr'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveResultTo'/>
+ </type>
+ <type name='xmlSAXHandlerPtr'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </type>
+ <type name='xmlXPathCompExprPtr'>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ </type>
+ <type name='xmlXPathContextPtr'>
+ <ref name='xsltRegisterAllFunctions'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ </type>
+ <type name='xmlXPathFunction'>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterExtModuleFunction'/>
+ </type>
+ <type name='xmlXPathObjectPtr'>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </type>
+ <type name='xmlXPathParserContextPtr'>
+ <ref name='xsltDocumentFunction'/>
+ <ref name='xsltElementAvailableFunction'/>
+ <ref name='xsltFormatNumberFunction'/>
+ <ref name='xsltFunctionAvailableFunction'/>
+ <ref name='xsltFunctionNodeSet'/>
+ <ref name='xsltGenerateIdFunction'/>
+ <ref name='xsltKeyFunction'/>
+ <ref name='xsltSystemPropertyFunction'/>
+ <ref name='xsltUnparsedEntityURIFunction'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ </type>
+ <type name='xsltCompMatchPtr'>
+ <ref name='xsltFreeCompMatchList'/>
+ <ref name='xsltTestCompMatchList'/>
+ </type>
+ <type name='xsltCompilerCtxtPtr'>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ </type>
+ <type name='xsltDebugTraceCodes'>
+ <ref name='xsltDebugSetDefaultTrace'/>
+ </type>
+ <type name='xsltDecimalFormatPtr'>
+ <ref name='xsltFormatNumberConversion'/>
+ </type>
+ <type name='xsltDocLoaderFunc'>
+ <ref name='xsltSetLoaderFunc'/>
+ </type>
+ <type name='xsltDocumentPtr'>
+ <ref name='xsltFreeDocumentKeys'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltInitCtxtKeys'/>
+ </type>
+ <type name='xsltElemPreCompDeallocator'>
+ <ref name='xsltInitElemPreComp'/>
+ </type>
+ <type name='xsltElemPreCompPtr'>
+ <ref name='xsltElemPreCompDeallocator'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltTransformFunction'/>
+ </type>
+ <type name='xsltExtInitFunction'>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ </type>
+ <type name='xsltExtShutdownFunction'>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ </type>
+ <type name='xsltKeyDefPtr'>
+ <ref name='xsltInitCtxtKey'/>
+ </type>
+ <type name='xsltLoadType'>
+ <ref name='xsltDocLoaderFunc'/>
+ </type>
+ <type name='xsltLocale'>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltStrxfrm'/>
+ </type>
+ <type name='xsltNsMapPtr'>
+ <ref name='xsltRestoreDocumentNamespaces'/>
+ </type>
+ <type name='xsltNumberDataPtr'>
+ <ref name='xsltNumberFormat'/>
+ </type>
+ <type name='xsltPointerListPtr'>
+ <ref name='xsltPointerListAddSize'/>
+ <ref name='xsltPointerListClear'/>
+ <ref name='xsltPointerListFree'/>
+ </type>
+ <type name='xsltPreComputeFunction'>
+ <ref name='xsltRegisterExtModuleElement'/>
+ </type>
+ <type name='xsltSecurityCheck'>
+ <ref name='xsltSetSecurityPrefs'/>
+ </type>
+ <type name='xsltSecurityOption'>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ </type>
+ <type name='xsltSecurityPrefsPtr'>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltFreeSecurityPrefs'/>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityCheck'/>
+ <ref name='xsltSecurityForbid'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetDefaultSecurityPrefs'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ </type>
+ <type name='xsltSortFunc'>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltSetSortFunc'/>
+ </type>
+ <type name='xsltStackElemPtr'>
+ <ref name='xsltAddStackElemList'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltFreeStackElemList'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltProcessOneNode'/>
+ </type>
+ <type name='xsltStyleExtInitFunction'>
+ <ref name='xsltRegisterExtModuleFull'/>
+ </type>
+ <type name='xsltStyleExtShutdownFunction'>
+ <ref name='xsltRegisterExtModuleFull'/>
+ </type>
+ <type name='xsltStylePreCompPtr'>
+ <ref name='xsltApplyImports'/>
+ <ref name='xsltApplyTemplates'/>
+ <ref name='xsltAttribute'/>
+ <ref name='xsltCallTemplate'/>
+ <ref name='xsltChoose'/>
+ <ref name='xsltComment'/>
+ <ref name='xsltCopy'/>
+ <ref name='xsltCopyOf'/>
+ <ref name='xsltDebug'/>
+ <ref name='xsltDocumentElem'/>
+ <ref name='xsltElement'/>
+ <ref name='xsltForEach'/>
+ <ref name='xsltIf'/>
+ <ref name='xsltNumber'/>
+ <ref name='xsltProcessingInstruction'/>
+ <ref name='xsltSort'/>
+ <ref name='xsltText'/>
+ <ref name='xsltValueOf'/>
+ </type>
+ <type name='xsltStylesheetPtr'>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltAddTemplate'/>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltCleanupTemplates'/>
+ <ref name='xsltCompileAttr'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltDecimalFormatGetByName'/>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltFreeAttributeSetsHashes'/>
+ <ref name='xsltFreeExts'/>
+ <ref name='xsltFreeKeys'/>
+ <ref name='xsltFreeNamespaceAliasHashes'/>
+ <ref name='xsltFreeStyleDocuments'/>
+ <ref name='xsltFreeStylePreComps'/>
+ <ref name='xsltFreeStylesheet'/>
+ <ref name='xsltFreeTemplateHashes'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetExtInfo'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltLoadStyleDocument'/>
+ <ref name='xsltNamespaceAlias'/>
+ <ref name='xsltNewElemPreComp'/>
+ <ref name='xsltNewStyleDocument'/>
+ <ref name='xsltNewTransformContext'/>
+ <ref name='xsltNextImport'/>
+ <ref name='xsltParseGlobalParam'/>
+ <ref name='xsltParseGlobalVariable'/>
+ <ref name='xsltParseStylesheetAttributeSet'/>
+ <ref name='xsltParseStylesheetImport'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetInclude'/>
+ <ref name='xsltParseStylesheetOutput'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltParseTemplateContent'/>
+ <ref name='xsltPreComputeExtModuleElement'/>
+ <ref name='xsltPreComputeFunction'/>
+ <ref name='xsltPrintErrorContext'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltResolveStylesheetAttributeSet'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltSaveResultToString'/>
+ <ref name='xsltShutdownExts'/>
+ <ref name='xsltStyleExtInitFunction'/>
+ <ref name='xsltStyleExtShutdownFunction'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStylePreCompute'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ <ref name='xsltTopLevelFunction'/>
+ <ref name='xsltTransformError'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </type>
+ <type name='xsltTemplatePtr'>
+ <ref name='xslAddCall'/>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltAddCallCallback'/>
+ <ref name='xsltAddTemplate'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltHandleDebuggerCallback'/>
+ </type>
+ <type name='xsltTopLevelFunction'>
+ <ref name='xsltRegisterExtModuleTopLevel'/>
+ </type>
+ <type name='xsltTransformContextPtr'>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltAddStackElemList'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltApplyImports'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltApplyStripSpaces'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltApplyTemplates'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltAttribute'/>
+ <ref name='xsltCallTemplate'/>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltChoose'/>
+ <ref name='xsltComment'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltCopy'/>
+ <ref name='xsltCopyNamespace'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltCopyOf'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltDebug'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltDocumentElem'/>
+ <ref name='xsltElement'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltExtInitFunction'/>
+ <ref name='xsltExtShutdownFunction'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltForEach'/>
+ <ref name='xsltFreeCtxtExts'/>
+ <ref name='xsltFreeDocuments'/>
+ <ref name='xsltFreeGlobalVariables'/>
+ <ref name='xsltFreeRVTs'/>
+ <ref name='xsltFreeTransformContext'/>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltHandleDebuggerCallback'/>
+ <ref name='xsltIf'/>
+ <ref name='xsltInitAllDocKeys'/>
+ <ref name='xsltInitCtxtExts'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltLoadDocument'/>
+ <ref name='xsltLocalVariablePop'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltMatchPattern'/>
+ <ref name='xsltMessage'/>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNumber'/>
+ <ref name='xsltNumberFormat'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltParseStylesheetParam'/>
+ <ref name='xsltParseStylesheetVariable'/>
+ <ref name='xsltPrintErrorContext'/>
+ <ref name='xsltProcessOneNode'/>
+ <ref name='xsltProcessingInstruction'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRegisterAllElement'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterExtras'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltReleaseRVT'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveProfiling'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityCheck'/>
+ <ref name='xsltSecurityForbid'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ <ref name='xsltShutdownCtxtExts'/>
+ <ref name='xsltSort'/>
+ <ref name='xsltSortFunc'/>
+ <ref name='xsltTemplateProcess'/>
+ <ref name='xsltTestCompMatchList'/>
+ <ref name='xsltText'/>
+ <ref name='xsltTransformError'/>
+ <ref name='xsltTransformFunction'/>
+ <ref name='xsltValueOf'/>
+ <ref name='xsltVariableLookup'/>
+ </type>
+ <type name='xsltTransformFunction'>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltNewElemPreComp'/>
+ <ref name='xsltPreComputeFunction'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtModuleElement'/>
+ </type>
+ </functions>
+ <files>
+ <file name='attributes'>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltFreeAttributeSetsHashes'/>
+ <ref name='xsltParseStylesheetAttributeSet'/>
+ <ref name='xsltResolveStylesheetAttributeSet'/>
+ </file>
+ <file name='documents'>
+ <ref name='XSLT_LOAD_DOCUMENT'/>
+ <ref name='XSLT_LOAD_START'/>
+ <ref name='XSLT_LOAD_STYLESHEET'/>
+ <ref name='xsltDocDefaultLoader'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltFreeDocuments'/>
+ <ref name='xsltFreeStyleDocuments'/>
+ <ref name='xsltLoadDocument'/>
+ <ref name='xsltLoadStyleDocument'/>
+ <ref name='xsltLoadType'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ <ref name='xsltSetLoaderFunc'/>
+ </file>
+ <file name='extensions'>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltDebugDumpExtensions'/>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltExtInitFunction'/>
+ <ref name='xsltExtModuleElementLookup'/>
+ <ref name='xsltExtModuleElementPreComputeLookup'/>
+ <ref name='xsltExtModuleFunctionLookup'/>
+ <ref name='xsltExtModuleTopLevelLookup'/>
+ <ref name='xsltExtShutdownFunction'/>
+ <ref name='xsltFreeCtxtExts'/>
+ <ref name='xsltFreeExts'/>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltGetExtInfo'/>
+ <ref name='xsltInitCtxtExts'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltInitGlobals'/>
+ <ref name='xsltNewElemPreComp'/>
+ <ref name='xsltPreComputeExtModuleElement'/>
+ <ref name='xsltPreComputeFunction'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleElement'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ <ref name='xsltRegisterExtModuleFunction'/>
+ <ref name='xsltRegisterExtModuleTopLevel'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltRegisterTestModule'/>
+ <ref name='xsltShutdownCtxtExts'/>
+ <ref name='xsltShutdownExts'/>
+ <ref name='xsltStyleExtInitFunction'/>
+ <ref name='xsltStyleExtShutdownFunction'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ <ref name='xsltTopLevelFunction'/>
+ <ref name='xsltUnregisterExtModule'/>
+ <ref name='xsltUnregisterExtModuleElement'/>
+ <ref name='xsltUnregisterExtModuleFunction'/>
+ <ref name='xsltUnregisterExtModuleTopLevel'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ </file>
+ <file name='extra'>
+ <ref name='XSLT_LIBXSLT_NAMESPACE'/>
+ <ref name='XSLT_NORM_SAXON_NAMESPACE'/>
+ <ref name='XSLT_SAXON_NAMESPACE'/>
+ <ref name='XSLT_XALAN_NAMESPACE'/>
+ <ref name='XSLT_XT_NAMESPACE'/>
+ <ref name='xsltDebug'/>
+ <ref name='xsltFunctionNodeSet'/>
+ <ref name='xsltRegisterAllExtras'/>
+ <ref name='xsltRegisterExtras'/>
+ </file>
+ <file name='functions'>
+ <ref name='XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <ref name='xsltDocumentFunction'/>
+ <ref name='xsltElementAvailableFunction'/>
+ <ref name='xsltFormatNumberFunction'/>
+ <ref name='xsltFunctionAvailableFunction'/>
+ <ref name='xsltGenerateIdFunction'/>
+ <ref name='xsltKeyFunction'/>
+ <ref name='xsltRegisterAllFunctions'/>
+ <ref name='xsltSystemPropertyFunction'/>
+ <ref name='xsltUnparsedEntityURIFunction'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ </file>
+ <file name='imports'>
+ <ref name='XSLT_GET_IMPORT_INT'/>
+ <ref name='XSLT_GET_IMPORT_PTR'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ <ref name='xsltNextImport'/>
+ <ref name='xsltParseStylesheetImport'/>
+ <ref name='xsltParseStylesheetInclude'/>
+ </file>
+ <file name='keys'>
+ <ref name='NODE_IS_KEYED'/>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltFreeDocumentKeys'/>
+ <ref name='xsltFreeKeys'/>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltInitCtxtKeys'/>
+ </file>
+ <file name='namespaces'>
+ <ref name='UNDEFINED_DEFAULT_NS'/>
+ <ref name='xsltCopyNamespace'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltFreeNamespaceAliasHashes'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltNamespaceAlias'/>
+ </file>
+ <file name='numbersInternals'>
+ <ref name='_xsltCompMatch'/>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='_xsltNumberData'/>
+ <ref name='xsltFormatNumberInfo'/>
+ <ref name='xsltFormatNumberInfoPtr'/>
+ <ref name='xsltNumberData'/>
+ <ref name='xsltNumberDataPtr'/>
+ </file>
+ <file name='pattern'>
+ <ref name='xsltAddTemplate'/>
+ <ref name='xsltCleanupTemplates'/>
+ <ref name='xsltCompMatch'/>
+ <ref name='xsltCompMatchPtr'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltFreeCompMatchList'/>
+ <ref name='xsltFreeTemplateHashes'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltMatchPattern'/>
+ <ref name='xsltNormalizeCompSteps'/>
+ <ref name='xsltTestCompMatchList'/>
+ </file>
+ <file name='preproc'>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltExtMarker'/>
+ <ref name='xsltFreeStylePreComps'/>
+ <ref name='xsltStylePreCompute'/>
+ </file>
+ <file name='security'>
+ <ref name='XSLT_SECPREF_CREATE_DIRECTORY'/>
+ <ref name='XSLT_SECPREF_READ_FILE'/>
+ <ref name='XSLT_SECPREF_READ_NETWORK'/>
+ <ref name='XSLT_SECPREF_WRITE_FILE'/>
+ <ref name='XSLT_SECPREF_WRITE_NETWORK'/>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltFreeSecurityPrefs'/>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltNewSecurityPrefs'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityCheck'/>
+ <ref name='xsltSecurityForbid'/>
+ <ref name='xsltSecurityOption'/>
+ <ref name='xsltSecurityPrefs'/>
+ <ref name='xsltSecurityPrefsPtr'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetDefaultSecurityPrefs'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ </file>
+ <file name='templates'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltTemplateProcess'/>
+ </file>
+ <file name='transform'>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltApplyImports'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltApplyStripSpaces'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltApplyTemplates'/>
+ <ref name='xsltAttribute'/>
+ <ref name='xsltCallTemplate'/>
+ <ref name='xsltChoose'/>
+ <ref name='xsltComment'/>
+ <ref name='xsltCopy'/>
+ <ref name='xsltCopyOf'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltDocumentElem'/>
+ <ref name='xsltElement'/>
+ <ref name='xsltForEach'/>
+ <ref name='xsltFreeTransformContext'/>
+ <ref name='xsltGetXIncludeDefault'/>
+ <ref name='xsltIf'/>
+ <ref name='xsltLocalVariablePop'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltNewTransformContext'/>
+ <ref name='xsltNumber'/>
+ <ref name='xsltProcessOneNode'/>
+ <ref name='xsltProcessingInstruction'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltRegisterAllElement'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ <ref name='xsltSort'/>
+ <ref name='xsltText'/>
+ <ref name='xsltValueOf'/>
+ </file>
+ <file name='variables'>
+ <ref name='XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ <ref name='xsltAddStackElemList'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltFreeGlobalVariables'/>
+ <ref name='xsltParseGlobalParam'/>
+ <ref name='xsltParseGlobalVariable'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltParseStylesheetParam'/>
+ <ref name='xsltParseStylesheetVariable'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltVariableLookup'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </file>
+ <file name='xslt'>
+ <ref name='XSLT_DEFAULT_URL'/>
+ <ref name='XSLT_DEFAULT_VENDOR'/>
+ <ref name='XSLT_DEFAULT_VERSION'/>
+ <ref name='XSLT_NAMESPACE'/>
+ <ref name='XSLT_PARSE_OPTIONS'/>
+ <ref name='xsltCleanupGlobals'/>
+ <ref name='xsltEngineVersion'/>
+ <ref name='xsltInit'/>
+ <ref name='xsltLibxmlVersion'/>
+ <ref name='xsltLibxsltVersion'/>
+ <ref name='xsltMaxDepth'/>
+ <ref name='xsltMaxVars'/>
+ </file>
+ <file name='xsltInternals'>
+ <ref name='CHECK_STOPPED'/>
+ <ref name='CHECK_STOPPED0'/>
+ <ref name='CHECK_STOPPEDE'/>
+ <ref name='IS_XSLT_ATTR_FAST'/>
+ <ref name='IS_XSLT_ELEM_FAST'/>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='XSLT_CCTXT'/>
+ <ref name='XSLT_ERROR_SEVERITY_ERROR'/>
+ <ref name='XSLT_ERROR_SEVERITY_WARNING'/>
+ <ref name='XSLT_FAST_IF'/>
+ <ref name='XSLT_FUNC_APPLYIMPORTS'/>
+ <ref name='XSLT_FUNC_APPLYTEMPLATES'/>
+ <ref name='XSLT_FUNC_ATTRIBUTE'/>
+ <ref name='XSLT_FUNC_ATTRSET'/>
+ <ref name='XSLT_FUNC_CALLTEMPLATE'/>
+ <ref name='XSLT_FUNC_CHOOSE'/>
+ <ref name='XSLT_FUNC_COMMENT'/>
+ <ref name='XSLT_FUNC_COPY'/>
+ <ref name='XSLT_FUNC_COPYOF'/>
+ <ref name='XSLT_FUNC_DOCUMENT'/>
+ <ref name='XSLT_FUNC_ELEMENT'/>
+ <ref name='XSLT_FUNC_EXTENSION'/>
+ <ref name='XSLT_FUNC_FALLBACK'/>
+ <ref name='XSLT_FUNC_FOREACH'/>
+ <ref name='XSLT_FUNC_IF'/>
+ <ref name='XSLT_FUNC_INCLUDE'/>
+ <ref name='XSLT_FUNC_LITERAL_RESULT_ELEMENT'/>
+ <ref name='XSLT_FUNC_MESSAGE'/>
+ <ref name='XSLT_FUNC_NUMBER'/>
+ <ref name='XSLT_FUNC_OTHERWISE'/>
+ <ref name='XSLT_FUNC_PARAM'/>
+ <ref name='XSLT_FUNC_PI'/>
+ <ref name='XSLT_FUNC_SORT'/>
+ <ref name='XSLT_FUNC_TEXT'/>
+ <ref name='XSLT_FUNC_UNKOWN_FORWARDS_COMPAT'/>
+ <ref name='XSLT_FUNC_VALUEOF'/>
+ <ref name='XSLT_FUNC_VARIABLE'/>
+ <ref name='XSLT_FUNC_WHEN'/>
+ <ref name='XSLT_FUNC_WITHPARAM'/>
+ <ref name='XSLT_GET_INTERNAL_NSMAP'/>
+ <ref name='XSLT_HAS_INTERNAL_NSMAP'/>
+ <ref name='XSLT_IS_RES_TREE_FRAG'/>
+ <ref name='XSLT_IS_TEXT_NODE'/>
+ <ref name='XSLT_ITEM_COMMON_FIELDS'/>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
+ <ref name='XSLT_ITEM_NSINSCOPE_FIELDS'/>
+ <ref name='XSLT_MARK_RES_TREE_FRAG'/>
+ <ref name='XSLT_MAX_SORT'/>
+ <ref name='XSLT_OUTPUT_HTML'/>
+ <ref name='XSLT_OUTPUT_TEXT'/>
+ <ref name='XSLT_OUTPUT_XML'/>
+ <ref name='XSLT_PAT_NO_PRIORITY'/>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ <ref name='XSLT_REFACTORED_VARS'/>
+ <ref name='XSLT_REFACTORED_XPATHCOMP'/>
+ <ref name='XSLT_RUNTIME_EXTRA'/>
+ <ref name='XSLT_RUNTIME_EXTRA_FREE'/>
+ <ref name='XSLT_RUNTIME_EXTRA_LST'/>
+ <ref name='XSLT_STATE_ERROR'/>
+ <ref name='XSLT_STATE_OK'/>
+ <ref name='XSLT_STATE_STOPPED'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltDecimalFormat'/>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltEffectiveNs'/>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='_xsltKeyDef'/>
+ <ref name='_xsltKeyTable'/>
+ <ref name='_xsltNsAlias'/>
+ <ref name='_xsltNsList'/>
+ <ref name='_xsltNsListContainer'/>
+ <ref name='_xsltNsMap'/>
+ <ref name='_xsltPointerList'/>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='_xsltRuntimeExtra'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltStyleBasicEmptyItem'/>
+ <ref name='_xsltStyleBasicExpressionItem'/>
+ <ref name='_xsltStyleBasicItemVariable'/>
+ <ref name='_xsltStyleItemApplyTemplates'/>
+ <ref name='_xsltStyleItemAttribute'/>
+ <ref name='_xsltStyleItemCallTemplate'/>
+ <ref name='_xsltStyleItemCopy'/>
+ <ref name='_xsltStyleItemDocument'/>
+ <ref name='_xsltStyleItemElement'/>
+ <ref name='_xsltStyleItemExtElement'/>
+ <ref name='_xsltStyleItemIf'/>
+ <ref name='_xsltStyleItemInclude'/>
+ <ref name='_xsltStyleItemLRElementInfo'/>
+ <ref name='_xsltStyleItemMessage'/>
+ <ref name='_xsltStyleItemNumber'/>
+ <ref name='_xsltStyleItemOtherwise'/>
+ <ref name='_xsltStyleItemPI'/>
+ <ref name='_xsltStyleItemParam'/>
+ <ref name='_xsltStyleItemSort'/>
+ <ref name='_xsltStyleItemText'/>
+ <ref name='_xsltStyleItemUknown'/>
+ <ref name='_xsltStyleItemValueOf'/>
+ <ref name='_xsltStyleItemWhen'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='_xsltTransformCache'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='_xsltVarInfo'/>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ <ref name='xsltCompileAttr'/>
+ <ref name='xsltCompilerCtxt'/>
+ <ref name='xsltCompilerCtxtPtr'/>
+ <ref name='xsltCompilerNodeInfo'/>
+ <ref name='xsltCompilerNodeInfoPtr'/>
+ <ref name='xsltConstNamespaceNameXSLT'/>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltDecimalFormat'/>
+ <ref name='xsltDecimalFormatGetByName'/>
+ <ref name='xsltDecimalFormatPtr'/>
+ <ref name='xsltDocument'/>
+ <ref name='xsltDocumentPtr'/>
+ <ref name='xsltEffectiveNs'/>
+ <ref name='xsltEffectiveNsPtr'/>
+ <ref name='xsltElemPreComp'/>
+ <ref name='xsltElemPreCompDeallocator'/>
+ <ref name='xsltElemPreCompPtr'/>
+ <ref name='xsltErrorSeverityType'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltFreeAVTList'/>
+ <ref name='xsltFreeRVTs'/>
+ <ref name='xsltFreeStackElemList'/>
+ <ref name='xsltFreeStylesheet'/>
+ <ref name='xsltInitAllDocKeys'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltIsBlank'/>
+ <ref name='xsltKeyDef'/>
+ <ref name='xsltKeyDefPtr'/>
+ <ref name='xsltKeyTable'/>
+ <ref name='xsltKeyTablePtr'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltNewStylesheet'/>
+ <ref name='xsltNsAlias'/>
+ <ref name='xsltNsAliasPtr'/>
+ <ref name='xsltNsList'/>
+ <ref name='xsltNsListContainer'/>
+ <ref name='xsltNsListContainerPtr'/>
+ <ref name='xsltNsListPtr'/>
+ <ref name='xsltNsMap'/>
+ <ref name='xsltNsMapPtr'/>
+ <ref name='xsltNumberFormat'/>
+ <ref name='xsltOutputType'/>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetFile'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetOutput'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltParseTemplateContent'/>
+ <ref name='xsltPointerList'/>
+ <ref name='xsltPointerListAddSize'/>
+ <ref name='xsltPointerListClear'/>
+ <ref name='xsltPointerListCreate'/>
+ <ref name='xsltPointerListFree'/>
+ <ref name='xsltPointerListPtr'/>
+ <ref name='xsltPrincipalStylesheetData'/>
+ <ref name='xsltPrincipalStylesheetDataPtr'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltReleaseRVT'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
+ <ref name='xsltRuntimeExtra'/>
+ <ref name='xsltRuntimeExtraPtr'/>
+ <ref name='xsltSortFunc'/>
+ <ref name='xsltStackElem'/>
+ <ref name='xsltStackElemPtr'/>
+ <ref name='xsltStyleBasicEmptyItem'/>
+ <ref name='xsltStyleBasicEmptyItemPtr'/>
+ <ref name='xsltStyleBasicExpressionItem'/>
+ <ref name='xsltStyleBasicExpressionItemPtr'/>
+ <ref name='xsltStyleBasicItemVariable'/>
+ <ref name='xsltStyleBasicItemVariablePtr'/>
+ <ref name='xsltStyleItemApplyImports'/>
+ <ref name='xsltStyleItemApplyImportsPtr'/>
+ <ref name='xsltStyleItemApplyTemplates'/>
+ <ref name='xsltStyleItemApplyTemplatesPtr'/>
+ <ref name='xsltStyleItemAttribute'/>
+ <ref name='xsltStyleItemAttributePtr'/>
+ <ref name='xsltStyleItemCallTemplate'/>
+ <ref name='xsltStyleItemCallTemplatePtr'/>
+ <ref name='xsltStyleItemChoose'/>
+ <ref name='xsltStyleItemChoosePtr'/>
+ <ref name='xsltStyleItemComment'/>
+ <ref name='xsltStyleItemCommentPtr'/>
+ <ref name='xsltStyleItemCopy'/>
+ <ref name='xsltStyleItemCopyOf'/>
+ <ref name='xsltStyleItemCopyOfPtr'/>
+ <ref name='xsltStyleItemCopyPtr'/>
+ <ref name='xsltStyleItemDocument'/>
+ <ref name='xsltStyleItemDocumentPtr'/>
+ <ref name='xsltStyleItemElement'/>
+ <ref name='xsltStyleItemElementPtr'/>
+ <ref name='xsltStyleItemExtElement'/>
+ <ref name='xsltStyleItemExtElementPtr'/>
+ <ref name='xsltStyleItemFallback'/>
+ <ref name='xsltStyleItemFallbackPtr'/>
+ <ref name='xsltStyleItemForEach'/>
+ <ref name='xsltStyleItemForEachPtr'/>
+ <ref name='xsltStyleItemIf'/>
+ <ref name='xsltStyleItemIfPtr'/>
+ <ref name='xsltStyleItemInclude'/>
+ <ref name='xsltStyleItemIncludePtr'/>
+ <ref name='xsltStyleItemLRElementInfo'/>
+ <ref name='xsltStyleItemLRElementInfoPtr'/>
+ <ref name='xsltStyleItemMessage'/>
+ <ref name='xsltStyleItemMessagePtr'/>
+ <ref name='xsltStyleItemNumber'/>
+ <ref name='xsltStyleItemNumberPtr'/>
+ <ref name='xsltStyleItemOtherwise'/>
+ <ref name='xsltStyleItemOtherwisePtr'/>
+ <ref name='xsltStyleItemPI'/>
+ <ref name='xsltStyleItemPIPtr'/>
+ <ref name='xsltStyleItemParam'/>
+ <ref name='xsltStyleItemParamPtr'/>
+ <ref name='xsltStyleItemSort'/>
+ <ref name='xsltStyleItemSortPtr'/>
+ <ref name='xsltStyleItemText'/>
+ <ref name='xsltStyleItemTextPtr'/>
+ <ref name='xsltStyleItemUknown'/>
+ <ref name='xsltStyleItemUknownPtr'/>
+ <ref name='xsltStyleItemValueOf'/>
+ <ref name='xsltStyleItemValueOfPtr'/>
+ <ref name='xsltStyleItemVariable'/>
+ <ref name='xsltStyleItemVariablePtr'/>
+ <ref name='xsltStyleItemWhen'/>
+ <ref name='xsltStyleItemWhenPtr'/>
+ <ref name='xsltStyleItemWithParam'/>
+ <ref name='xsltStyleItemWithParamPtr'/>
+ <ref name='xsltStylePreComp'/>
+ <ref name='xsltStylePreCompPtr'/>
+ <ref name='xsltStyleType'/>
+ <ref name='xsltStylesheet'/>
+ <ref name='xsltStylesheetPtr'/>
+ <ref name='xsltTemplate'/>
+ <ref name='xsltTemplatePtr'/>
+ <ref name='xsltTransformCache'/>
+ <ref name='xsltTransformCachePtr'/>
+ <ref name='xsltTransformContext'/>
+ <ref name='xsltTransformContextPtr'/>
+ <ref name='xsltTransformFunction'/>
+ <ref name='xsltTransformState'/>
+ <ref name='xsltUninit'/>
+ <ref name='xsltVarInfo'/>
+ <ref name='xsltVarInfoPtr'/>
+ <ref name='xsltXSLTAttrMarker'/>
+ </file>
+ <file name='xsltexports'>
+ <ref name='LIBXSLT_PUBLIC'/>
+ <ref name='XSLTCALL'/>
+ <ref name='XSLTPUBFUN'/>
+ <ref name='XSLTPUBVAR'/>
+ <ref name='_REENTRANT'/>
+ </file>
+ <file name='xsltlocale'>
+ <ref name='XSLT_LOCALE_NONE'/>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltFreeLocales'/>
+ <ref name='xsltLocale'/>
+ <ref name='xsltLocaleChar'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltNewLocale'/>
+ <ref name='xsltStrxfrm'/>
+ </file>
+ <file name='xsltutils'>
+ <ref name='IS_XSLT_ELEM'/>
+ <ref name='IS_XSLT_NAME'/>
+ <ref name='IS_XSLT_REAL_NODE'/>
+ <ref name='XSLT_DEBUG_CONT'/>
+ <ref name='XSLT_DEBUG_INIT'/>
+ <ref name='XSLT_DEBUG_NEXT'/>
+ <ref name='XSLT_DEBUG_NONE'/>
+ <ref name='XSLT_DEBUG_QUIT'/>
+ <ref name='XSLT_DEBUG_RUN'/>
+ <ref name='XSLT_DEBUG_RUN_RESTART'/>
+ <ref name='XSLT_DEBUG_STEP'/>
+ <ref name='XSLT_DEBUG_STEPOUT'/>
+ <ref name='XSLT_DEBUG_STOP'/>
+ <ref name='XSLT_STRANGE'/>
+ <ref name='XSLT_TIMESTAMP_TICS_PER_SEC'/>
+ <ref name='XSLT_TODO'/>
+ <ref name='XSLT_TRACE'/>
+ <ref name='XSLT_TRACE_ALL'/>
+ <ref name='XSLT_TRACE_APPLY_TEMPLATE'/>
+ <ref name='XSLT_TRACE_APPLY_TEMPLATES'/>
+ <ref name='XSLT_TRACE_CALL_TEMPLATE'/>
+ <ref name='XSLT_TRACE_CHOOSE'/>
+ <ref name='XSLT_TRACE_COMMENT'/>
+ <ref name='XSLT_TRACE_COPY'/>
+ <ref name='XSLT_TRACE_COPY_OF'/>
+ <ref name='XSLT_TRACE_COPY_TEXT'/>
+ <ref name='XSLT_TRACE_FOR_EACH'/>
+ <ref name='XSLT_TRACE_IF'/>
+ <ref name='XSLT_TRACE_KEYS'/>
+ <ref name='XSLT_TRACE_NONE'/>
+ <ref name='XSLT_TRACE_PI'/>
+ <ref name='XSLT_TRACE_PROCESS_NODE'/>
+ <ref name='XSLT_TRACE_STRIP_SPACES'/>
+ <ref name='XSLT_TRACE_TEMPLATES'/>
+ <ref name='XSLT_TRACE_VALUE_OF'/>
+ <ref name='XSLT_TRACE_VARIABLES'/>
+ <ref name='xslAddCall'/>
+ <ref name='xslDebugStatus'/>
+ <ref name='xslDropCall'/>
+ <ref name='xsltAddCallCallback'/>
+ <ref name='xsltCalibrateAdjust'/>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltDebugGetDefaultTrace'/>
+ <ref name='xsltDebugSetDefaultTrace'/>
+ <ref name='xsltDebugStatusCodes'/>
+ <ref name='xsltDebugTraceCodes'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltDocumentSortFunction'/>
+ <ref name='xsltDropCallCallback'/>
+ <ref name='xsltGenericDebug'/>
+ <ref name='xsltGenericDebugContext'/>
+ <ref name='xsltGenericError'/>
+ <ref name='xsltGenericErrorContext'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetDebuggerStatus'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltHandleDebuggerCallback'/>
+ <ref name='xsltMessage'/>
+ <ref name='xsltPrintErrorContext'/>
+ <ref name='xsltSaveProfiling'/>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltSaveResultToString'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ <ref name='xsltSetDebuggerStatus'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetSortFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ <ref name='xsltSplitQName'/>
+ <ref name='xsltTimestamp'/>
+ <ref name='xsltTransformError'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </file>
+ </files>
+ <index>
+ <chunk name='chunk0'>
+ <letter name='A'>
+ <word name='API'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='ATTENTION:'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='AVT'>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltFreeAVTList'/>
+ </word>
+ <word name='Add'>
+ <ref name='xslAddCall'/>
+ </word>
+ <word name='Adds'>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltPointerListAddSize'/>
+ </word>
+ <word name='Allocate'>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ </word>
+ <word name='Apache'>
+ <ref name='XSLT_XALAN_NAMESPACE'/>
+ </word>
+ <word name='Apply'>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='Attribute'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ </word>
+ </letter>
+ <letter name='B'>
+ <word name='BIG'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ </letter>
+ <letter name='C'>
+ <word name='CDTATA'>
+ <ref name='xsltFindElemSpaceHandling'/>
+ </word>
+ <word name='Called'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltStyleGetExtData'/>
+ </word>
+ <word name='Change'>
+ <ref name='_xsltStyleBasicExpressionItem'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ </word>
+ <word name='Char'>
+ <ref name='xsltGetUTF8Char'/>
+ </word>
+ <word name='Characters:'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='Check'>
+ <ref name='IS_XSLT_REAL_NODE'/>
+ <ref name='_xsltStyleItemDocument'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltInitAllDocKeys'/>
+ <ref name='xsltIsBlank'/>
+ </word>
+ <word name='Checks'>
+ <ref name='IS_XSLT_ELEM'/>
+ <ref name='IS_XSLT_NAME'/>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ </word>
+ <word name='Clark'>
+ <ref name='XSLT_XT_NAMESPACE'/>
+ </word>
+ <word name='Clean-up'>
+ <ref name='xsltParseTemplateContent'/>
+ </word>
+ <word name='Cleanup'>
+ <ref name='xsltCleanupTemplates'/>
+ <ref name='xsltFreeLocales'/>
+ </word>
+ <word name='Common'>
+ <ref name='XSLT_ITEM_COMMON_FIELDS'/>
+ </word>
+ <word name='Compares'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
+ <word name='Compilation'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='Compile'>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='Computes'>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltInitCtxtKeys'/>
+ </word>
+ <word name='Context'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='Control'>
+ <ref name='XSLT_TRACE'/>
+ </word>
+ <word name='Convert'>
+ <ref name='xsltNumberFormat'/>
+ </word>
+ <word name='Copies'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltCopyNamespace'/>
+ </word>
+ <word name='Create'>
+ <ref name='xsltNewSecurityPrefs'/>
+ <ref name='xsltNewStylesheet'/>
+ <ref name='xsltNewTransformContext'/>
+ </word>
+ <word name='Creates'>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltNewElemPreComp'/>
+ <ref name='xsltNewLocale'/>
+ <ref name='xsltPointerListCreate'/>
+ </word>
+ <word name='Current'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='Currently'>
+ <ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
+ </word>
+ </letter>
+ <letter name='D'>
+ <word name='DTD'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='Deallocates'>
+ <ref name='xsltElemPreCompDeallocator'/>
+ </word>
+ <word name='Debugging'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='DecimalFormat'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='Display'>
+ <ref name='xsltPrintErrorContext'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='Don'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltTemplateProcess'/>
+ </word>
+ <word name='Drop'>
+ <ref name='xslDropCall'/>
+ </word>
+ <word name='Dumps'>
+ <ref name='xsltDebugDumpExtensions'/>
+ </word>
+ </letter>
+ <letter name='E'>
+ <word name='EXSLT'>
+ <ref name='xsltDocumentElem'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ </word>
+ <word name='Each'>
+ <ref name='xsltEvalUserParams'/>
+ </word>
+ <word name='Either'>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='Element'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ </word>
+ <word name='Elements'>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='Eliminate'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='Errors'>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='Evaluate'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalUserParams'/>
+ </word>
+ <word name='Evaluates'>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ </word>
+ <word name='Exaclty'>
+ <ref name='xsltGetPlainNamespace'/>
+ </word>
+ <word name='Execute'>
+ <ref name='xsltCopy'/>
+ </word>
+ <word name='Extensions'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ </letter>
+ <letter name='F'>
+ <word name='FILE'>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltDebugDumpExtensions'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveProfiling'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='FIXED'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='Fields'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ </word>
+ <word name='Finalizes'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ </word>
+ <word name='Find'>
+ <ref name='xsltDecimalFormatGetByName'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltNextImport'/>
+ </word>
+ <word name='Finds'>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetTemplate'/>
+ </word>
+ <word name='Flag'>
+ <ref name='_xsltFormatNumberInfo'/>
+ </word>
+ <word name='For'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltEvalOneUserParam'/>
+ </word>
+ <word name='Forwards-compatible'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='Fragment'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='Fragments'>
+ <ref name='_xsltStackElem'/>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltFreeRVTs'/>
+ </word>
+ <word name='Free'>
+ <ref name='xsltFreeAVTList'/>
+ <ref name='xsltFreeAttributeSetsHashes'/>
+ <ref name='xsltFreeCompMatchList'/>
+ <ref name='xsltFreeCtxtExts'/>
+ <ref name='xsltFreeDocumentKeys'/>
+ <ref name='xsltFreeDocuments'/>
+ <ref name='xsltFreeExts'/>
+ <ref name='xsltFreeGlobalVariables'/>
+ <ref name='xsltFreeKeys'/>
+ <ref name='xsltFreeNamespaceAliasHashes'/>
+ <ref name='xsltFreeSecurityPrefs'/>
+ <ref name='xsltFreeStackElemList'/>
+ <ref name='xsltFreeStylePreComps'/>
+ <ref name='xsltFreeStylesheet'/>
+ <ref name='xsltFreeTemplateHashes'/>
+ <ref name='xsltFreeTransformContext'/>
+ </word>
+ <word name='Frees'>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltFreeRVTs'/>
+ <ref name='xsltFreeStyleDocuments'/>
+ <ref name='xsltPointerListFree'/>
+ </word>
+ <word name='Function'>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityForbid'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetSortFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ </letter>
+ <letter name='G'>
+ <word name='General'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='Get'>
+ <ref name='xsltDebugGetDefaultTrace'/>
+ <ref name='xsltGetDebuggerStatus'/>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ </word>
+ <word name='Global'>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ </letter>
+ <letter name='I'>
+ <word name='INTERNAL'>
+ <ref name='xsltInitAllDocKeys'/>
+ </word>
+ <word name='IObuf'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='ISO'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='Implement'>
+ <ref name='xsltDocumentFunction'/>
+ <ref name='xsltElementAvailableFunction'/>
+ <ref name='xsltFormatNumberFunction'/>
+ <ref name='xsltFunctionAvailableFunction'/>
+ <ref name='xsltFunctionNodeSet'/>
+ <ref name='xsltGenerateIdFunction'/>
+ <ref name='xsltKeyFunction'/>
+ <ref name='xsltSystemPropertyFunction'/>
+ <ref name='xsltUnparsedEntityURIFunction'/>
+ </word>
+ <word name='Indicates'>
+ <ref name='_xsltEffectiveNs'/>
+ </word>
+ <word name='Indicator'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='Initialize'>
+ <ref name='xsltInitCtxtExts'/>
+ <ref name='xsltInitGlobals'/>
+ </word>
+ <word name='Initializes'>
+ <ref name='xsltInit'/>
+ <ref name='xsltInitElemPreComp'/>
+ </word>
+ <word name='Internal'>
+ <ref name='XSLT_FAST_IF'/>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ <ref name='XSLT_REFACTORED_VARS'/>
+ <ref name='XSLT_REFACTORED_XPATHCOMP'/>
+ <ref name='xsltFreeRVTs'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk1'>
+ <letter name='J'>
+ <word name='JDK'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='James'>
+ <ref name='XSLT_XT_NAMESPACE'/>
+ </word>
+ </letter>
+ <letter name='K'>
+ <word name='Kay'>
+ <ref name='XSLT_SAXON_NAMESPACE'/>
+ </word>
+ <word name='Key'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ </letter>
+ <letter name='L'>
+ <word name='LR-element'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ </word>
+ <word name='LRE'>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ </word>
+ <word name='Length'>
+ <ref name='xsltSaveResultToString'/>
+ </word>
+ <word name='Libexslt'>
+ <ref name='xsltGetPlainNamespace'/>
+ </word>
+ <word name='Libxslt'>
+ <ref name='xsltGetPlainNamespace'/>
+ </word>
+ <word name='Literal'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='Load'>
+ <ref name='xsltParseStylesheetFile'/>
+ </word>
+ <word name='LocationPathPattern'>
+ <ref name='xsltCompilePattern'/>
+ </word>
+ <word name='Looks'>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltExtModuleElementLookup'/>
+ <ref name='xsltExtModuleElementPreComputeLookup'/>
+ <ref name='xsltExtModuleFunctionLookup'/>
+ <ref name='xsltExtModuleTopLevelLookup'/>
+ <ref name='xsltGetKey'/>
+ </word>
+ <word name='Lookup'>
+ <ref name='xsltGetSecurityPrefs'/>
+ </word>
+ </letter>
+ <letter name='M'>
+ <word name='MUST'>
+ <ref name='xsltInitElemPreComp'/>
+ </word>
+ <word name='Macro'>
+ <ref name='CHECK_STOPPED'/>
+ <ref name='CHECK_STOPPED0'/>
+ <ref name='CHECK_STOPPEDE'/>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='XSLT_LOCALE_NONE'/>
+ <ref name='XSLT_RUNTIME_EXTRA'/>
+ <ref name='XSLT_RUNTIME_EXTRA_FREE'/>
+ <ref name='XSLT_RUNTIME_EXTRA_LST'/>
+ <ref name='XSLT_STRANGE'/>
+ <ref name='XSLT_TODO'/>
+ </word>
+ <word name='Marks'>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </word>
+ <word name='Max'>
+ <ref name='XSLT_MAX_SORT'/>
+ </word>
+ <word name='May'>
+ <ref name='_xsltDecimalFormat'/>
+ </word>
+ <word name='Maybe'>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='Meaning'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='Memory'>
+ <ref name='xsltSaveResultToString'/>
+ </word>
+ <word name='Michael'>
+ <ref name='XSLT_SAXON_NAMESPACE'/>
+ </word>
+ </letter>
+ <letter name='N'>
+ <word name='NCName'>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='NOTE'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ </word>
+ <word name='NOTE:'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='Name'>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ </word>
+ <word name='Namespace'>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='Namespaces'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='Needed'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='Norm'>
+ <ref name='XSLT_NORM_SAXON_NAMESPACE'/>
+ </word>
+ <word name='Not'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltInitCtxtKeys'/>
+ </word>
+ <word name='Not-a-number'>
+ <ref name='_xsltDecimalFormat'/>
+ </word>
+ <word name='Notation:'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='Note'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='Number'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ </letter>
+ <letter name='O'>
+ <word name='ONLY'>
+ <ref name='xsltInitAllDocKeys'/>
+ </word>
+ <word name='Obsolete'>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltTemplateProcess'/>
+ </word>
+ <word name='One'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='Otherwise'>
+ <ref name='xsltDoSortFunction'/>
+ </word>
+ <word name='Output'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ </letter>
+ <letter name='P'>
+ <word name='Parser'>
+ <ref name='xsltDocumentFunction'/>
+ <ref name='xsltElementAvailableFunction'/>
+ <ref name='xsltFormatNumberFunction'/>
+ <ref name='xsltFunctionAvailableFunction'/>
+ <ref name='xsltFunctionNodeSet'/>
+ <ref name='xsltGenerateIdFunction'/>
+ <ref name='xsltKeyFunction'/>
+ <ref name='xsltSystemPropertyFunction'/>
+ <ref name='xsltUnparsedEntityURIFunction'/>
+ </word>
+ <word name='Parses'>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltParseGlobalVariable'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='Pattern'>
+ <ref name='xsltCompilePattern'/>
+ </word>
+ <word name='Per'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='Places'>
+ <ref name='xsltLocalVariablePush'/>
+ </word>
+ <word name='Pops'>
+ <ref name='xsltLocalVariablePop'/>
+ </word>
+ <word name='Pre'>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='xsltDocumentComp'/>
+ </word>
+ <word name='Precompile'>
+ <ref name='xsltCompileAttr'/>
+ </word>
+ <word name='Precompute'>
+ <ref name='xsltStylePreCompute'/>
+ </word>
+ <word name='Precomputed'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='Precomputes'>
+ <ref name='xsltPreComputeExtModuleElement'/>
+ </word>
+ <word name='Process'>
+ <ref name='xsltApplyImports'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltAttribute'/>
+ <ref name='xsltComment'/>
+ <ref name='xsltCopyOf'/>
+ <ref name='xsltDebug'/>
+ <ref name='xsltDocumentElem'/>
+ <ref name='xsltElement'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltForEach'/>
+ <ref name='xsltMessage'/>
+ <ref name='xsltNumber'/>
+ <ref name='xsltProcessOneNode'/>
+ <ref name='xsltProcessingInstruction'/>
+ <ref name='xsltText'/>
+ <ref name='xsltValueOf'/>
+ </word>
+ <word name='Processes'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltApplyTemplates'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltCallTemplate'/>
+ <ref name='xsltChoose'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltIf'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ </word>
+ <word name='Profiling'>
+ <ref name='_xsltTemplate'/>
+ </word>
+ <word name='Provides'>
+ <ref name='xsltGetXIncludeDefault'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ </word>
+ <word name='Push'>
+ <ref name='xsltAddStackElemList'/>
+ </word>
+ </letter>
+ <letter name='Q'>
+ <word name='QName'>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='QNames'>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='QUESTION:'>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ </word>
+ </letter>
+ <letter name='R'>
+ <word name='REVISIT'>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='REVISIT:'>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='RFC'>
+ <ref name='xsltNewLocale'/>
+ </word>
+ <word name='ROUTINE'>
+ <ref name='xsltInitAllDocKeys'/>
+ </word>
+ <word name='RTF'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='RVT'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='RVTs'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='Read'>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltNamespaceAlias'/>
+ </word>
+ <word name='Register'>
+ <ref name='xsltAddTemplate'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ </word>
+ <word name='Registering'>
+ <ref name='XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <ref name='XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ </word>
+ <word name='Registers'>
+ <ref name='xsltParseStylesheetParam'/>
+ <ref name='xsltParseStylesheetVariable'/>
+ <ref name='xsltRegisterAllElement'/>
+ <ref name='xsltRegisterAllExtras'/>
+ <ref name='xsltRegisterAllFunctions'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterExtModuleElement'/>
+ <ref name='xsltRegisterExtModuleFunction'/>
+ <ref name='xsltRegisterExtModuleTopLevel'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltRegisterExtras'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterTestModule'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='Resets'>
+ <ref name='xsltPointerListClear'/>
+ </word>
+ <word name='Restore'>
+ <ref name='xsltRestoreDocumentNamespaces'/>
+ </word>
+ <word name='Result'>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltFreeRVTs'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='Retrieve'>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ </word>
+ <word name='Rule'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ </letter>
+ <letter name='S'>
+ <word name='SAX'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='SAXON'>
+ <ref name='XSLT_NORM_SAXON_NAMESPACE'/>
+ </word>
+ <word name='Sampling'>
+ <ref name='XSLT_TIMESTAMP_TICS_PER_SEC'/>
+ </word>
+ <word name='Save'>
+ <ref name='xsltSaveProfiling'/>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltSaveResultToString'/>
+ </word>
+ <word name='Saxon'>
+ <ref name='XSLT_SAXON_NAMESPACE'/>
+ </word>
+ <word name='Scaling'>
+ <ref name='_xsltFormatNumberInfo'/>
+ </word>
+ <word name='Search'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltVariableLookup'/>
+ </word>
+ <word name='Set'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='xsltDebugSetDefaultTrace'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetDefaultSecurityPrefs'/>
+ <ref name='xsltSetLoaderFunc'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ </word>
+ <word name='Should'>
+ <ref name='xsltInitCtxtKeys'/>
+ </word>
+ <word name='Shutdown'>
+ <ref name='xsltShutdownCtxtExts'/>
+ <ref name='xsltShutdownExts'/>
+ </word>
+ <word name='Signature'>
+ <ref name='xsltSortFunc'/>
+ <ref name='xsltTransformFunction'/>
+ </word>
+ <word name='Similar'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='Size'>
+ <ref name='_xsltTemplate'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='Special'>
+ <ref name='UNDEFINED_DEFAULT_NS'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='Specific'>
+ <ref name='XSLT_PAT_NO_PRIORITY'/>
+ </word>
+ <word name='Speed'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='Split'>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='Storage'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='Strip'>
+ <ref name='xsltApplyStripSpaces'/>
+ </word>
+ <word name='Structure:'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='Stylesheet'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltNewStylesheet'/>
+ </word>
+ <word name='Symbol'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk2'>
+ <letter name='T'>
+ <word name='TEMP'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='TODO:'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltStyleBasicExpressionItem'/>
+ <ref name='_xsltStyleItemApplyTemplates'/>
+ <ref name='_xsltStyleItemCallTemplate'/>
+ <ref name='_xsltStyleItemDocument'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='Template'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='Templates'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ </word>
+ <word name='Test'>
+ <ref name='xsltTestCompMatchList'/>
+ </word>
+ <word name='That'>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ </word>
+ <word name='TransformContext'>
+ <ref name='xsltNewTransformContext'/>
+ </word>
+ <word name='Transforms'>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='Tree'>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltFreeRVTs'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='Try'>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltLoadDocument'/>
+ <ref name='xsltLoadStyleDocument'/>
+ </word>
+ </letter>
+ <letter name='U'>
+ <word name='URL'>
+ <ref name='XSLT_DEFAULT_URL'/>
+ <ref name='_xsltStyleItemDocument'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='xsltParseStylesheetFile'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltSecurityCheck'/>
+ </word>
+ <word name='UTF-8'>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='UTF8'>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='Uninitializes'>
+ <ref name='xsltUninit'/>
+ </word>
+ <word name='Unregister'>
+ <ref name='xsltCleanupGlobals'/>
+ <ref name='xsltUnregisterExtModule'/>
+ </word>
+ <word name='Unregisters'>
+ <ref name='xsltUnregisterExtModuleElement'/>
+ <ref name='xsltUnregisterExtModuleFunction'/>
+ <ref name='xsltUnregisterExtModuleTopLevel'/>
+ </word>
+ <word name='Update'>
+ <ref name='xsltSetSecurityPrefs'/>
+ </word>
+ <word name='Use'>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='Used'>
+ <ref name='_xsltDecimalFormat'/>
+ <ref name='xsltCalibrateAdjust'/>
+ <ref name='xsltTimestamp'/>
+ </word>
+ <word name='User'>
+ <ref name='xsltSecurityCheck'/>
+ </word>
+ </letter>
+ <letter name='V'>
+ <word name='Value'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltCreateRVT'/>
+ </word>
+ <word name='Variable'>
+ <ref name='xsltVariableLookup'/>
+ </word>
+ </letter>
+ <letter name='W'>
+ <word name='WITH_XSLT_DEBUG_BREAKPOINTS'>
+ <ref name='xslAddCall'/>
+ </word>
+ <word name='Why'>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ </word>
+ <word name='Will'>
+ <ref name='CHECK_STOPPED'/>
+ <ref name='CHECK_STOPPED0'/>
+ <ref name='CHECK_STOPPEDE'/>
+ </word>
+ </letter>
+ <letter name='X'>
+ <word name='XALAN'>
+ <ref name='XSLT_XALAN_NAMESPACE'/>
+ </word>
+ <word name='XInclude'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltGetXIncludeDefault'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ </word>
+ <word name='XML'>
+ <ref name='_xsltNsMap'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyStripSpaces'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveResultToString'/>
+ </word>
+ <word name='XML_CAST_FPTR'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='XSLT-1'>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltDocumentElem'/>
+ </word>
+ <word name='XSLT-attributes'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ </word>
+ <word name='XSLT-copy'>
+ <ref name='xsltCopy'/>
+ </word>
+ <word name='XSLT_ERROR_SEVERITY_WARNING'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='XSLT_GET_IMPORT_PTR'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ </letter>
+ <letter name='a'>
+ <word name='absent'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='accelerators'>
+ <ref name='_xsltNumberData'/>
+ </word>
+ <word name='access'>
+ <ref name='XSLT_RUNTIME_EXTRA_LST'/>
+ </word>
+ <word name='according'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='accordingly'>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltDocumentSortFunction'/>
+ </word>
+ <word name='activated'>
+ <ref name='xsltCopyTextString'/>
+ </word>
+ <word name='actual'>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ </word>
+ <word name='actually'>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </word>
+ <word name='add'>
+ <ref name='xsltAddKey'/>
+ </word>
+ <word name='added'>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltPointerListAddSize'/>
+ </word>
+ <word name='adding'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='additionally'>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ </word>
+ <word name='address'>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ </word>
+ <word name='after'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='afterwards'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='alias'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='aliases'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltFreeNamespaceAliasHashes'/>
+ </word>
+ <word name='aliasing'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='all'>
+ <ref name='XSLT_ITEM_COMMON_FIELDS'/>
+ <ref name='XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <ref name='XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltCleanupGlobals'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltFreeCompMatchList'/>
+ <ref name='xsltFreeDocuments'/>
+ <ref name='xsltFreeRVTs'/>
+ <ref name='xsltFreeStyleDocuments'/>
+ <ref name='xsltFreeStylePreComps'/>
+ <ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltLocalVariablePop'/>
+ <ref name='xsltRegisterAllElement'/>
+ <ref name='xsltRegisterAllFunctions'/>
+ </word>
+ <word name='allocated'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltFreeCompMatchList'/>
+ <ref name='xsltFreeStackElemList'/>
+ <ref name='xsltFreeStylePreComps'/>
+ <ref name='xsltFreeStylesheet'/>
+ <ref name='xsltFreeTransformContext'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltNewStylesheet'/>
+ <ref name='xsltNewTransformContext'/>
+ <ref name='xsltPointerListClear'/>
+ <ref name='xsltSaveResultToString'/>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='allow'>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ </word>
+ <word name='allowed'>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltCheckWrite'/>
+ </word>
+ <word name='allowing'>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ </word>
+ <word name='already'>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ </word>
+ <word name='also'>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='always'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityForbid'/>
+ </word>
+ <word name='amiss'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='analyzes'>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='anchor'>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='anchored'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='another'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='any'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltInitAllDocKeys'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltProcessOneNode'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='anymore'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltDocumentSortFunction'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltInitCtxtKeys'/>
+ </word>
+ <word name='api'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='appear'>
+ <ref name='_xsltDecimalFormat'/>
+ </word>
+ <word name='appears'>
+ <ref name='_xsltFormatNumberInfo'/>
+ </word>
+ <word name='application-wide'>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ <ref name='xsltSetDefaultSecurityPrefs'/>
+ </word>
+ <word name='applied'>
+ <ref name='xslAddCall'/>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='applies'>
+ <ref name='xslHandleDebugger'/>
+ </word>
+ <word name='apply'>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='apply-imports'>
+ <ref name='xsltApplyImports'/>
+ </word>
+ <word name='apply-templates'>
+ <ref name='_xsltStyleItemApplyTemplates'/>
+ <ref name='_xsltStyleItemSort'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='xsltApplyTemplates'/>
+ </word>
+ <word name='applying'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltSaveResultToString'/>
+ </word>
+ <word name='are'>
+ <ref name='XSLT_LOCALE_NONE'/>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='argument'>
+ <ref name='XSLT_IS_TEXT_NODE'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='arguments'>
+ <ref name='xsltDocumentFunction'/>
+ <ref name='xsltElementAvailableFunction'/>
+ <ref name='xsltFormatNumberFunction'/>
+ <ref name='xsltFunctionAvailableFunction'/>
+ <ref name='xsltFunctionNodeSet'/>
+ <ref name='xsltGenerateIdFunction'/>
+ <ref name='xsltKeyFunction'/>
+ <ref name='xsltSystemPropertyFunction'/>
+ <ref name='xsltUnparsedEntityURIFunction'/>
+ </word>
+ <word name='array'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltPointerListClear'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltVariableLookup'/>
+ </word>
+ <word name='arry'>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='assign'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ </word>
+ <word name='assigned:'>
+ <ref name='_xsltStyleItemDocument'/>
+ </word>
+ <word name='associated'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltAddTemplate'/>
+ <ref name='xsltExtShutdownFunction'/>
+ <ref name='xsltFreeAVTList'/>
+ <ref name='xsltFreeDocumentKeys'/>
+ <ref name='xsltFreeGlobalVariables'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltStyleExtShutdownFunction'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ <ref name='xsltTransformFunction'/>
+ <ref name='xsltUnregisterExtModule'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ </word>
+ <word name='attached'>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltSort'/>
+ </word>
+ <word name='attempt'>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='attr'>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='attribute-set'>
+ <ref name='xsltParseStylesheetAttributeSet'/>
+ </word>
+ <word name='attribute-sets'>
+ <ref name='xsltApplyAttributeSet'/>
+ </word>
+ <word name='attributes'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltNamespaceAlias'/>
+ </word>
+ <word name='attrubute'>
+ <ref name='xsltCompileAttr'/>
+ </word>
+ <word name='automatically'>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='available'>
+ <ref name='xsltFunctionNodeSet'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='availble'>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='average='>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='avoid'>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk3'>
+ <letter name='b'>
+ <word name='bar'>
+ <ref name='XSLT_FAST_IF'/>
+ </word>
+ <word name='based'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltNewLocale'/>
+ </word>
+ <word name='basically'>
+ <ref name='xsltCompileAttr'/>
+ </word>
+ <word name='been'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='before'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='beginning'>
+ <ref name='xsltTimestamp'/>
+ </word>
+ <word name='behaviour'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='being'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xslAddCall'/>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltPrintErrorContext'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ </word>
+ <word name='between'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltResolveStylesheetAttributeSet'/>
+ </word>
+ <word name='bit'>
+ <ref name='NODE_IS_KEYED'/>
+ </word>
+ <word name='blank'>
+ <ref name='xsltParseTemplateContent'/>
+ </word>
+ <word name='blanks'>
+ <ref name='xsltIsBlank'/>
+ </word>
+ <word name='block'>
+ <ref name='xsltFreeSecurityPrefs'/>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltNewSecurityPrefs'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityForbid'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ <ref name='xsltSetDefaultSecurityPrefs'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ </word>
+ <word name='blocks'>
+ <ref name='XSLT_TODO'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltFreeStylePreComps'/>
+ </word>
+ <word name='boolean'>
+ <ref name='xsltElementAvailableFunction'/>
+ <ref name='xsltFunctionAvailableFunction'/>
+ </word>
+ <word name='both'>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='bound'>
+ <ref name='_xsltStackElem'/>
+ </word>
+ <word name='braces'>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ </word>
+ <word name='breakpoint'>
+ <ref name='xslHandleDebugger'/>
+ </word>
+ <word name='broke'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='buffer'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveResultTo'/>
+ </word>
+ <word name='build'>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='building'>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ </word>
+ <word name='built-in'>
+ <ref name='xsltInit'/>
+ <ref name='xsltRegisterAllExtras'/>
+ <ref name='xsltRegisterExtras'/>
+ </word>
+ <word name='but'>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ <ref name='XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <ref name='XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltPointerListClear'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltSort'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </word>
+ <word name='by:'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltStyleGetExtData'/>
+ </word>
+ <word name='bypass'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='byte'>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFilename'/>
+ </word>
+ <word name='bytes'>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ </word>
+ </letter>
+ <letter name='c'>
+ <word name='cache'>
+ <ref name='_xsltStackElem'/>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='calibration'>
+ <ref name='xsltCalibrateAdjust'/>
+ </word>
+ <word name='call'>
+ <ref name='xslAddCall'/>
+ <ref name='xslDropCall'/>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ <word name='call-template'>
+ <ref name='_xsltStyleItemCallTemplate'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='xsltCallTemplate'/>
+ </word>
+ <word name='callback'>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltExtModuleElementLookup'/>
+ <ref name='xsltExtModuleElementPreComputeLookup'/>
+ <ref name='xsltExtModuleTopLevelLookup'/>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltRegisterExtModuleElement'/>
+ <ref name='xsltRegisterExtModuleFunction'/>
+ <ref name='xsltRegisterExtModuleTopLevel'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ </word>
+ <word name='callbacks'>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ </word>
+ <word name='called'>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltExtInitFunction'/>
+ <ref name='xsltExtShutdownFunction'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltFreeRVTs'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ <ref name='xsltSort'/>
+ <ref name='xsltStyleExtInitFunction'/>
+ <ref name='xsltStyleExtShutdownFunction'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ </word>
+ <word name='caller'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='calls='>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='can'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltParseTemplateContent'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='cascading'>
+ <ref name='XSLT_GET_IMPORT_INT'/>
+ <ref name='XSLT_GET_IMPORT_PTR'/>
+ </word>
+ <word name='cases'>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='casting'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='catch'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='chained'>
+ <ref name='_xsltDecimalFormat'/>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='_xsltTemplate'/>
+ </word>
+ <word name='change'>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='changed'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ </word>
+ <word name='changes'>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='channel'>
+ <ref name='xsltSaveResultTo'/>
+ </word>
+ <word name='char'>
+ <ref name='xsltGetUTF8Char'/>
+ </word>
+ <word name='character'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='characters'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='chars'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='xsltIsBlank'/>
+ </word>
+ <word name='check'>
+ <ref name='CHECK_STOPPED'/>
+ <ref name='CHECK_STOPPED0'/>
+ <ref name='CHECK_STOPPEDE'/>
+ <ref name='IS_XSLT_ATTR_FAST'/>
+ <ref name='IS_XSLT_ELEM_FAST'/>
+ <ref name='NODE_IS_KEYED'/>
+ <ref name='XSLT_HAS_INTERNAL_NSMAP'/>
+ <ref name='XSLT_IS_TEXT_NODE'/>
+ <ref name='xsltSecurityCheck'/>
+ </word>
+ <word name='checking'>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ </word>
+ <word name='checks'>
+ <ref name='xsltCompileAttr'/>
+ </word>
+ <word name='child'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='xsltCopyTextString'/>
+ </word>
+ <word name='clash'>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='class:'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='cleared'>
+ <ref name='xsltPointerListClear'/>
+ </word>
+ <word name='close'>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ </word>
+ <word name='closed'>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='coalescing'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='code'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltInitCtxtKeys'/>
+ </word>
+ <word name='collected'>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </word>
+ <word name='collector'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='com'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='combination'>
+ <ref name='xsltSetCtxtParseOptions'/>
+ </word>
+ <word name='coming'>
+ <ref name='xsltCompileAttr'/>
+ </word>
+ <word name='comment'>
+ <ref name='xsltComment'/>
+ </word>
+ <word name='common'>
+ <ref name='_xsltElemPreComp'/>
+ </word>
+ <word name='comp'>
+ <ref name='xsltFreeCompMatchList'/>
+ </word>
+ <word name='compExpr'>
+ <ref name='_xsltStyleBasicExpressionItem'/>
+ </word>
+ <word name='compared'>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='comparison'>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='compatibility'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ </word>
+ <word name='compilation'>
+ <ref name='XSLT_REFACTORED_XPATHCOMP'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltParseGlobalVariable'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='compile-time'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ </word>
+ <word name='compiled'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyImports'/>
+ <ref name='xsltApplyTemplates'/>
+ <ref name='xsltCallTemplate'/>
+ <ref name='xsltChoose'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltForEach'/>
+ <ref name='xsltIf'/>
+ <ref name='xsltNormalizeCompSteps'/>
+ <ref name='xsltTransformFunction'/>
+ </word>
+ <word name='compiler'>
+ <ref name='XSLT_CCTXT'/>
+ </word>
+ <word name='compiles'>
+ <ref name='xsltParseAnyXSLTElem'/>
+ </word>
+ <word name='compiling'>
+ <ref name='xsltAllocateExtra'/>
+ </word>
+ <word name='completed'>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='compression'>
+ <ref name='xsltSaveResultToFilename'/>
+ </word>
+ <word name='computation'>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ </word>
+ <word name='computations'>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ </word>
+ <word name='compute'>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ </word>
+ <word name='computed'>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltCopy'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltInitAllDocKeys'/>
+ <ref name='xsltLoadDocument'/>
+ <ref name='xsltLoadStyleDocument'/>
+ </word>
+ <word name='construct'>
+ <ref name='xsltMessage'/>
+ </word>
+ <word name='constructor'>
+ <ref name='_xsltStackElem'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ </word>
+ <word name='consumption'>
+ <ref name='XSLT_PARSE_OPTIONS'/>
+ </word>
+ <word name='contain'>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ </word>
+ <word name='contained'>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='container'>
+ <ref name='xsltParseTemplateContent'/>
+ </word>
+ <word name='containing'>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltMessage'/>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ </word>
+ <word name='contains'>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='content'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ <ref name='xsltParseTemplateContent'/>
+ <ref name='xsltPointerListClear'/>
+ <ref name='xsltPointerListFree'/>
+ </word>
+ <word name='content-model'>
+ <ref name='xsltParseTemplateContent'/>
+ </word>
+ <word name='contexts'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='control'>
+ <ref name='xslHandleDebugger'/>
+ </word>
+ <word name='converts'>
+ <ref name='xsltEvalTemplateString'/>
+ </word>
+ <word name='copied'>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltGetUTF8Char'/>
+ </word>
+ <word name='copies'>
+ <ref name='xsltAttrTemplateProcess'/>
+ </word>
+ <word name='copy'>
+ <ref name='_xsltStyleItemCopy'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='copy-of'>
+ <ref name='_xsltStyleItemApplyTemplates'/>
+ <ref name='_xsltStyleItemSort'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='xsltCopyOf'/>
+ </word>
+ <word name='copying'>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='correct'>
+ <ref name='xsltCalibrateAdjust'/>
+ </word>
+ <word name='corresponding'>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltNamespaceAlias'/>
+ </word>
+ <word name='created'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='creating'>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='creation'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ </word>
+ <word name='cur'>
+ <ref name='xslHandleDebugger'/>
+ </word>
+ <word name='curly'>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ </word>
+ <word name='currently'>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk4'>
+ <letter name='d'>
+ <word name='data'>
+ <ref name='_xsltRuntimeExtra'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltExtInitFunction'/>
+ <ref name='xsltExtShutdownFunction'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltFreeCtxtExts'/>
+ <ref name='xsltFreeGlobalVariables'/>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltInitCtxtExts'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltNumberFormat'/>
+ <ref name='xsltPreComputeExtModuleElement'/>
+ <ref name='xsltStyleExtInitFunction'/>
+ <ref name='xsltStyleExtShutdownFunction'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ <ref name='xsltTimestamp'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ </word>
+ <word name='deallocated'>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ </word>
+ <word name='deallocation'>
+ <ref name='_xsltRuntimeExtra'/>
+ </word>
+ <word name='deallocator'>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='xsltInitElemPreComp'/>
+ </word>
+ <word name='dealy'>
+ <ref name='xsltCalibrateAdjust'/>
+ </word>
+ <word name='debug'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltDebug'/>
+ <ref name='xsltDebugGetDefaultTrace'/>
+ <ref name='xsltDebugSetDefaultTrace'/>
+ </word>
+ <word name='debugger'>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ </word>
+ <word name='debugging'>
+ <ref name='xslHandleDebugger'/>
+ </word>
+ <word name='debugtrace'>
+ <ref name='XSLT_TRACE'/>
+ </word>
+ <word name='decimal'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='decimal-format'>
+ <ref name='xsltDecimalFormatGetByName'/>
+ </word>
+ <word name='declaration'>
+ <ref name='xsltCopyNamespace'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltParseGlobalParam'/>
+ <ref name='xsltParseGlobalVariable'/>
+ <ref name='xsltParseStylesheetParam'/>
+ </word>
+ <word name='declared'>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltCopyNamespace'/>
+ </word>
+ <word name='declaring'>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='default'>
+ <ref name='XSLT_DEFAULT_VERSION'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltDebugGetDefaultTrace'/>
+ <ref name='xsltDebugSetDefaultTrace'/>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltGetXIncludeDefault'/>
+ <ref name='xsltRegisterAllElement'/>
+ <ref name='xsltRegisterAllFunctions'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ <ref name='xsltSetDefaultSecurityPrefs'/>
+ <ref name='xsltSetLoaderFunc'/>
+ <ref name='xsltSetSortFunc'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ </word>
+ <word name='define'>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='XSLT_FAST_IF'/>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ <ref name='XSLT_REFACTORED_VARS'/>
+ <ref name='XSLT_REFACTORED_XPATHCOMP'/>
+ <ref name='XSLT_RUNTIME_EXTRA'/>
+ </word>
+ <word name='defined'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xslAddCall'/>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='definition'>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltInitCtxtKey'/>
+ </word>
+ <word name='definitions'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='dependent'>
+ <ref name='xsltNewLocale'/>
+ </word>
+ <word name='deprecated'>
+ <ref name='xsltRegisterExtras'/>
+ </word>
+ <word name='depth'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltVarInfo'/>
+ <ref name='xsltLocalVariablePop'/>
+ </word>
+ <word name='derived'>
+ <ref name='xsltInitElemPreComp'/>
+ </word>
+ <word name='description'>
+ <ref name='xsltEvalOneUserParam'/>
+ </word>
+ <word name='descriptions'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='descriptor'>
+ <ref name='xsltSaveResultToFd'/>
+ </word>
+ <word name='desired'>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltGetExtInfo'/>
+ </word>
+ <word name='details'>
+ <ref name='xsltEvalOneUserParam'/>
+ </word>
+ <word name='detected'>
+ <ref name='XSLT_STRANGE'/>
+ </word>
+ <word name='dict'>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='dictionary'>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='dictionary:'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='different'>
+ <ref name='XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <ref name='XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='digit'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='directly'>
+ <ref name='xsltSort'/>
+ </word>
+ <word name='directories'>
+ <ref name='xsltCheckWrite'/>
+ </word>
+ <word name='disable-escaping'>
+ <ref name='xsltCopyTextString'/>
+ </word>
+ <word name='disabled'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='disattached'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ </word>
+ <word name='discard'>
+ <ref name='xsltGetUTF8Char'/>
+ </word>
+ <word name='display'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='distinct'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='doc'>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='docs'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='doctype-public'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='doctype-system'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='documents'>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltFreeDocuments'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ </word>
+ <word name='does'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltPointerListClear'/>
+ <ref name='xsltPointerListFree'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ </word>
+ <word name='doesn'>
+ <ref name='xsltTestCompMatchList'/>
+ </word>
+ <word name='done'>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='down'>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='dump'>
+ <ref name='xsltProfileStylesheet'/>
+ </word>
+ <word name='dunno'>
+ <ref name='_xsltEffectiveNs'/>
+ </word>
+ <word name='during'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltSortFunc'/>
+ </word>
+ </letter>
+ <letter name='e'>
+ <word name='eclared'>
+ <ref name='_xsltEffectiveNs'/>
+ </word>
+ <word name='effect'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='either'>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='element-available'>
+ <ref name='xsltElementAvailableFunction'/>
+ </word>
+ <word name='elements'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltDebugDumpExtensions'/>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltFreeCompMatchList'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ <ref name='xsltRegisterAllElement'/>
+ <ref name='xsltTransformFunction'/>
+ </word>
+ <word name='else'>
+ <ref name='xsltGetExtInfo'/>
+ </word>
+ <word name='emitted'>
+ <ref name='XSLT_TRACE'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='empty'>
+ <ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
+ </word>
+ <word name='enable'>
+ <ref name='XSLT_FAST_IF'/>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ <ref name='XSLT_REFACTORED_VARS'/>
+ <ref name='XSLT_REFACTORED_XPATHCOMP'/>
+ </word>
+ <word name='enabled'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ </word>
+ <word name='encoded'>
+ <ref name='xsltGetUTF8Char'/>
+ </word>
+ <word name='encoding'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='encountering'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='end'>
+ <ref name='_xsltElemPreComp'/>
+ </word>
+ <word name='engine'>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ </word>
+ <word name='entity'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='entry'>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltNormalizeCompSteps'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </word>
+ <word name='episode'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='equal'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
+ <word name='error:'>
+ <ref name='CHECK_STOPPEDE'/>
+ </word>
+ <word name='errors'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='establish'>
+ <ref name='xsltCompileAttr'/>
+ </word>
+ <word name='etc'>
+ <ref name='xsltInit'/>
+ </word>
+ <word name='eval'>
+ <ref name='_xsltStackElem'/>
+ </word>
+ <word name='evaluate'>
+ <ref name='xsltEvalXPathPredicate'/>
+ </word>
+ <word name='evaluated'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='evaluates'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltParseStylesheetParam'/>
+ <ref name='xsltParseStylesheetVariable'/>
+ </word>
+ <word name='evaluation'>
+ <ref name='_xsltStackElem'/>
+ </word>
+ <word name='everything'>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='example'>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ </word>
+ <word name='except'>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ </word>
+ <word name='excluded'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='excluded-result-prefixes'>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ </word>
+ <word name='exctract'>
+ <ref name='xsltApplyAttributeSet'/>
+ </word>
+ <word name='executed'>
+ <ref name='xslHandleDebugger'/>
+ </word>
+ <word name='execution'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='exension'>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ </word>
+ <word name='existent'>
+ <ref name='xsltCopyTextString'/>
+ </word>
+ <word name='existing'>
+ <ref name='xsltInitElemPreComp'/>
+ </word>
+ <word name='exists'>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ </word>
+ <word name='exit'>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='exiting'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='exits'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='expect'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='expressed'>
+ <ref name='XSLT_PAT_NO_PRIORITY'/>
+ </word>
+ <word name='expression'>
+ <ref name='_xsltStyleBasicExpressionItem'/>
+ <ref name='_xsltStyleItemApplyTemplates'/>
+ <ref name='_xsltStyleItemIf'/>
+ <ref name='_xsltStyleItemSort'/>
+ <ref name='_xsltStyleItemValueOf'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='expressions'>
+ <ref name='XSLT_REFACTORED_XPATHCOMP'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='exsl:function'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='exslt:function'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='exsltFuncFunctionFunction'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ </word>
+ <word name='extInfos'>
+ <ref name='xsltGetExtInfo'/>
+ </word>
+ <word name='extending'>
+ <ref name='xsltInitElemPreComp'/>
+ </word>
+ <word name='extension-element-prefixes'>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ </word>
+ <word name='extensions'>
+ <ref name='XSLT_LIBXSLT_NAMESPACE'/>
+ <ref name='XSLT_NORM_SAXON_NAMESPACE'/>
+ <ref name='XSLT_SAXON_NAMESPACE'/>
+ <ref name='XSLT_XALAN_NAMESPACE'/>
+ <ref name='XSLT_XT_NAMESPACE'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltFreeExts'/>
+ <ref name='xsltInit'/>
+ <ref name='xsltInitGlobals'/>
+ <ref name='xsltRegisterAllExtras'/>
+ <ref name='xsltRegisterExtras'/>
+ </word>
+ <word name='external'>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='extra'>
+ <ref name='XSLT_RUNTIME_EXTRA'/>
+ <ref name='XSLT_RUNTIME_EXTRA_FREE'/>
+ <ref name='XSLT_RUNTIME_EXTRA_LST'/>
+ <ref name='_xsltRuntimeExtra'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ <ref name='xsltProcessOneNode'/>
+ <ref name='xsltTransformError'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='extract'>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='extras'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk5'>
+ <letter name='f'>
+ <word name='factor'>
+ <ref name='xsltSaveResultToFilename'/>
+ </word>
+ <word name='failure'>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltAddStackElemList'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltInitAllDocKeys'/>
+ <ref name='xsltParseStylesheetImport'/>
+ <ref name='xsltParseStylesheetInclude'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltTestCompMatchList'/>
+ </word>
+ <word name='failures'>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetPlainNamespace'/>
+ </word>
+ <word name='fast'>
+ <ref name='xsltCompilePattern'/>
+ </word>
+ <word name='fields'>
+ <ref name='XSLT_ITEM_COMMON_FIELDS'/>
+ <ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='file'>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltSecurityCheck'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='filename'>
+ <ref name='xsltParseStylesheetFile'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveResultToFilename'/>
+ </word>
+ <word name='files'>
+ <ref name='XSLT_PARSE_OPTIONS'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='find'>
+ <ref name='xsltDecimalFormatGetByName'/>
+ <ref name='xsltFindDocument'/>
+ </word>
+ <word name='fine'>
+ <ref name='xsltParseAnyXSLTElem'/>
+ </word>
+ <word name='first'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='fixup'>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetPlainNamespace'/>
+ </word>
+ <word name='flag'>
+ <ref name='XSLT_STRANGE'/>
+ <ref name='XSLT_TODO'/>
+ </word>
+ <word name='flags'>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='following'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='foo'>
+ <ref name='XSLT_FAST_IF'/>
+ </word>
+ <word name='for-each'>
+ <ref name='xsltForEach'/>
+ </word>
+ <word name='forbid'>
+ <ref name='xsltSecurityForbid'/>
+ </word>
+ <word name='force'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='form'>
+ <ref name='_xsltStackElem'/>
+ <ref name='xsltCompilePattern'/>
+ </word>
+ <word name='format'>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltNumberFormat'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='format-number'>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltFormatNumberFunction'/>
+ </word>
+ <word name='formats'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='formatting'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltNumberFormat'/>
+ </word>
+ <word name='forwards-compatible'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ </word>
+ <word name='found'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltCalibrateAdjust'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltExtModuleElementLookup'/>
+ <ref name='xsltExtModuleElementPreComputeLookup'/>
+ <ref name='xsltExtModuleFunctionLookup'/>
+ <ref name='xsltExtModuleTopLevelLookup'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetExtInfo'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltNewLocale'/>
+ <ref name='xsltVariableLookup'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </word>
+ <word name='fptr'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='fraction'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='fractional'>
+ <ref name='_xsltFormatNumberInfo'/>
+ </word>
+ <word name='fraction}{suffix}'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='fragment'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='fragments'>
+ <ref name='XSLT_IS_RES_TREE_FRAG'/>
+ <ref name='XSLT_MARK_RES_TREE_FRAG'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </word>
+ <word name='free'>
+ <ref name='XSLT_RUNTIME_EXTRA_FREE'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltElemPreCompDeallocator'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltFreeSecurityPrefs'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltPointerListClear'/>
+ <ref name='xsltPointerListFree'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='freed'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltPointerListFree'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='frees'>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='full'>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='function-available'>
+ <ref name='xsltFunctionAvailableFunction'/>
+ </word>
+ <word name='function-calling'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ </word>
+ <word name='functions'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltDebugDumpExtensions'/>
+ <ref name='xsltRegisterAllFunctions'/>
+ </word>
+ <word name='future'>
+ <ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ </letter>
+ <letter name='g'>
+ <word name='garbage'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='gathering'>
+ <ref name='xsltTimestamp'/>
+ </word>
+ <word name='gcc'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='gcc4'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='general'>
+ <ref name='XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <ref name='XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ </word>
+ <word name='generally'>
+ <ref name='xsltInitElemPreComp'/>
+ </word>
+ <word name='generate'>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='generate-id'>
+ <ref name='xsltGenerateIdFunction'/>
+ </word>
+ <word name='generated'>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveResultToString'/>
+ </word>
+ <word name='generates'>
+ <ref name='xsltCompilePattern'/>
+ </word>
+ <word name='get'>
+ <ref name='XSLT_CCTXT'/>
+ <ref name='XSLT_GET_INTERNAL_NSMAP'/>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetSecurityPrefs'/>
+ </word>
+ <word name='given'>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltFreeStyleDocuments'/>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltLocalVariablePop'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ <ref name='xsltVariableLookup'/>
+ </word>
+ <word name='gives'>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='giving'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ </word>
+ <word name='global'>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltCleanupGlobals'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltFreeGlobalVariables'/>
+ <ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltInitGlobals'/>
+ <ref name='xsltParseGlobalVariable'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltSetSortFunc'/>
+ </word>
+ <word name='goto'>
+ <ref name='CHECK_STOPPEDE'/>
+ </word>
+ <word name='grafted'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ </word>
+ <word name='group'>
+ <ref name='_xsltFormatNumberInfo'/>
+ </word>
+ <word name='grouping'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk6'>
+ <letter name='h'>
+ <word name='handle'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetLoaderFunc'/>
+ </word>
+ <word name='handler'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetSortFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ <word name='handles'>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='handling'>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ <word name='hard-wire'>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='has'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='hash'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltGetExtInfo'/>
+ <ref name='xsltNormalizeCompSteps'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ </word>
+ <word name='hashtable'>
+ <ref name='xsltNormalizeCompSteps'/>
+ </word>
+ <word name='have'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltEvalOneUserParam'/>
+ </word>
+ <word name='hence'>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='hold'>
+ <ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
+ <ref name='_xsltElemPreComp'/>
+ </word>
+ <word name='holding'>
+ <ref name='_xsltNsMap'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetQNameURI2'/>
+ </word>
+ <word name='holds'>
+ <ref name='xsltInitCtxtKey'/>
+ </word>
+ <word name='hosting'>
+ <ref name='xsltEvalAVT'/>
+ </word>
+ <word name='how'>
+ <ref name='_xsltTemplate'/>
+ </word>
+ <word name='href'>
+ <ref name='xsltGetNamespace'/>
+ </word>
+ <word name='html'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='http:'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ </letter>
+ <letter name='i'>
+ <word name='identifier'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
+ <word name='ignorable'>
+ <ref name='xsltApplyStripSpaces'/>
+ <ref name='xsltIsBlank'/>
+ <ref name='xsltParseTemplateContent'/>
+ </word>
+ <word name='implementation'>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ </word>
+ <word name='implemented'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='import'>
+ <ref name='XSLT_GET_IMPORT_INT'/>
+ <ref name='XSLT_GET_IMPORT_PTR'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltNextImport'/>
+ <ref name='xsltParseStylesheetImport'/>
+ </word>
+ <word name='imported'>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltNormalizeCompSteps'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ </word>
+ <word name='imports'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltCleanupTemplates'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='in-scope'>
+ <ref name='XSLT_ITEM_NSINSCOPE_FIELDS'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ </word>
+ <word name='include'>
+ <ref name='xsltParseStylesheetInclude'/>
+ </word>
+ <word name='included'>
+ <ref name='xsltSaveResultToFilename'/>
+ </word>
+ <word name='includes'>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='inclusive'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='indented'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='index'>
+ <ref name='nr'/>
+ </word>
+ <word name='indicating'>
+ <ref name='XSLT_LOCALE_NONE'/>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ <word name='indicator'>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ </word>
+ <word name='info'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltInitCtxtKeys'/>
+ </word>
+ <word name='information'>
+ <ref name='XSLT_RUNTIME_EXTRA'/>
+ <ref name='XSLT_RUNTIME_EXTRA_FREE'/>
+ <ref name='XSLT_RUNTIME_EXTRA_LST'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ <ref name='xsltAttribute'/>
+ <ref name='xsltCallTemplate'/>
+ <ref name='xsltChoose'/>
+ <ref name='xsltComment'/>
+ <ref name='xsltCopy'/>
+ <ref name='xsltCopyOf'/>
+ <ref name='xsltDocumentElem'/>
+ <ref name='xsltElement'/>
+ <ref name='xsltForEach'/>
+ <ref name='xsltIf'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltNumber'/>
+ <ref name='xsltParseStylesheetOutput'/>
+ <ref name='xsltProcessingInstruction'/>
+ <ref name='xsltSort'/>
+ <ref name='xsltText'/>
+ <ref name='xsltTransformFunction'/>
+ <ref name='xsltValueOf'/>
+ </word>
+ <word name='informations'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltDebug'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltNumberFormat'/>
+ <ref name='xsltSaveProfiling'/>
+ </word>
+ <word name='infos'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='xsltFindDocument'/>
+ </word>
+ <word name='inherited'>
+ <ref name='_xsltTemplate'/>
+ </word>
+ <word name='initial'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltPointerListAddSize'/>
+ <ref name='xsltPointerListCreate'/>
+ </word>
+ <word name='initialization'>
+ <ref name='xsltExtInitFunction'/>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ <ref name='xsltStyleExtInitFunction'/>
+ </word>
+ <word name='initialized'>
+ <ref name='xsltInitCtxtExts'/>
+ <ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltNewElemPreComp'/>
+ </word>
+ <word name='initializes'>
+ <ref name='xsltNewElemPreComp'/>
+ </word>
+ <word name='initiate'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='input'>
+ <ref name='xsltApplyStripSpaces'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltInitCtxtKeys'/>
+ <ref name='xsltNewTransformContext'/>
+ <ref name='xsltTransformFunction'/>
+ </word>
+ <word name='insertion'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='inspected'>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </word>
+ <word name='instances'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='instantiated'>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='instead'>
+ <ref name='xsltRegisterExtras'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='instructions'>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltParseAnyXSLTElem'/>
+ </word>
+ <word name='integer'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='intended'>
+ <ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='interest'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='interface'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='intergers'>
+ <ref name='XSLT_GET_IMPORT_INT'/>
+ </word>
+ <word name='internal'>
+ <ref name='UNDEFINED_DEFAULT_NS'/>
+ <ref name='XSLT_IS_RES_TREE_FRAG'/>
+ <ref name='XSLT_MARK_RES_TREE_FRAG'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltCreateRVT'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltParseAnyXSLTElem'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='internalized'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='internally'>
+ <ref name='XSLT_STRANGE'/>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='interpretation'>
+ <ref name='_xsltDecimalFormat'/>
+ </word>
+ <word name='interpreter'>
+ <ref name='xsltXPathGetTransformContext'/>
+ </word>
+ <word name='interpretor'>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </word>
+ <word name='into'>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='invoking'>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='issues'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='item'>
+ <ref name='_xsltEffectiveNs'/>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xslDropCall'/>
+ <ref name='xsltPointerListAddSize'/>
+ </word>
+ <word name='item1'>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='item2|item3'>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='items'>
+ <ref name='XSLT_ITEM_COMMON_FIELDS'/>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='its'>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltFreeGlobalVariables'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltParseGlobalParam'/>
+ <ref name='xsltParseStylesheetParam'/>
+ <ref name='xsltParseStylesheetVariable'/>
+ </word>
+ <word name='itself'>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk7'>
+ <letter name='j'>
+ <word name='java'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='jdk'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='just'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ </letter>
+ <letter name='k'>
+ <word name='keep'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='keeping'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='kept'>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ <ref name='_xsltDocument'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='key'>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltKeyFunction'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ </word>
+ <word name='keys'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltFreeDocumentKeys'/>
+ <ref name='xsltFreeKeys'/>
+ <ref name='xsltInitAllDocKeys'/>
+ <ref name='xsltInitCtxtKeys'/>
+ </word>
+ <word name='kind'>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ <word name='known'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ </letter>
+ <letter name='l'>
+ <word name='label'>
+ <ref name='CHECK_STOPPEDE'/>
+ </word>
+ <word name='language'>
+ <ref name='xsltNewLocale'/>
+ <ref name='xsltTransformFunction'/>
+ </word>
+ <word name='last'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltNextImport'/>
+ </word>
+ <word name='later'>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='lead'>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='leaks'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ </word>
+ <word name='left'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='len'>
+ <ref name='xsltGetUTF8Char'/>
+ </word>
+ <word name='level'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltDebugGetDefaultTrace'/>
+ <ref name='xsltDebugSetDefaultTrace'/>
+ <ref name='xsltLocalVariablePush'/>
+ </word>
+ <word name='libexsl'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='library'>
+ <ref name='xsltCleanupGlobals'/>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ <ref name='xsltUnregisterExtModule'/>
+ </word>
+ <word name='libxml2'>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='libxslt'>
+ <ref name='XSLT_LIBXSLT_NAMESPACE'/>
+ <ref name='XSLT_REFACTORED_VARS'/>
+ <ref name='xsltFunctionNodeSet'/>
+ </word>
+ <word name='lifespan'>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='lifetime'>
+ <ref name='_xsltStackElem'/>
+ </word>
+ <word name='like'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltSecurityCheck'/>
+ <ref name='xsltTransformFunction'/>
+ </word>
+ <word name='line'>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='literal'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltEffectiveNs'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltParseTemplateContent'/>
+ </word>
+ <word name='literally'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='load'>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltLoadDocument'/>
+ <ref name='xsltLoadStyleDocument'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltSetLoaderFunc'/>
+ </word>
+ <word name='loaded'>
+ <ref name='xsltFreeDocuments'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ <ref name='xsltShutdownCtxtExts'/>
+ <ref name='xsltShutdownExts'/>
+ </word>
+ <word name='loading'>
+ <ref name='XSLT_PARSE_OPTIONS'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ <ref name='xsltSetLoaderFunc'/>
+ </word>
+ <word name='local'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltParseStylesheetParam'/>
+ <ref name='xsltParseStylesheetVariable'/>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='locale'>
+ <ref name='XSLT_LOCALE_NONE'/>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltFreeLocales'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltNewLocale'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='localname'>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='locate'>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='location'>
+ <ref name='_xsltStackElem'/>
+ </word>
+ <word name='look'>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltGetTemplate'/>
+ </word>
+ <word name='looks'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetExtInfo'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='lookup'>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetSecurityPrefs'/>
+ </word>
+ <word name='lost'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ </letter>
+ <letter name='m'>
+ <word name='macro'>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='XSLT_GET_IMPORT_INT'/>
+ <ref name='XSLT_GET_IMPORT_PTR'/>
+ <ref name='XSLT_IS_RES_TREE_FRAG'/>
+ <ref name='XSLT_MARK_RES_TREE_FRAG'/>
+ <ref name='XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <ref name='XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='made'>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltIsBlank'/>
+ </word>
+ <word name='main'>
+ <ref name='_xsltDocument'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='make'>
+ <ref name='xsltAllocateExtraCtxt'/>
+ </word>
+ <word name='makes'>
+ <ref name='xsltCheckWrite'/>
+ </word>
+ <word name='map'>
+ <ref name='XSLT_GET_INTERNAL_NSMAP'/>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
+ </word>
+ <word name='mapped'>
+ <ref name='_xsltNsMap'/>
+ </word>
+ <word name='mapping'>
+ <ref name='XSLT_HAS_INTERNAL_NSMAP'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ </word>
+ <word name='marked'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ </word>
+ <word name='mask'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltDebugGetDefaultTrace'/>
+ <ref name='xsltDebugSetDefaultTrace'/>
+ </word>
+ <word name='massive'>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='match'>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltNormalizeCompSteps'/>
+ </word>
+ <word name='match='>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='matches'>
+ <ref name='xsltTestCompMatchList'/>
+ </word>
+ <word name='matching'>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltNewLocale'/>
+ </word>
+ <word name='may'>
+ <ref name='_xsltDecimalFormat'/>
+ <ref name='xslAddCall'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='means'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ <word name='mechanism'>
+ <ref name='xsltFreeTemplateHashes'/>
+ </word>
+ <word name='mechanisms'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='memory'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltFreeAVTList'/>
+ <ref name='xsltFreeAttributeSetsHashes'/>
+ <ref name='xsltFreeCompMatchList'/>
+ <ref name='xsltFreeExts'/>
+ <ref name='xsltFreeKeys'/>
+ <ref name='xsltFreeNamespaceAliasHashes'/>
+ <ref name='xsltFreeStackElemList'/>
+ <ref name='xsltFreeStylePreComps'/>
+ <ref name='xsltFreeStylesheet'/>
+ <ref name='xsltFreeTemplateHashes'/>
+ <ref name='xsltFreeTransformContext'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ </word>
+ <word name='message'>
+ <ref name='xsltMessage'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='messages'>
+ <ref name='XSLT_TRACE'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='method'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='might'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='mille'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='milliseconds'>
+ <ref name='xsltTimestamp'/>
+ </word>
+ <word name='mode'>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltAddTemplate'/>
+ </word>
+ <word name='mode='>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='models'>
+ <ref name='xsltParseAnyXSLTElem'/>
+ </word>
+ <word name='modified'>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='modules'>
+ <ref name='XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <ref name='XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ <ref name='xsltInitCtxtExts'/>
+ <ref name='xsltShutdownCtxtExts'/>
+ <ref name='xsltShutdownExts'/>
+ </word>
+ <word name='more'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='multiple'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='multiply'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='must'>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk8'>
+ <letter name='n'>
+ <word name='name='>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='nameURI'>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='named'>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='names'>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='namespace-alias'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='namespaces'>
+ <ref name='XSLT_ITEM_NSINSCOPE_FIELDS'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltKeyDef'/>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltFreeNamespaceAliasHashes'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
+ </word>
+ <word name='navigational'>
+ <ref name='XSLT_ITEM_NAVIGATION_FIELDS'/>
+ </word>
+ <word name='necessary'>
+ <ref name='xsltCheckWrite'/>
+ </word>
+ <word name='need'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='_xsltStyleItemDocument'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltInitAllDocKeys'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='needed'>
+ <ref name='_xsltEffectiveNs'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltCompileAttr'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </word>
+ <word name='needs'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltGetTemplate'/>
+ </word>
+ <word name='negative'>
+ <ref name='xsltCalibrateAdjust'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='nested'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='newly'>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltNewStylesheet'/>
+ <ref name='xsltNewTransformContext'/>
+ </word>
+ <word name='next'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='_xsltEffectiveNs'/>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='_xsltNsAlias'/>
+ <ref name='_xsltNsList'/>
+ <ref name='_xsltNsMap'/>
+ <ref name='_xsltVarInfo'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltNextImport'/>
+ </word>
+ <word name='node-set'>
+ <ref name='xsltDocumentFunction'/>
+ <ref name='xsltFunctionNodeSet'/>
+ <ref name='xsltKeyFunction'/>
+ <ref name='xsltSortFunc'/>
+ </word>
+ <word name='node-set?'>
+ <ref name='xsltDocumentFunction'/>
+ <ref name='xsltGenerateIdFunction'/>
+ </word>
+ <word name='node-trees'>
+ <ref name='xsltFreeStyleDocuments'/>
+ </word>
+ <word name='nodes'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltParseTemplateContent'/>
+ <ref name='xsltSort'/>
+ </word>
+ <word name='nodeset'>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltGetKey'/>
+ </word>
+ <word name='non'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ </word>
+ <word name='non-NULL'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltGetTemplate'/>
+ </word>
+ <word name='non-excluded'>
+ <ref name='_xsltTemplate'/>
+ </word>
+ <word name='non-wellformed'>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='none'>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='nor'>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='normal'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ </word>
+ <word name='normalize'>
+ <ref name='xsltNormalizeCompSteps'/>
+ </word>
+ <word name='normally'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ </word>
+ <word name='nothing'>
+ <ref name='xsltApplyAttributeSet'/>
+ </word>
+ <word name='now'>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ </word>
+ <word name='nowhere'>
+ <ref name='_xsltStyleItemDocument'/>
+ </word>
+ <word name='ns-decl'>
+ <ref name='_xsltNsMap'/>
+ </word>
+ <word name='ns-declaration'>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='ns-declarations'>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='ns-name'>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='ns-prefix'>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='ns-prefixes'>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='null'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ </word>
+ </letter>
+ <letter name='o'>
+ <word name='object'>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='xsltDocumentFunction'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltKeyFunction'/>
+ <ref name='xsltSystemPropertyFunction'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='obsolete'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltDocumentSortFunction'/>
+ </word>
+ <word name='obtained'>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltSaveResultToString'/>
+ </word>
+ <word name='occcur'>
+ <ref name='xslHandleDebugger'/>
+ </word>
+ <word name='occurences'>
+ <ref name='_xsltFormatNumberInfo'/>
+ </word>
+ <word name='off'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xslDropCall'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='often'>
+ <ref name='_xsltTemplate'/>
+ </word>
+ <word name='old'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ </word>
+ <word name='on-demand'>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ </word>
+ <word name='once'>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='one'>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltNextImport'/>
+ <ref name='xsltNumberFormat'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltTestCompMatchList'/>
+ </word>
+ <word name='one:'>
+ <ref name='IS_XSLT_REAL_NODE'/>
+ </word>
+ <word name='ones'>
+ <ref name='xsltCleanupTemplates'/>
+ </word>
+ <word name='only'>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltExtElementLookup'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='onto'>
+ <ref name='xsltAddStackElemList'/>
+ <ref name='xsltLocalVariablePush'/>
+ </word>
+ <word name='opaque'>
+ <ref name='xsltNewLocale'/>
+ </word>
+ <word name='open'>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ </word>
+ <word name='operation'>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityForbid'/>
+ </word>
+ <word name='optimization'>
+ <ref name='XSLT_REFACTORED_XPATHCOMP'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='option'>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ </word>
+ <word name='optional'>
+ <ref name='xsltRegisterExtPrefix'/>
+ </word>
+ <word name='options'>
+ <ref name='XSLT_PARSE_OPTIONS'/>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ </word>
+ <word name='order'>
+ <ref name='XSLT_GET_IMPORT_INT'/>
+ <ref name='XSLT_GET_IMPORT_PTR'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltDocumentSortFunction'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </word>
+ <word name='ordered'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltComputeSortResult'/>
+ </word>
+ <word name='original'>
+ <ref name='_xsltNsMap'/>
+ <ref name='xsltGetUTF8Char'/>
+ </word>
+ <word name='other'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='otherwise'>
+ <ref name='xslAddCall'/>
+ <ref name='xsltAddTemplate'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltExtModuleElementLookup'/>
+ <ref name='xsltExtModuleElementPreComputeLookup'/>
+ <ref name='xsltExtModuleFunctionLookup'/>
+ <ref name='xsltExtModuleTopLevelLookup'/>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltGetXIncludeDefault'/>
+ <ref name='xsltIsBlank'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ </word>
+ <word name='ouput'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='out'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ <word name='output'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltDebugDumpExtensions'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltParseStylesheetOutput'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveResultTo'/>
+ </word>
+ <word name='outside'>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ </word>
+ <word name='over'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ </word>
+ <word name='overhead'>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='own'>
+ <ref name='xsltApplyStylesheetUser'/>
+ </word>
+ <word name='owning'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk9'>
+ <letter name='p'>
+ <word name='param'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltParseGlobalParam'/>
+ <ref name='xsltParseStylesheetParam'/>
+ </word>
+ <word name='parameter'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ </word>
+ <word name='parameters'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltProcessOneNode'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='params'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='parent'>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ </word>
+ <word name='parse'>
+ <ref name='xsltParseGlobalParam'/>
+ <ref name='xsltParseStylesheetAttributeSet'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetFile'/>
+ <ref name='xsltParseStylesheetImport'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetInclude'/>
+ <ref name='xsltParseStylesheetOutput'/>
+ <ref name='xsltParseTemplateContent'/>
+ </word>
+ <word name='parsed'>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltNewDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ <ref name='xsltNewTransformContext'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='parser'>
+ <ref name='xsltFreeTransformContext'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ </word>
+ <word name='parsing'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='part'>
+ <ref name='XSLT_REFACTORED_VARS'/>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltTransformFunction'/>
+ </word>
+ <word name='pass'>
+ <ref name='XSLT_PARSE_OPTIONS'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='passed'>
+ <ref name='xsltProcessOneNode'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='path'>
+ <ref name='xsltSecurityCheck'/>
+ </word>
+ <word name='pattern'>
+ <ref name='XSLT_PAT_NO_PRIORITY'/>
+ <ref name='_xsltDecimalFormat'/>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='xsltAddTemplate'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltTestCompMatchList'/>
+ </word>
+ <word name='patterns'>
+ <ref name='xsltTestCompMatchList'/>
+ </word>
+ <word name='per'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='percent'>
+ <ref name='_xsltFormatNumberInfo'/>
+ </word>
+ <word name='percentage'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='permille'>
+ <ref name='_xsltFormatNumberInfo'/>
+ </word>
+ <word name='persistance'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='persistant'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='persistent'>
+ <ref name='_xsltStackElem'/>
+ </word>
+ <word name='pertaining'>
+ <ref name='xsltXPathGetTransformContext'/>
+ </word>
+ <word name='pertains'>
+ <ref name='IS_XSLT_ELEM'/>
+ </word>
+ <word name='place'>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='placeholder'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='plug'>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ </word>
+ <word name='point'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </word>
+ <word name='pointers'>
+ <ref name='XSLT_GET_IMPORT_PTR'/>
+ </word>
+ <word name='points'>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ </word>
+ <word name='pops'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='position'>
+ <ref name='xsltPointerListAddSize'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='possible'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='possibly'>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ </word>
+ <word name='pre-computation'>
+ <ref name='xsltExtModuleElementPreComputeLookup'/>
+ <ref name='xsltRegisterExtModuleElement'/>
+ </word>
+ <word name='pre-processing'>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='precedence'>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltNextImport'/>
+ </word>
+ <word name='precision'>
+ <ref name='XSLT_TIMESTAMP_TICS_PER_SEC'/>
+ </word>
+ <word name='precompiled'>
+ <ref name='_xsltStyleItemApplyTemplates'/>
+ <ref name='_xsltStyleItemIf'/>
+ <ref name='_xsltStyleItemSort'/>
+ <ref name='_xsltStyleItemValueOf'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltCompilePattern'/>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltTestCompMatchList'/>
+ </word>
+ <word name='precomputed'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltAttribute'/>
+ <ref name='xsltComment'/>
+ <ref name='xsltCopyOf'/>
+ <ref name='xsltDebug'/>
+ <ref name='xsltDocumentElem'/>
+ <ref name='xsltElement'/>
+ <ref name='xsltFreeStylePreComps'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltNumber'/>
+ <ref name='xsltPreComputeExtModuleElement'/>
+ <ref name='xsltProcessingInstruction'/>
+ <ref name='xsltSort'/>
+ <ref name='xsltText'/>
+ <ref name='xsltValueOf'/>
+ </word>
+ <word name='predicate'>
+ <ref name='xsltEvalXPathPredicate'/>
+ </word>
+ <word name='preference'>
+ <ref name='xsltFreeSecurityPrefs'/>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ <ref name='xsltNewSecurityPrefs'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetDefaultSecurityPrefs'/>
+ </word>
+ <word name='preferences'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='prefix'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='prefixed'>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetQNameURI2'/>
+ </word>
+ <word name='prefixes'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='preliminary'>
+ <ref name='xsltCheckWrite'/>
+ </word>
+ <word name='present'>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltGetExtData'/>
+ <ref name='xsltStyleGetExtData'/>
+ <ref name='xsltStyleStylesheetLevelGetExtData'/>
+ </word>
+ <word name='preserve'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='preserve-space'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ </word>
+ <word name='previous'>
+ <ref name='xsltSetCtxtParseOptions'/>
+ </word>
+ <word name='prevompiled'>
+ <ref name='xsltEvalAVT'/>
+ </word>
+ <word name='principal'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='printed'>
+ <ref name='xslAddCall'/>
+ </word>
+ <word name='priority'>
+ <ref name='XSLT_PAT_NO_PRIORITY'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='problem'>
+ <ref name='XSLT_STRANGE'/>
+ </word>
+ <word name='processed'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xslAddCall'/>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltPrintErrorContext'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ </word>
+ <word name='processing'>
+ <ref name='CHECK_STOPPED'/>
+ <ref name='CHECK_STOPPED0'/>
+ <ref name='CHECK_STOPPEDE'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltDebug'/>
+ <ref name='xsltDocumentElem'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltGetXIncludeDefault'/>
+ <ref name='xsltMessage'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ </word>
+ <word name='processing-instruction'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltProcessingInstruction'/>
+ </word>
+ <word name='processor'>
+ <ref name='XSLT_DEFAULT_URL'/>
+ <ref name='XSLT_DEFAULT_VENDOR'/>
+ <ref name='XSLT_SAXON_NAMESPACE'/>
+ <ref name='XSLT_XALAN_NAMESPACE'/>
+ <ref name='XSLT_XT_NAMESPACE'/>
+ <ref name='xsltInit'/>
+ <ref name='xsltUninit'/>
+ </word>
+ <word name='produce'>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='products'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='profile'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='profiled'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='profiling'>
+ <ref name='XSLT_TIMESTAMP_TICS_PER_SEC'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltSaveProfiling'/>
+ <ref name='xsltTimestamp'/>
+ </word>
+ <word name='progressive'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='project'>
+ <ref name='XSLT_XALAN_NAMESPACE'/>
+ </word>
+ <word name='properties'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ </word>
+ <word name='provide'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ </word>
+ <word name='provided'>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSecurityCheck'/>
+ </word>
+ <word name='public?'>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ </word>
+ <word name='purpose'>
+ <ref name='XSLT_REGISTER_FUNCTION_LOOKUP'/>
+ <ref name='XSLT_REGISTER_VARIABLE_LOOKUP'/>
+ </word>
+ <word name='pushed'>
+ <ref name='xsltLocalVariablePush'/>
+ </word>
+ <word name='pushes'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk10'>
+ <letter name='q'>
+ <word name='query'>
+ <ref name='xsltGetKey'/>
+ </word>
+ <word name='quick'>
+ <ref name='IS_XSLT_ATTR_FAST'/>
+ <ref name='IS_XSLT_ELEM_FAST'/>
+ </word>
+ <word name='quote'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ </letter>
+ <letter name='r'>
+ <word name='raise'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='rank='>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='read'>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='read:'>
+ <ref name='_xsltStyleItemDocument'/>
+ </word>
+ <word name='ready'>
+ <ref name='xsltAllocateExtraCtxt'/>
+ </word>
+ <word name='real'>
+ <ref name='IS_XSLT_REAL_NODE'/>
+ </word>
+ <word name='really'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='_xsltEffectiveNs'/>
+ </word>
+ <word name='record'>
+ <ref name='xsltParseGlobalParam'/>
+ <ref name='xsltParseStylesheetOutput'/>
+ </word>
+ <word name='recorded'>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ </word>
+ <word name='recursive'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='refactored'>
+ <ref name='XSLT_REFACTORED_VARS'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltInitCtxtKeys'/>
+ </word>
+ <word name='reference'>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='references'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltResolveStylesheetAttributeSet'/>
+ </word>
+ <word name='referencing'>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='reflect'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ </word>
+ <word name='reflected'>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='register'>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltNamespaceAlias'/>
+ </word>
+ <word name='registered'>
+ <ref name='xsltDebugDumpExtensions'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltFreeRVTs'/>
+ <ref name='xsltInitCtxtExts'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ </word>
+ <word name='registers'>
+ <ref name='xsltInit'/>
+ <ref name='xsltParseGlobalVariable'/>
+ </word>
+ <word name='related'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltParseStylesheetOutput'/>
+ </word>
+ <word name='remain'>
+ <ref name='xsltLocalVariablePop'/>
+ </word>
+ <word name='remove'>
+ <ref name='xsltParseSequenceConstructor'/>
+ </word>
+ <word name='reorder'>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltDocumentSortFunction'/>
+ </word>
+ <word name='replace'>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='replacement'>
+ <ref name='_xsltTemplate'/>
+ </word>
+ <word name='report'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='reports'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='represented'>
+ <ref name='xsltFreeStyleDocuments'/>
+ </word>
+ <word name='representing'>
+ <ref name='xsltFreeStyleDocuments'/>
+ </word>
+ <word name='requested'>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='required'>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ <word name='requirement'>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ </word>
+ <word name='requires'>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ </word>
+ <word name='reset'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetSortFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ <word name='resets'>
+ <ref name='xsltSetLoaderFunc'/>
+ </word>
+ <word name='resolve'>
+ <ref name='xsltResolveStylesheetAttributeSet'/>
+ </word>
+ <word name='resource'>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='respect'>
+ <ref name='xsltFindElemSpaceHandling'/>
+ </word>
+ <word name='restored'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='restricts'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='result-prefix'>
+ <ref name='xsltNamespaceAlias'/>
+ </word>
+ <word name='result-tree'>
+ <ref name='xsltFunctionNodeSet'/>
+ </word>
+ <word name='resulting'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltGetKey'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='results'>
+ <ref name='xsltParseTemplateContent'/>
+ </word>
+ <word name='retrieve'>
+ <ref name='xsltXPathGetTransformContext'/>
+ </word>
+ <word name='return'>
+ <ref name='CHECK_STOPPED'/>
+ <ref name='CHECK_STOPPED0'/>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ <ref name='xsltAttrTemplateValueProcess'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalAVT'/>
+ <ref name='xsltSplitQName'/>
+ </word>
+ <word name='returned'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='reuse'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='rid'>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='right'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='root'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='xsltApplyStripSpaces'/>
+ </word>
+ <word name='routine'>
+ <ref name='_xsltRuntimeExtra'/>
+ <ref name='xsltLocalVariablePush'/>
+ </word>
+ <word name='routines'>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ </word>
+ <word name='rule'>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='rules'>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='run'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='run-time'>
+ <ref name='xsltAllocateExtraCtxt'/>
+ <ref name='xsltCompilePattern'/>
+ </word>
+ <word name='running'>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ <word name='runtime'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ </letter>
+ <letter name='s'>
+ <word name='s390'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='same'>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetPlainNamespace'/>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='sane'>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='saving'>
+ <ref name='xsltSaveProfiling'/>
+ </word>
+ <word name='saxon'>
+ <ref name='xsltFunctionNodeSet'/>
+ </word>
+ <word name='scanner'>
+ <ref name='xsltNormalizeCompSteps'/>
+ </word>
+ <word name='scope'>
+ <ref name='_xsltKeyDef'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetTemplate'/>
+ </word>
+ <word name='seaches'>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='search'>
+ <ref name='xsltExtElementLookup'/>
+ </word>
+ <word name='section'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='security'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltCheckRead'/>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltFreeSecurityPrefs'/>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltNewSecurityPrefs'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityForbid'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetDefaultSecurityPrefs'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ </word>
+ <word name='see'>
+ <ref name='xsltEvalOneUserParam'/>
+ </word>
+ <word name='semantic'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='separates'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='separator'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='sequence'>
+ <ref name='_xsltStackElem'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltEvalTemplateString'/>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltParseSequenceConstructor'/>
+ </word>
+ <word name='set'>
+ <ref name='NODE_IS_KEYED'/>
+ <ref name='XSLT_MARK_RES_TREE_FRAG'/>
+ <ref name='XSLT_PARSE_OPTIONS'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltCleanupGlobals'/>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltDocumentSortFunction'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltInitCtxtExts'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltSetDebuggerStatus'/>
+ <ref name='xsltShutdownCtxtExts'/>
+ <ref name='xsltShutdownExts'/>
+ </word>
+ <word name='sets'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltFreeAttributeSetsHashes'/>
+ <ref name='xsltResolveStylesheetAttributeSet'/>
+ <ref name='xsltSetDebuggerStatus'/>
+ </word>
+ <word name='setting'>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='shared'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='sheet'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltLoadStyleDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ </word>
+ <word name='should'>
+ <ref name='CHECK_STOPPED'/>
+ <ref name='CHECK_STOPPED0'/>
+ <ref name='CHECK_STOPPEDE'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltDocumentSortFunction'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltFreeRVTs'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltLocalVariablePop'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ <ref name='xsltSort'/>
+ </word>
+ <word name='show'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='shows'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='shutdown'>
+ <ref name='xsltExtShutdownFunction'/>
+ <ref name='xsltFreeLocales'/>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ <ref name='xsltStyleExtShutdownFunction'/>
+ </word>
+ <word name='sibling'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ </word>
+ <word name='side'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='signalled'>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='signature'>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ <word name='similar'>
+ <ref name='xsltGetQNameURI2'/>
+ </word>
+ <word name='simplified'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='simply'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ <word name='since'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltTimestamp'/>
+ </word>
+ <word name='single'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ </word>
+ <word name='size'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltPointerListAddSize'/>
+ <ref name='xsltPointerListCreate'/>
+ </word>
+ <word name='slightly'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='slot'>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ </word>
+ <word name='slow'>
+ <ref name='xsltDocumentSortFunction'/>
+ </word>
+ <word name='some'>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltCompileAttr'/>
+ </word>
+ <word name='something'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='sorted'>
+ <ref name='_xsltTemplate'/>
+ </word>
+ <word name='sorting'>
+ <ref name='xsltComputeSortResult'/>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltSetSortFunc'/>
+ <ref name='xsltSortFunc'/>
+ </word>
+ <word name='sorts'>
+ <ref name='xsltDefaultSortFunction'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltSortFunc'/>
+ </word>
+ <word name='space'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltFreeDocuments'/>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ </word>
+ <word name='spaces'>
+ <ref name='xsltApplyStripSpaces'/>
+ </word>
+ <word name='spec'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='special'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='specialCharacters'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='specific'>
+ <ref name='XSLT_LIBXSLT_NAMESPACE'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltExtInitFunction'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ <ref name='xsltStyleExtInitFunction'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='specification'>
+ <ref name='XSLT_NAMESPACE'/>
+ </word>
+ <word name='specified'>
+ <ref name='XSLT_MAX_SORT'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ </word>
+ <word name='specify'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='spent'>
+ <ref name='_xsltTemplate'/>
+ </word>
+ <word name='stack'>
+ <ref name='_xsltTemplate'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xslAddCall'/>
+ <ref name='xslDropCall'/>
+ <ref name='xsltAddStackElemList'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltFreeStackElemList'/>
+ <ref name='xsltLocalVariablePop'/>
+ <ref name='xsltLocalVariablePush'/>
+ </word>
+ <word name='standalone'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='start'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ </word>
+ <word name='start-node'>
+ <ref name='xsltParseSequenceConstructor'/>
+ </word>
+ <word name='starting'>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='state'>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltCleanupTemplates'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltGetXIncludeDefault'/>
+ </word>
+ <word name='states'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='static'>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ </word>
+ <word name='statically'>
+ <ref name='xsltAllocateExtra'/>
+ </word>
+ <word name='status'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='stderr'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='stdout'>
+ <ref name='xsltDebugDumpExtensions'/>
+ </word>
+ <word name='steps'>
+ <ref name='xsltNormalizeCompSteps'/>
+ </word>
+ <word name='still'>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </word>
+ <word name='stopped'>
+ <ref name='CHECK_STOPPED'/>
+ <ref name='CHECK_STOPPED0'/>
+ <ref name='CHECK_STOPPEDE'/>
+ </word>
+ <word name='storage'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='_xsltDocument'/>
+ <ref name='_xsltEffectiveNs'/>
+ </word>
+ <word name='store'>
+ <ref name='xsltInitElemPreComp'/>
+ </word>
+ <word name='stored'>
+ <ref name='XSLT_RUNTIME_EXTRA'/>
+ <ref name='XSLT_RUNTIME_EXTRA_FREE'/>
+ <ref name='XSLT_RUNTIME_EXTRA_LST'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltPointerListAddSize'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ </word>
+ <word name='stores'>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='str1'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
+ <word name='str2'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
+ <word name='strict'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='string?'>
+ <ref name='xsltFormatNumberFunction'/>
+ </word>
+ <word name='strings'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
+ <word name='strip-space'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltFindElemSpaceHandling'/>
+ </word>
+ <word name='stripped'>
+ <ref name='xsltFindElemSpaceHandling'/>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ </word>
+ <word name='stripping'>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ </word>
+ <word name='struct'>
+ <ref name='xsltInitElemPreComp'/>
+ </word>
+ <word name='structure'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='_xsltNsMap'/>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltElemPreCompDeallocator'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetFile'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltPointerListAddSize'/>
+ <ref name='xsltPointerListCreate'/>
+ <ref name='xsltPointerListFree'/>
+ </word>
+ <word name='structured'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='structures'>
+ <ref name='xsltCompileAttr'/>
+ <ref name='xsltFreeAVTList'/>
+ <ref name='xsltFreeStyleDocuments'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='stuff'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='style'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltGetTemplate'/>
+ <ref name='xsltLoadStyleDocument'/>
+ <ref name='xsltNewStyleDocument'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='stylesheet-level'>
+ <ref name='xsltFreeStyleDocuments'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='stylesheet-modules'>
+ <ref name='xsltFreeStyleDocuments'/>
+ </word>
+ <word name='stylesheet-prefix'>
+ <ref name='xsltNamespaceAlias'/>
+ </word>
+ <word name='stylesheets'>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='subpattern'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='subpattern{'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='subpattern}'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='subsequent'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ <word name='subsidiary'>
+ <ref name='_xsltDocument'/>
+ </word>
+ <word name='substituted'>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ </word>
+ <word name='substitution'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='subtree'>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='success'>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltAddStackElemList'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltInitAllDocKeys'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltLocalVariablePush'/>
+ <ref name='xsltParseStylesheetImport'/>
+ <ref name='xsltParseStylesheetInclude'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltRestoreDocumentNamespaces'/>
+ <ref name='xsltSaveResultToString'/>
+ <ref name='xsltSetDebuggerCallbacks'/>
+ </word>
+ <word name='successful'>
+ <ref name='xsltRegisterExtModuleElement'/>
+ <ref name='xsltRegisterExtModuleFunction'/>
+ <ref name='xsltRegisterExtModuleTopLevel'/>
+ <ref name='xsltUnregisterExtModuleElement'/>
+ <ref name='xsltUnregisterExtModuleFunction'/>
+ <ref name='xsltUnregisterExtModuleTopLevel'/>
+ </word>
+ <word name='sucess'>
+ <ref name='xslAddCall'/>
+ </word>
+ <word name='sucessful'>
+ <ref name='xsltRegisterExtModule'/>
+ <ref name='xsltRegisterExtModuleFull'/>
+ <ref name='xsltUnregisterExtModule'/>
+ </word>
+ <word name='such'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ </word>
+ <word name='suffix'>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='suggested'>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='suitable'>
+ <ref name='xsltCompilePattern'/>
+ </word>
+ <word name='sun'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='support'>
+ <ref name='xsltFreeLocales'/>
+ </word>
+ <word name='supported'>
+ <ref name='XSLT_DEFAULT_VERSION'/>
+ <ref name='XSLT_LOCALE_NONE'/>
+ </word>
+ <word name='sure'>
+ <ref name='xsltAllocateExtraCtxt'/>
+ </word>
+ <word name='system'>
+ <ref name='xsltNewLocale'/>
+ </word>
+ <word name='system-property'>
+ <ref name='xsltSystemPropertyFunction'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk11'>
+ <letter name='t'>
+ <word name='table'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltGetExtInfo'/>
+ <ref name='xsltNormalizeCompSteps'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ </word>
+ <word name='tables'>
+ <ref name='_xsltDocument'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltInitCtxtKeys'/>
+ </word>
+ <word name='tag'>
+ <ref name='xsltNewLocale'/>
+ </word>
+ <word name='target'>
+ <ref name='xsltCopyNamespace'/>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='targetted'>
+ <ref name='xsltApplyStylesheetUser'/>
+ </word>
+ <word name='temlate'>
+ <ref name='xslHandleDebugger'/>
+ </word>
+ <word name='templates'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltCleanupTemplates'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltFreeAVTList'/>
+ </word>
+ <word name='templtaes'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='templtes'>
+ <ref name='_xsltTemplate'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='temporary'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltFindDocument'/>
+ </word>
+ <word name='tenth'>
+ <ref name='xsltTimestamp'/>
+ </word>
+ <word name='term'>
+ <ref name='xsltCreateRVT'/>
+ </word>
+ <word name='term:'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='terminated'>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='terms'>
+ <ref name='xsltParseSequenceConstructor'/>
+ </word>
+ <word name='test'>
+ <ref name='XSLT_IS_RES_TREE_FRAG'/>
+ <ref name='xsltRegisterTestModule'/>
+ </word>
+ <word name='test='>
+ <ref name='XSLT_FAST_IF'/>
+ </word>
+ <word name='tests'>
+ <ref name='XSLT_FAST_IF'/>
+ </word>
+ <word name='text'>
+ <ref name='IS_XSLT_REAL_NODE'/>
+ <ref name='XSLT_IS_TEXT_NODE'/>
+ <ref name='_xsltStyleItemText'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltSaveResultToString'/>
+ <ref name='xsltText'/>
+ </word>
+ <word name='than'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='that'>
+ <ref name='IS_XSLT_ELEM'/>
+ <ref name='IS_XSLT_REAL_NODE'/>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='XSLT_LOCALE_NONE'/>
+ <ref name='XSLT_STRANGE'/>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ </word>
+ <word name='them'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltNamespaceAlias'/>
+ </word>
+ <word name='themselve'>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ <word name='then'>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltApplyAttributeSet'/>
+ <ref name='xsltCopyNamespace'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltSetCtxtSortFunc'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='there'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltAllocateExtraCtxt'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltGetXIncludeDefault'/>
+ </word>
+ <word name='they'>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ </word>
+ <word name='those'>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ <word name='time'>
+ <ref name='_xsltTemplate'/>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltCompileAttr'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltExtInitFunction'/>
+ <ref name='xsltExtShutdownFunction'/>
+ <ref name='xsltParseGlobalVariable'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltParseStylesheetParam'/>
+ <ref name='xsltParseStylesheetVariable'/>
+ <ref name='xsltStyleExtInitFunction'/>
+ <ref name='xsltStyleExtShutdownFunction'/>
+ </word>
+ <word name='time='>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='top-level'>
+ <ref name='xsltExtModuleTopLevelLookup'/>
+ <ref name='xsltRegisterExtModuleTopLevel'/>
+ <ref name='xsltUnregisterExtModuleTopLevel'/>
+ </word>
+ <word name='topmost'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xslDropCall'/>
+ </word>
+ <word name='tracing'>
+ <ref name='xsltDebugGetDefaultTrace'/>
+ <ref name='xsltDebugSetDefaultTrace'/>
+ </word>
+ <word name='track'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='transfer'>
+ <ref name='xslHandleDebugger'/>
+ </word>
+ <word name='transform'>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltNewElemPreComp'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='transformation-time'>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='transformations'>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='transformed'>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='transmit'>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='transromation'>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ <word name='treated'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='trees'>
+ <ref name='xsltFreeRVTs'/>
+ </word>
+ <word name='tries'>
+ <ref name='xsltLoadStylesheetPI'/>
+ </word>
+ <word name='trigger'>
+ <ref name='_xsltCompilerNodeInfo'/>
+ </word>
+ <word name='true'>
+ <ref name='xsltEvalXPathPredicate'/>
+ </word>
+ <word name='try'>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='tuples'>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='turned'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='two'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
+ <word name='type'>
+ <ref name='XSLT_TRACE'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltElemPreComp'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltNewLocale'/>
+ </word>
+ </letter>
+ <letter name='u'>
+ <word name='ultimately'>
+ <ref name='xsltGetUTF8Char'/>
+ </word>
+ <word name='undeclare'>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='undefined'>
+ <ref name='UNDEFINED_DEFAULT_NS'/>
+ </word>
+ <word name='unfortunately'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='unimplemented'>
+ <ref name='XSLT_TODO'/>
+ </word>
+ <word name='unless'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='unparsed-entity-uri'>
+ <ref name='xsltUnparsedEntityURIFunction'/>
+ </word>
+ <word name='unstructured'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='unused'>
+ <ref name='xsltDocumentComp'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityForbid'/>
+ </word>
+ <word name='unwanted'>
+ <ref name='xsltApplyStripSpaces'/>
+ <ref name='xsltParseTemplateContent'/>
+ </word>
+ <word name='update'>
+ <ref name='xsltGetSecurityPrefs'/>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ </word>
+ <word name='usage'>
+ <ref name='XSLT_FAST_IF'/>
+ </word>
+ <word name='use'>
+ <ref name='xsltAddKey'/>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltRegisterExtras'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSecurityAllow'/>
+ <ref name='xsltSecurityForbid'/>
+ <ref name='xsltSetCtxtSecurityPrefs'/>
+ <ref name='xsltSetDefaultSecurityPrefs'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ <ref name='xsltSortFunc'/>
+ <ref name='xsltTemplateProcess'/>
+ <ref name='xsltTransformError'/>
+ </word>
+ <word name='use:'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='useful'>
+ <ref name='xsltXPathGetTransformContext'/>
+ </word>
+ <word name='usefull'>
+ <ref name='xsltInitElemPreComp'/>
+ </word>
+ <word name='user'>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSetSecurityPrefs'/>
+ </word>
+ <word name='user-code'>
+ <ref name='xsltFreeRVTs'/>
+ </word>
+ <word name='users!'>
+ <ref name='xsltLocalVariablePush'/>
+ </word>
+ <word name='uses'>
+ <ref name='xsltFormatNumberConversion'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='using'>
+ <ref name='xsltDoSortFunction'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltEvalXPathString'/>
+ <ref name='xsltEvalXPathStringNs'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk12'>
+ <letter name='v'>
+ <word name='validates'>
+ <ref name='xsltParseAnyXSLTElem'/>
+ </word>
+ <word name='validating'>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ </word>
+ <word name='value-of'>
+ <ref name='_xsltStyleItemApplyTemplates'/>
+ <ref name='_xsltStyleItemSort'/>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='xsltValueOf'/>
+ </word>
+ <word name='value-returning'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </word>
+ <word name='values'>
+ <ref name='_xsltStylePreComp'/>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltApplyStylesheetUser'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltInitCtxtKey'/>
+ <ref name='xsltLocalVariablePop'/>
+ <ref name='xsltProfileStylesheet'/>
+ <ref name='xsltQuoteUserParams'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='variables'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltCleanupGlobals'/>
+ <ref name='xsltEvalGlobalVariables'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltFreeGlobalVariables'/>
+ <ref name='xsltInitGlobals'/>
+ <ref name='xsltLocalVariablePop'/>
+ </word>
+ <word name='varibale'>
+ <ref name='xsltXPathVariableLookup'/>
+ </word>
+ <word name='varibales'>
+ <ref name='xsltInitCtxtKeys'/>
+ </word>
+ <word name='vendor'>
+ <ref name='XSLT_DEFAULT_URL'/>
+ <ref name='XSLT_DEFAULT_VENDOR'/>
+ </word>
+ <word name='version'>
+ <ref name='XSLT_DEFAULT_VERSION'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='version='>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='via'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </word>
+ <word name='violated'>
+ <ref name='XML_CAST_FPTR'/>
+ </word>
+ <word name='visible'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='void'>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </word>
+ </letter>
+ <letter name='w'>
+ <word name='want'>
+ <ref name='xsltEvalUserParams'/>
+ </word>
+ <word name='warning'>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='warnings'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='was'>
+ <ref name='XSLT_STRANGE'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltEvalXPathPredicate'/>
+ <ref name='xsltNewLocale'/>
+ <ref name='xsltNextImport'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ </word>
+ <word name='way'>
+ <ref name='xsltFindTemplate'/>
+ </word>
+ <word name='well'>
+ <ref name='xsltNamespaceAlias'/>
+ </word>
+ <word name='went'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='were'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='when'>
+ <ref name='XSLT_PARSE_OPTIONS'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltGetQNameURI2'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltRegisterPersistRVT'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ <ref name='xsltXPathFunctionLookup'/>
+ <ref name='xsltXPathGetTransformContext'/>
+ <ref name='xsltXPathVariableLookup'/>
+ </word>
+ <word name='where'>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ <ref name='xsltCopyTextString'/>
+ <ref name='xsltGetQNameURI'/>
+ </word>
+ <word name='wherever'>
+ <ref name='_xsltStylesheet'/>
+ </word>
+ <word name='whether'>
+ <ref name='IS_XSLT_ELEM_FAST'/>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='_xsltCompilerNodeInfo'/>
+ <ref name='_xsltFormatNumberInfo'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ <ref name='xsltSetXIncludeDefault'/>
+ <ref name='xsltTestCompMatchList'/>
+ </word>
+ <word name='which'>
+ <ref name='XSLT_ITEM_COMPATIBILITY_FIELDS'/>
+ <ref name='_xsltStackElem'/>
+ <ref name='_xsltTransformContext'/>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltLocalVariablePop'/>
+ <ref name='xsltRegisterExtElement'/>
+ <ref name='xsltRegisterExtFunction'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='while'>
+ <ref name='xsltAllocateExtra'/>
+ <ref name='xsltSetGenericDebugFunc'/>
+ <ref name='xsltSetGenericErrorFunc'/>
+ <ref name='xsltSetTransformErrorFunc'/>
+ </word>
+ <word name='white-space'>
+ <ref name='xsltNeedElemSpaceHandling'/>
+ </word>
+ <word name='whitespace-stripping'>
+ <ref name='_xsltCompilerCtxt'/>
+ </word>
+ <word name='wildcards'>
+ <ref name='xsltFindElemSpaceHandling'/>
+ </word>
+ <word name='wise'>
+ <ref name='xsltApplyStylesheet'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='with'>
+ <ref name='CHECK_STOPPED0'/>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ <ref name='xsltEvalAttrValueTemplate'/>
+ <ref name='xsltEvalStaticAttrValueTemplate'/>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNamespace'/>
+ <ref name='xsltGetNsProp'/>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltGetQNameURI'/>
+ <ref name='xsltGetSpecialNamespace'/>
+ <ref name='xsltGetUTF8Char'/>
+ <ref name='xsltInitCtxtExts'/>
+ <ref name='xsltLocaleStrcmp'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='with-params'>
+ <ref name='_xsltStyleItemApplyTemplates'/>
+ <ref name='_xsltStyleItemCallTemplate'/>
+ </word>
+ <word name='within'>
+ <ref name='xsltExtensionInstructionResultFinalize'/>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltLoadDocument'/>
+ <ref name='xsltLoadStyleDocument'/>
+ <ref name='xsltLoadStylesheetPI'/>
+ <ref name='xsltParseStylesheetDoc'/>
+ </word>
+ <word name='without'>
+ <ref name='XML_CAST_FPTR'/>
+ <ref name='XSLT_PAT_NO_PRIORITY'/>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='won'>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='work'>
+ <ref name='xsltCheckWrite'/>
+ </word>
+ <word name='wrapped'>
+ <ref name='xsltFindElemSpaceHandling'/>
+ </word>
+ <word name='wrapper'>
+ <ref name='xsltDoSortFunction'/>
+ </word>
+ <word name='write'>
+ <ref name='xsltCheckWrite'/>
+ </word>
+ <word name='written'>
+ <ref name='xsltCheckWrite'/>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSaveResultToFilename'/>
+ </word>
+ <word name='wrt'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
+ </letter>
+ <letter name='x'>
+ <word name='xmlDoc'>
+ <ref name='xsltParseStylesheetDoc'/>
+ <ref name='xsltParseStylesheetImportedDoc'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltReleaseRVT'/>
+ </word>
+ <word name='xmlDocPtr'>
+ <ref name='xsltGetProfileInformation'/>
+ <ref name='xsltRegisterLocalRVT'/>
+ <ref name='xsltSaveResultTo'/>
+ <ref name='xsltSaveResultToFd'/>
+ <ref name='xsltSaveResultToFile'/>
+ <ref name='xsltSaveResultToFilename'/>
+ <ref name='xsltSaveResultToString'/>
+ </word>
+ <word name='xmlFree'>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='xmlFreeDoc'>
+ <ref name='xsltGetProfileInformation'/>
+ </word>
+ <word name='xmlGetNsProp'>
+ <ref name='xsltGetCNsProp'/>
+ <ref name='xsltGetNsProp'/>
+ </word>
+ <word name='xmlGetUTF8Char'>
+ <ref name='xsltGetUTF8Char'/>
+ </word>
+ <word name='xmlNodePtr'>
+ <ref name='_xsltTransformContext'/>
+ </word>
+ <word name='xmlNs'>
+ <ref name='_xsltNsMap'/>
+ </word>
+ <word name='xmlNsPtr'>
+ <ref name='xsltCopyNamespace'/>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='xmlParserOption'>
+ <ref name='xsltDocLoaderFunc'/>
+ <ref name='xsltSetCtxtParseOptions'/>
+ </word>
+ <word name='xmlReadxxx'>
+ <ref name='XSLT_PARSE_OPTIONS'/>
+ </word>
+ <word name='xmlXPathCompExprPtr'>
+ <ref name='xsltXPathCompile'/>
+ <ref name='xsltXPathCompileFlags'/>
+ </word>
+ <word name='xmlXPathCompiledEvalToBoolean'>
+ <ref name='XSLT_FAST_IF'/>
+ </word>
+ <word name='xmlns='>
+ <ref name='xsltGetSpecialNamespace'/>
+ </word>
+ <word name='xsl'>
+ <ref name='XSLT_TRACE'/>
+ </word>
+ <word name='xsl:'>
+ <ref name='_xsltPrincipalStylesheetData'/>
+ </word>
+ <word name='xsl:apply-templates'>
+ <ref name='xsltTransformFunction'/>
+ </word>
+ <word name='xsl:choose'>
+ <ref name='xsltChoose'/>
+ </word>
+ <word name='xsl:comment'>
+ <ref name='xsltEvalTemplateString'/>
+ </word>
+ <word name='xsl:for-each'>
+ <ref name='xsltForEach'/>
+ </word>
+ <word name='xsl:if'>
+ <ref name='XSLT_FAST_IF'/>
+ <ref name='xsltIf'/>
+ <ref name='xsltTransformFunction'/>
+ </word>
+ <word name='xsl:import'>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ <word name='xsl:include'>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ <word name='xsl:key'>
+ <ref name='XSLT_REFACTORED_KEYCOMP'/>
+ </word>
+ <word name='xsl:message'>
+ <ref name='xsltMessage'/>
+ </word>
+ <word name='xsl:namespace-alias'>
+ <ref name='_xsltCompilerCtxt'/>
+ <ref name='xsltNamespaceAlias'/>
+ </word>
+ <word name='xsl:param'>
+ <ref name='_xsltTemplate'/>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ </word>
+ <word name='xsl:processing-instruction'>
+ <ref name='xsltEvalTemplateString'/>
+ </word>
+ <word name='xsl:sort'>
+ <ref name='XSLT_MAX_SORT'/>
+ <ref name='xsltSort'/>
+ </word>
+ <word name='xsl:template'>
+ <ref name='xsltApplyOneTemplate'/>
+ <ref name='xsltLocalVariablePop'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='xsl:text'>
+ <ref name='xsltParseSequenceConstructor'/>
+ </word>
+ <word name='xsl:use-attribute-set'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltAttrTemplateProcess'/>
+ </word>
+ <word name='xsl:use-attribute-sets'>
+ <ref name='xsltApplyAttributeSet'/>
+ </word>
+ <word name='xsl:variable'>
+ <ref name='xsltParseStylesheetVariable'/>
+ </word>
+ <word name='xsl:with-param'>
+ <ref name='_xsltStackElem'/>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ <ref name='xsltProcessOneNode'/>
+ </word>
+ <word name='xslDebugBreak'>
+ <ref name='xslHandleDebugger'/>
+ </word>
+ <word name='xslDebugStatus'>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltGetDebuggerStatus'/>
+ <ref name='xsltSetDebuggerStatus'/>
+ </word>
+ <word name='xslt'>
+ <ref name='IS_XSLT_ATTR_FAST'/>
+ <ref name='IS_XSLT_ELEM_FAST'/>
+ <ref name='xslHandleDebugger'/>
+ <ref name='xsltAttribute'/>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ <ref name='xsltComment'/>
+ <ref name='xsltElement'/>
+ <ref name='xsltForEach'/>
+ <ref name='xsltNumber'/>
+ <ref name='xsltParseStylesheetProcess'/>
+ <ref name='xsltProcessingInstruction'/>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltSort'/>
+ <ref name='xsltText'/>
+ <ref name='xsltValueOf'/>
+ </word>
+ <word name='xslt:text'>
+ <ref name='xsltParseTemplateContent'/>
+ </word>
+ <word name='xsltAddTemplate'>
+ <ref name='xsltFreeTemplateHashes'/>
+ </word>
+ <word name='xsltApplySequenceConstructor'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltGetNamespace'/>
+ </word>
+ <word name='xsltAttrTemplateValueProcess'>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ </word>
+ <word name='xsltCopyPropList'>
+ <ref name='xsltGetNamespace'/>
+ </word>
+ <word name='xsltCopyTreeInternal'>
+ <ref name='xsltCopyNamespaceList'/>
+ <ref name='xsltGetNamespace'/>
+ </word>
+ <word name='xsltCreateRVT'>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ </word>
+ <word name='xsltDecimalFormatPtr'>
+ <ref name='xsltDecimalFormatGetByName'/>
+ </word>
+ <word name='xsltDocLoaderFunc'>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ <word name='xsltDocument'>
+ <ref name='xsltFreeStyleDocuments'/>
+ </word>
+ <word name='xsltDocumentComp'>
+ <ref name='_xsltStyleItemDocument'/>
+ </word>
+ <word name='xsltDocumentPtr'>
+ <ref name='xsltFindDocument'/>
+ <ref name='xsltLoadDocument'/>
+ <ref name='xsltLoadStyleDocument'/>
+ </word>
+ <word name='xsltElemPreComp'>
+ <ref name='xsltElemPreCompDeallocator'/>
+ <ref name='xsltInitElemPreComp'/>
+ <ref name='xsltNewElemPreComp'/>
+ </word>
+ <word name='xsltElement'>
+ <ref name='xsltGetNamespace'/>
+ </word>
+ <word name='xsltEvalAttrValueTemplate'>
+ <ref name='xsltAttrTemplateValueProcessNode'/>
+ </word>
+ <word name='xsltEvalUserParams'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltQuoteUserParams'/>
+ </word>
+ <word name='xsltEvalVariable'>
+ <ref name='xsltApplyOneTemplate'/>
+ </word>
+ <word name='xsltExtElementPreCompTest'>
+ <ref name='xsltStyleGetExtData'/>
+ </word>
+ <word name='xsltExtInitTest'>
+ <ref name='xsltStyleGetExtData'/>
+ </word>
+ <word name='xsltGetInheritedNsList'>
+ <ref name='xsltCheckExtPrefix'/>
+ </word>
+ <word name='xsltGetNamespace'>
+ <ref name='xsltGetPlainNamespace'/>
+ </word>
+ <word name='xsltGetQNameURI'>
+ <ref name='xsltGetQNameURI2'/>
+ </word>
+ <word name='xsltGetTemplate'>
+ <ref name='xsltFreeTemplateHashes'/>
+ </word>
+ <word name='xsltLoadType'>
+ <ref name='xsltDocLoaderFunc'/>
+ </word>
+ <word name='xsltLocaleStrcmp'>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='xsltNewLocale'>
+ <ref name='xsltFreeLocale'/>
+ <ref name='xsltStrxfrm'/>
+ </word>
+ <word name='xsltParseExtElemPrefixes'>
+ <ref name='xsltRegisterExtPrefix'/>
+ </word>
+ <word name='xsltParseStylesheetImportedDoc'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='xsltParseStylesheetInclude'>
+ <ref name='xsltParseStylesheetProcess'/>
+ </word>
+ <word name='xsltParseTemplateContent'>
+ <ref name='xsltCheckExtPrefix'/>
+ <ref name='xsltCheckExtURI'/>
+ </word>
+ <word name='xsltPointerList'>
+ <ref name='xsltPointerListCreate'/>
+ <ref name='xsltPointerListFree'/>
+ </word>
+ <word name='xsltPrecomputeStylesheet'>
+ <ref name='xsltCheckExtURI'/>
+ </word>
+ <word name='xsltProcessOneUserParamInternal'>
+ <ref name='xsltEvalOneUserParam'/>
+ </word>
+ <word name='xsltQuoteOneUserParam'>
+ <ref name='xsltEvalOneUserParam'/>
+ </word>
+ <word name='xsltQuoteUserParams'>
+ <ref name='xsltEvalOneUserParam'/>
+ <ref name='xsltEvalUserParams'/>
+ <ref name='xsltQuoteOneUserParam'/>
+ </word>
+ <word name='xsltRegisterAllExtras'>
+ <ref name='xsltRegisterExtras'/>
+ </word>
+ <word name='xsltRegisterExtPrefix'>
+ <ref name='xsltRegisterExtPrefix'/>
+ <ref name='xsltStyleGetExtData'/>
+ </word>
+ <word name='xsltRegisterLocalRVT'>
+ <ref name='xsltExtensionInstructionResultRegister'/>
+ <ref name='xsltRegisterTmpRVT'/>
+ </word>
+ <word name='xsltSecurityPrefsPtr'>
+ <ref name='xsltGetDefaultSecurityPrefs'/>
+ </word>
+ <word name='xsltSetCtxtSortFunc'>
+ <ref name='xsltDoSortFunction'/>
+ </word>
+ <word name='xsltSetSortFunc'>
+ <ref name='xsltDoSortFunction'/>
+ </word>
+ <word name='xsltShallowCopyElem'>
+ <ref name='xsltCopyNamespaceList'/>
+ </word>
+ <word name='xsltShallowCopyElement'>
+ <ref name='xsltGetNamespace'/>
+ </word>
+ <word name='xsltStackElemPtr'>
+ <ref name='xsltParseStylesheetCallerParam'/>
+ </word>
+ <word name='xsltStrxfrm'>
+ <ref name='xsltLocaleStrcmp'/>
+ </word>
+ <word name='xsltStylesheet'>
+ <ref name='_xsltElemPreComp'/>
+ </word>
+ <word name='xsltStylesheetPtr'>
+ <ref name='xsltNewStylesheet'/>
+ </word>
+ <word name='xsltTemplatePtr'>
+ <ref name='xsltFindTemplate'/>
+ <ref name='xsltGetTemplate'/>
+ </word>
+ <word name='xsltTimestamp'>
+ <ref name='xsltCalibrateAdjust'/>
+ </word>
+ <word name='xsltTransformContextPtr'>
+ <ref name='xsltNewTransformContext'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunk name='chunk13'>
+ <letter name='y'>
+ <word name='yes'>
+ <ref name='_xsltStylesheet'/>
+ <ref name='xsltCompileAttr'/>
+ </word>
+ <word name='yet'>
+ <ref name='xsltRunStylesheet'/>
+ <ref name='xsltRunStylesheetUser'/>
+ </word>
+ <word name='you'>
+ <ref name='xsltAttrListTemplateProcess'/>
+ <ref name='xsltEvalUserParams'/>
+ </word>
+ <word name='your'>
+ <ref name='xsltEvalUserParams'/>
+ </word>
+ </letter>
+ <letter name='z'>
+ <word name='zero'>
+ <ref name='xsltFormatNumberConversion'/>
+ </word>
+ </letter>
+ </chunk>
+ <chunks>
+ <chunk name='chunk0' start='A' end='I'/>
+ <chunk name='chunk1' start='J' end='S'/>
+ <chunk name='chunk2' start='T' end='a'/>
+ <chunk name='chunk3' start='b' end='c'/>
+ <chunk name='chunk4' start='d' end='e'/>
+ <chunk name='chunk5' start='f' end='g'/>
+ <chunk name='chunk6' start='h' end='i'/>
+ <chunk name='chunk7' start='j' end='m'/>
+ <chunk name='chunk8' start='n' end='o'/>
+ <chunk name='chunk9' start='p' end='p'/>
+ <chunk name='chunk10' start='q' end='s'/>
+ <chunk name='chunk11' start='t' end='u'/>
+ <chunk name='chunk12' start='v' end='x'/>
+ <chunk name='chunk13' start='y' end='z'/>
+ </chunks>
+ </index>
+</apirefs>
diff --git a/libxslt/doc/libxslt.xml b/libxslt/doc/libxslt.xml
new file mode 100644
index 0000000..c350787
--- /dev/null
+++ b/libxslt/doc/libxslt.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
+<!ENTITY xslt SYSTEM "xml/xslt.xml">
+<!ENTITY functions SYSTEM "xml/functions.xml">
+<!ENTITY pattern SYSTEM "xml/pattern.xml">
+<!ENTITY templates SYSTEM "xml/templates.xml">
+<!ENTITY transform SYSTEM "xml/transform.xml">
+<!ENTITY xsltutils SYSTEM "xml/xsltutils.xml">
+<!ENTITY attributes SYSTEM "xml/attributes.xml">
+<!ENTITY imports SYSTEM "xml/imports.xml">
+<!ENTITY namespaces SYSTEM "xml/namespaces.xml">
+<!ENTITY variables SYSTEM "xml/variables.xml">
+<!ENTITY extensions SYSTEM "xml/extensions.xml">
+<!ENTITY keys SYSTEM "xml/keys.xml">
+<!ENTITY xsltInternals SYSTEM "xml/xsltInternals.xml">
+<!ENTITY numbersInternals SYSTEM "xml/numbersInternals.xml">
+]>
+
+<book>
+ <bookinfo>
+ <title>GNOME XSLT Library Reference Manual</title>
+ <authorgroup>
+ <author>
+ <firstname>Daniel</firstname>
+ <surname>Veillard</surname>
+ <affiliation>
+ <address>
+ <email>daniel@veillard.com</email>
+ </address>
+ </affiliation>
+ </author>
+ </authorgroup>
+ <copyright>
+ <year>2001</year>
+ <holder>Daniel Veillard</holder>
+ </copyright>
+
+ <legalnotice>
+ <para>Permission is granted to make and distribute verbatim
+ copies of this manual provided the copyright notice and this
+ permission notice are preserved on all copies.</para>
+
+ <para>Permission is granted to copy and distribute modified
+ versions of this manual under the conditions for verbatim
+ copying, provided also that the entire resulting derived work is
+ distributed under the terms of a permission notice identical to
+ this one.</para>
+
+ <para>Permission is granted to copy and distribute translations
+ of this manual into another language, under the above conditions
+ for modified versions.</para>
+ </legalnotice>
+
+ <abstract>
+ <para>This manual documents the interfaces of the libxslt
+ library and has some short notes to help get you up to speed
+ with using the library.</para>
+ </abstract>
+ </bookinfo>
+
+ <chapter id="libxslt-notes">
+ <title>Libxslt Programming Notes</title>
+
+ <para>Libxslt is an XSLT toolkit library, which allows you to transform
+ XML documents. It uses the XML parser, tree and XPath functionalities
+ of libxml2</para>
+ </chapter>
+ <chapter id="libxslt-lib">
+ <title>Libxslt Library Reference</title>
+
+ <para>This section contains the API reference for libxslt. All
+ the public interfaces are documented here. This reference guide is
+ build by extracting comments from the code sources. </para>
+
+ &xslt;
+ &functions;
+ &pattern;
+ &templates;
+ &transform;
+ &xsltutils;
+ &attributes;
+ &imports;
+ &extensions;
+ &namespaces;
+ &variables;
+ &keys;
+ &xsltInternals;
+ &numbersInternals;
+ </chapter>
+</book>
+
diff --git a/libxslt/doc/libxslt.xsa b/libxslt/doc/libxslt.xsa
new file mode 100644
index 0000000..f6b8c2a
--- /dev/null
+++ b/libxslt/doc/libxslt.xsa
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<!DOCTYPE xsa PUBLIC "-//LM Garshol//DTD XML Software Autoupdate 1.0//EN//XML" "http://www.garshol.priv.no/download/xsa/xsa.dtd">
+<xsa>
+ <vendor>
+ <name>Daniel Veillard</name>
+ <email>daniel@veillard.com</email>
+ <url>http://veillard.com/</url>
+ </vendor>
+ <product id="libxslt">
+ <name>libxslt</name>
+ <version>1.1.28</version>
+ <last-release> Nov 21 2012</last-release>
+ <info-url>http://xmlsoft.org/XSLT/</info-url>
+ <changes> - Portability:
+ Fix python build by using libxsltmod_la_CPPFLAGS instead of AM_CPPFLAGS (Alexandre Rostovtsev),
+ configure should be more careful with linker script (Igor Pashev),
+ add gcrypt library in LIBADD, not LDFLAGS, as recommended (Roumen Petrov)
+
+ - Bug fixes:
+ Fix generate-id() to avoid generating the same ID (Stewart Brodie),
+ Fix crash with empty xsl:key/@match attribute (Nick Wellnhofer),
+ Crash when passing an uninitialized variable to document() (Nick Wellnhofer),
+ Add missing test docs to EXTRA_DIST (Nick Wellnhofer),
+ Fix regression: Default namespace not correctly used (Nick Wellnhofer)
+
+ - Cleanups:
+ Remove xsltTransStorageAdd and xsltTransStorageRemove from symbols.xml (Daniel Veillard),
+ autogen.sh cleanup (Daniel Richard),
+ consistent use of xslt processor (Roumen Petrov),
+ Add object files in tests/plugins to .gitignore (Nick Wellnhofer),
+ Fix error on bug-165 regression test (Daniel Veillard),
+ Remove xsltTransStorageAdd and xsltTransStorageRemove (Daniel Veillard),
+
+
+</changes>
+ </product>
+</xsa>
diff --git a/libxslt/doc/newapi.xsl b/libxslt/doc/newapi.xsl
new file mode 100644
index 0000000..5664e71
--- /dev/null
+++ b/libxslt/doc/newapi.xsl
@@ -0,0 +1,700 @@
+<?xml version="1.0"?>
+<!--
+ Stylesheet to generate the HTML documentation from an XML API descriptions:
+ xsltproc newapi.xsl libxslt-api.xml
+
+ Daniel Veillard
+
+ Note: This stylesheet was adapted from the original (written for libxml2)
+ by William Brack, who is fully responsible for any mistakes or
+ problems. The major enhancement is changing all references to the
+ library and to the output directory into references to global
+ parameters ('libdir' and 'html_dir' respectively).
+-->
+<xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:exsl="http://exslt.org/common"
+ xmlns:str="http://exslt.org/strings"
+ extension-element-prefixes="exsl str"
+ exclude-result-prefixes="exsl str">
+
+ <!-- Import the main part of the site stylesheets -->
+ <xsl:import href="site.xsl"/>
+
+ <!-- Generate XHTML-1.0 transitional -->
+ <xsl:output method="xml" encoding="ISO-8859-1" indent="yes"
+ doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
+
+ <!-- Build keys for all symbols -->
+ <xsl:key name="symbols" match="/api/symbols/*" use="@name"/>
+
+ <!--
+ Note that variables declared as "param" may be changed at runtime
+ <-->
+ <!-- the name of the library being documented -->
+ <xsl:param name="libname">libxslt</xsl:param>
+
+ <!-- the directory for the 'home' files-->
+ <xsl:param name="dirname" select="'../'"/>
+
+ <!-- the location of logos for the pages -->
+ <xsl:param name="logo_base" select="'../'"/>
+
+ <!-- these override the definition in site.xsl -->
+ <xsl:variable name="href_base" select="'../'"/>
+ <xsl:variable name="html_dir" select="'html/'"/>
+ <xsl:variable name="api_base" select="''"/>
+ <xsl:variable name="globaltitle">
+ <xsl:choose>
+ <xsl:when test="$libname='libxslt'">
+ <xsl:value-of select="'The XSLT C library for GNOME'"/>
+ </xsl:when>
+ <xsl:when test="$libname='libxml'">
+ <xsl:value-of select="'The XML C library for GNOME'"/>
+ </xsl:when>
+ <xsl:when test="$libname='libexslt'">
+ <xsl:value-of select="'The EXSLT C library for GNOME'"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="'Unknown Library'"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <!-- The table of content for the HTML API pages -->
+ <xsl:variable name="menu_name">API Menu</xsl:variable>
+ <xsl:variable name="toc">
+ <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><!-- style="margin-left: -1em" -->
+ <li><a style="font-weight:bold"
+ href="{$href_base}index.html">Main Menu</a></li>
+ <li><a style="font-weight:bold"
+ href="{$href_base}docs.html">Developer Menu</a></li>
+ <!-- Coming soon .....
+ <li><a style="font-weight:bold"
+ href="{$href_base}examples/index.html">Code Examples</a></li>
+ -->
+ <li><a style="font-weight:bold"
+ href="index.html">API Menu</a></li>
+ <!-- Coming soon .....
+ <li><a href="{$href_base}guidelines.html">XSLT Guidelines</a></li>
+ -->
+ <li><a href="{$href_base}ChangeLog.html">ChangeLog</a></li>
+ </ul>
+ </xsl:variable>
+ <xsl:template name="toc">
+ <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><xsl:value-of select="$menu_name"/></b>
+ </center>
+ </td>
+ </tr>
+ <tr>
+ <td bgcolor="#fffacd">
+ <xsl:copy-of select="$toc"/>
+ </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">
+ <xsl:copy-of select="$api"/>
+ </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">
+ <xsl:copy-of select="$related"/>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </xsl:template>
+
+ <xsl:template name="docstyle">
+ <style type="text/css">
+ div.deprecated pre.programlisting {border-style: double;border-color:red}
+ pre.programlisting {border-style: double;background: #EECFA1}
+ </style>
+ </xsl:template>
+ <xsl:template name="navbar">
+ <xsl:variable name="previous" select="preceding-sibling::file[1]"/>
+ <xsl:variable name="next" select="following-sibling::file[1]"/>
+ <table class="navigation" width="100%" summary="Navigation header"
+ cellpadding="2" cellspacing="2">
+ <tr valign="middle">
+ <xsl:if test="$previous">
+ <td><a accesskey="p" href="{$libname}-{$previous/@name}.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></img></a></td>
+ <th align="left"><a href="{$libname}-{$previous/@name}.html"><xsl:value-of select="$previous/@name"/></a></th>
+ </xsl:if>
+ <td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></img></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"></img></a></td>
+ <th align="center"><a href="../index.html">Home</a></th>
+ <xsl:if test="$next">
+ <th align="right"><a href="{$libname}-{$next/@name}.html"><xsl:value-of select="$next/@name"/></a></th>
+ <td><a accesskey="n" href="{$libname}-{$next/@name}.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></img></a></td>
+ </xsl:if>
+ </tr>
+ </table>
+ </xsl:template>
+
+ <!-- This is convoluted but needed to force the current document to
+ be the API one and not the result tree from the tokenize() result,
+ because the keys are only defined on the main document -->
+ <xsl:template mode="dumptoken" match='*'>
+ <xsl:param name="token"/>
+ <xsl:variable name="ref" select="key('symbols', $token)"/>
+ <xsl:choose>
+ <xsl:when test="$ref">
+ <a href="{$libname}-{$ref/@file}.html#{$ref/@name}"><xsl:value-of select="$token"/></a>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$token"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <!-- dumps a string, making cross-reference links -->
+ <xsl:template name="dumptext">
+ <xsl:param name="text"/>
+ <xsl:variable name="ctxt" select='.'/>
+ <!-- <xsl:value-of select="$text"/> -->
+ <xsl:for-each select="str:tokenize($text, ' &#9;')">
+ <xsl:apply-templates select="$ctxt" mode='dumptoken'>
+ <xsl:with-param name="token" select="string(.)"/>
+ </xsl:apply-templates>
+ <xsl:if test="position() != last()">
+ <xsl:text> </xsl:text>
+ </xsl:if>
+ </xsl:for-each>
+ </xsl:template>
+
+ <xsl:template match="macro" mode="toc">
+ <pre class="programlisting">
+ <xsl:text>#define </xsl:text><a href="#{@name}"><xsl:value-of select="@name"/></a>
+ </pre>
+ </xsl:template>
+
+ <xsl:template match="variable" mode="toc">
+ <pre class="programlisting">
+ <xsl:text>Variable </xsl:text>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="string(@type)"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <a name="{@name}"></a>
+ <xsl:value-of select="@name"/>
+ <xsl:text>
+
+</xsl:text>
+ </pre>
+ </xsl:template>
+
+ <xsl:template match="typedef" mode="toc">
+ <xsl:variable name="name" select="string(@name)"/>
+ <pre class="programlisting">
+ <xsl:choose>
+ <xsl:when test="@type = 'enum'">
+ <xsl:text>Enum </xsl:text>
+ <a href="#{$name}"><xsl:value-of select="$name"/></a>
+ <xsl:text>
+</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>Typedef </xsl:text>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="@type"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <a name="{$name}"><xsl:value-of select="$name"/></a>
+ <xsl:text>
+</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </pre>
+ </xsl:template>
+
+ <xsl:template match="typedef[@type = 'enum']">
+ <xsl:variable name="name" select="string(@name)"/>
+ <h3>Enum <a name="{$name}"><xsl:value-of select="$name"/></a></h3>
+ <pre class="programlisting">
+ <xsl:text>Enum </xsl:text>
+ <xsl:value-of select="$name"/>
+ <xsl:text> {
+</xsl:text>
+ <xsl:for-each select="/api/symbols/enum[@type = $name]">
+ <xsl:sort select="@value" data-type="number" order="ascending"/>
+ <xsl:text> </xsl:text>
+ <a name="{@name}"><xsl:value-of select="@name"/></a>
+ <xsl:text> = </xsl:text>
+ <xsl:value-of select="@value"/>
+ <xsl:if test="@info != ''">
+ <xsl:text> : </xsl:text>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="@info"/>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:text>
+</xsl:text>
+ </xsl:for-each>
+ <xsl:text>}
+</xsl:text>
+ </pre>
+ </xsl:template>
+
+ <xsl:template match="struct" mode="toc">
+ <pre class="programlisting">
+ <xsl:text>Structure </xsl:text><a href="#{@name}"><xsl:value-of select="@name"/></a><br/>
+ <xsl:value-of select="@type"/><xsl:text>
+</xsl:text>
+ <xsl:if test="not(field)">
+ <xsl:text>The content of this structure is not made public by the API.
+</xsl:text>
+ </xsl:if>
+ </pre>
+ </xsl:template>
+
+ <xsl:template match="struct">
+ <h3><a name="{@name}">Structure <xsl:value-of select="@name"/></a></h3>
+ <pre class="programlisting">
+ <xsl:text>Structure </xsl:text><xsl:value-of select="@name"/><br/>
+ <xsl:value-of select="@type"/><xsl:text> {
+</xsl:text>
+ <xsl:if test="not(field)">
+ <xsl:text>The content of this structure is not made public by the API.
+</xsl:text>
+ </xsl:if>
+ <xsl:for-each select="field">
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="@type"/>
+ </xsl:call-template>
+ <xsl:text>&#9;</xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:if test="@info != ''">
+ <xsl:text>&#9;: </xsl:text>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="substring(@info, 1, 40)"/>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:text>
+</xsl:text>
+ </xsl:for-each>
+ <xsl:text>}</xsl:text>
+ </pre>
+ </xsl:template>
+
+ <xsl:template match="macro">
+ <xsl:variable name="name" select="string(@name)"/>
+ <h3><a name="{$name}"></a>Macro: <xsl:value-of select="$name"/></h3>
+ <pre><xsl:text>#define </xsl:text><xsl:value-of select="$name"/></pre>
+ <p>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="info"/>
+ </xsl:call-template>
+ </p><xsl:text>
+</xsl:text>
+ </xsl:template>
+
+ <xsl:template match="function" mode="toc">
+ <xsl:variable name="name" select="string(@name)"/>
+ <xsl:variable name="nlen" select="string-length($name)"/>
+ <xsl:variable name="tlen" select="string-length(return/@type)"/>
+ <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
+ <pre class="programlisting">
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="return/@type"/>
+ </xsl:call-template>
+ <xsl:text>&#9;</xsl:text>
+ <a href="#{@name}"><xsl:value-of select="@name"/></a>
+ <xsl:if test="$blen - 40 &lt; -8">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:if test="$blen - 40 &lt; 0">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:text>&#9;(</xsl:text>
+ <xsl:if test="not(arg)">
+ <xsl:text>void</xsl:text>
+ </xsl:if>
+ <xsl:for-each select="arg">
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="@type"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:if test="position() != last()">
+ <xsl:text>, </xsl:text><br/>
+ <xsl:if test="$blen - 40 &gt; 8">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:if test="$blen - 40 &gt; 0">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:text>)</xsl:text>
+ </pre><xsl:text>
+</xsl:text>
+ </xsl:template>
+
+ <xsl:template match="functype" mode="toc">
+ <xsl:variable name="name" select="string(@name)"/>
+ <xsl:variable name="nlen" select="string-length($name)"/>
+ <xsl:variable name="tlen" select="string-length(return/@type)"/>
+ <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
+ <pre class="programlisting">
+ <xsl:text>Function type: </xsl:text>
+ <a href="#{$name}"><xsl:value-of select="$name"/></a>
+ <xsl:text>
+</xsl:text>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="return/@type"/>
+ </xsl:call-template>
+ <xsl:text>&#9;</xsl:text>
+ <a href="#{$name}"><xsl:value-of select="$name"/></a>
+ <xsl:if test="$blen - 40 &lt; -8">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:if test="$blen - 40 &lt; 0">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:text>&#9;(</xsl:text>
+ <xsl:if test="not(arg)">
+ <xsl:text>void</xsl:text>
+ </xsl:if>
+ <xsl:for-each select="arg">
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="@type"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:if test="position() != last()">
+ <xsl:text>, </xsl:text><br/>
+ <xsl:if test="$blen - 40 &gt; 8">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:if test="$blen - 40 &gt; 0">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:text>)
+</xsl:text>
+ </pre>
+ <xsl:text>
+</xsl:text>
+ </xsl:template>
+
+ <xsl:template match="functype">
+ <xsl:variable name="name" select="string(@name)"/>
+ <xsl:variable name="nlen" select="string-length($name)"/>
+ <xsl:variable name="tlen" select="string-length(return/@type)"/>
+ <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
+ <h3>
+ <a name="{$name}"></a>
+ <xsl:text>Function type: </xsl:text>
+ <xsl:value-of select="$name"/>
+ </h3>
+ <pre class="programlisting">
+ <xsl:text>Function type: </xsl:text>
+ <xsl:value-of select="$name"/>
+ <xsl:text>
+</xsl:text>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="return/@type"/>
+ </xsl:call-template>
+ <xsl:text>&#9;</xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:if test="$blen - 40 &lt; -8">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:if test="$blen - 40 &lt; 0">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:text>&#9;(</xsl:text>
+ <xsl:if test="not(arg)">
+ <xsl:text>void</xsl:text>
+ </xsl:if>
+ <xsl:for-each select="arg">
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="@type"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:if test="position() != last()">
+ <xsl:text>, </xsl:text><br/>
+ <xsl:if test="$blen - 40 &gt; 8">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:if test="$blen - 40 &gt; 0">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:text>)
+</xsl:text>
+ </pre>
+ <p>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="info"/>
+ </xsl:call-template>
+ </p>
+ <xsl:if test="arg | return">
+ <div class="variablelist"><table border="0"><col align="left"/><tbody>
+ <xsl:for-each select="arg">
+ <tr>
+ <td><span class="term"><i><tt><xsl:value-of select="@name"/></tt></i>:</span></td>
+ <td>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="@info"/>
+ </xsl:call-template>
+ </td>
+ </tr>
+ </xsl:for-each>
+ <xsl:if test="return/@info">
+ <tr>
+ <td><span class="term"><i><tt>Returns</tt></i>:</span></td>
+ <td>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="return/@info"/>
+ </xsl:call-template>
+ </td>
+ </tr>
+ </xsl:if>
+ </tbody></table></div>
+ </xsl:if>
+ <br/>
+ <xsl:text>
+</xsl:text>
+ </xsl:template>
+
+ <xsl:template match="function">
+ <xsl:variable name="name" select="string(@name)"/>
+ <xsl:variable name="nlen" select="string-length($name)"/>
+ <xsl:variable name="tlen" select="string-length(return/@type)"/>
+ <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
+ <h3><a name="{$name}"></a>Function: <xsl:value-of select="$name"/></h3>
+ <pre class="programlisting">
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="return/@type"/>
+ </xsl:call-template>
+ <xsl:text>&#9;</xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:if test="$blen - 40 &lt; -8">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:if test="$blen - 40 &lt; 0">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:text>&#9;(</xsl:text>
+ <xsl:if test="not(arg)">
+ <xsl:text>void</xsl:text>
+ </xsl:if>
+ <xsl:for-each select="arg">
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="@type"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="@name"/>
+ <xsl:if test="position() != last()">
+ <xsl:text>, </xsl:text><br/>
+ <xsl:if test="$blen - 40 &gt; 8">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:if test="$blen - 40 &gt; 0">
+ <xsl:text>&#9;</xsl:text>
+ </xsl:if>
+ <xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:text>)</xsl:text><br/>
+ <xsl:text>
+</xsl:text>
+ </pre>
+ <p>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="info"/>
+ </xsl:call-template>
+ </p><xsl:text>
+</xsl:text>
+ <xsl:if test="arg | return/@info">
+ <div class="variablelist"><table border="0"><col align="left"/><tbody>
+ <xsl:for-each select="arg">
+ <tr>
+ <td><span class="term"><i><tt><xsl:value-of select="@name"/></tt></i>:</span></td>
+ <td>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="@info"/>
+ </xsl:call-template>
+ </td>
+ </tr>
+ </xsl:for-each>
+ <xsl:if test="return/@info">
+ <tr>
+ <td><span class="term"><i><tt>Returns</tt></i>:</span></td>
+ <td>
+ <xsl:call-template name="dumptext">
+ <xsl:with-param name="text" select="return/@info"/>
+ </xsl:call-template>
+ </td>
+ </tr>
+ </xsl:if>
+ </tbody></table></div>
+ </xsl:if>
+ </xsl:template>
+
+ <xsl:template match="exports" mode="toc">
+ <xsl:apply-templates select="key('symbols', string(@symbol))[1]" mode="toc"/>
+ </xsl:template>
+
+ <xsl:template match="exports">
+ <xsl:apply-templates select="key('symbols', string(@symbol))[1]"/>
+ </xsl:template>
+
+ <xsl:template name="description">
+ <xsl:if test="deprecated">
+ <h2 style="font-weight:bold;color:red;text-align:center">This module is deprecated</h2>
+ </xsl:if>
+ <xsl:if test="description">
+ <p><xsl:value-of select="description"/></p>
+ </xsl:if>
+ </xsl:template>
+
+ <xsl:template match="file">
+ <xsl:variable name="name" select="@name"/>
+ <xsl:variable name="title">Module <xsl:value-of select="$name"/> from <xsl:value-of select="/api/@name"/></xsl:variable>
+ <xsl:variable name="content">
+ <xsl:call-template name="navbar"/>
+ <xsl:call-template name="description"/>
+ <xsl:choose>
+ <xsl:when test="deprecated">
+ <div class="deprecated">
+ <h2>Table of Contents</h2>
+ <xsl:apply-templates select="exports" mode="toc"/>
+ <h2>Description</h2>
+ <xsl:text>
+</xsl:text>
+ <xsl:apply-templates select="exports"/>
+ </div>
+ </xsl:when>
+ <xsl:otherwise>
+ <h2>Table of Contents</h2>
+ <xsl:apply-templates select="exports[@type='macro']" mode="toc">
+ <xsl:sort select='@symbol'/>
+ </xsl:apply-templates>
+ <xsl:apply-templates select="exports[@type='enum']" mode="toc">
+ <xsl:sort select='@symbol'/>
+ </xsl:apply-templates>
+ <xsl:apply-templates select="exports[@type='typedef']" mode="toc">
+ <xsl:sort select='@symbol'/>
+ </xsl:apply-templates>
+ <xsl:apply-templates select="exports[@type='struct']" mode="toc">
+ <xsl:sort select='@symbol'/>
+ </xsl:apply-templates>
+ <xsl:apply-templates select="exports[@type='function']" mode="toc">
+ <xsl:sort select='@symbol'/>
+ </xsl:apply-templates>
+ <h2>Description</h2>
+ <xsl:text>
+</xsl:text>
+ <xsl:apply-templates select="exports[@type='macro']">
+ <xsl:sort select='@symbol'/>
+ </xsl:apply-templates>
+ <xsl:apply-templates select="exports[@type='enum']">
+ <xsl:sort select='@symbol'/>
+ </xsl:apply-templates>
+ <xsl:apply-templates select="exports[@type='typedef']">
+ <xsl:sort select='@symbol'/>
+ </xsl:apply-templates>
+ <xsl:apply-templates select="exports[@type='struct']">
+ <xsl:sort select='@symbol'/>
+ </xsl:apply-templates>
+ <xsl:apply-templates select="exports[@type='function']">
+ <xsl:sort select='@symbol'/>
+ </xsl:apply-templates>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:call-template name="new_page">
+ <xsl:with-param name="filename"
+ select="concat($html_dir, $libname, '-', $name, '.html')"/>
+ <xsl:with-param name="title" select="$title"/>
+ <xsl:with-param name="target" select="$content"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="file" mode="toc">
+ <xsl:variable name="name" select="@name"/>
+ <li>
+ <a href="{$libname}-{$name}.html"><xsl:value-of select="$name"/></a>
+ <xsl:text>: </xsl:text>
+ <xsl:value-of select="summary"/>
+ </li>
+ </xsl:template>
+
+ <xsl:template name="mainpage">
+ <xsl:param name="file" select="concat($html_dir, 'index.html')"/>
+ <xsl:variable name="title">Reference Manual for <xsl:value-of select="/api/@name"/></xsl:variable>
+ <xsl:variable name="content">
+ <h2>Table of Contents</h2>
+ <ul>
+ <xsl:apply-templates select="/api/files/file" mode="toc"/>
+ </ul>
+ </xsl:variable>
+ <xsl:call-template name="new_page">
+ <xsl:with-param name="filename" select="$file"/>
+ <xsl:with-param name="title" select="$title"/>
+ <xsl:with-param name="target" select="$content"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="/">
+ <xsl:message>Processing library <xsl:value-of select="$libname"
+ />, output directory is <xsl:value-of select="$html_dir"
+ /></xsl:message>
+ <!-- Save the main index.html as well as a couple of copies -->
+ <xsl:call-template name="mainpage"/>
+ <xsl:call-template name="mainpage">
+ <xsl:with-param name="file" select="concat($html_dir, '/book1.html')"/>
+ </xsl:call-template>
+ <xsl:call-template name="mainpage">
+ <xsl:with-param name="file" select="concat($html_dir, '/',
+ $libname, '-lib.html')"/>
+ </xsl:call-template>
+ <!-- now build the file for each of the modules -->
+ <xsl:apply-templates select="/api/files/file"/>
+ </xsl:template>
+
+</xsl:stylesheet>
diff --git a/libxslt/doc/news.html b/libxslt/doc/news.html
new file mode 100644
index 0000000..1c63bfb
--- /dev/null
+++ b/libxslt/doc/news.html
@@ -0,0 +1,923 @@
+<?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>News</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>News</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p>See the <a href="http://git.gnome.org/browse/libxslt/">git page</a>
+to get a description of the recent commits.</p><p>Those are the public releases made:</p><h3>1.1.29: May 24 2016</h3><ul>
+ <li>Security:<br />
+ CVE-2015-7995 Fix for type confusion in preprocessing attributes (Daniel Veillard)<br />
+ </li>
+
+ <li>Documentation:<br />
+ </li>
+
+ <li>Portability:<br />
+ Fix a portibility problem with previous commit (Eduard Sanou),<br />
+ Fix MingW build (Nick Wellnhofer),<br />
+ Correctly emulate snprintf on older MSVC versions (Nick Wellnhofer),<br />
+ Add Python script to run some tests on Windows (Nick Wellnhofer),<br />
+ Remove /OPT:NOWIN98 option (Nick Wellnhofer),<br />
+ Visual Studio 14 CTP defines snprintf() (Daniel Veillard),<br />
+ Use AC_PATH_TOOL to find libgcrypt-config and xml2-config (Micha¿ Górny),<br />
+ Use $libdir for LIBXSLT_DEFAULT_PLUGINS_PATH (larryhaja),<br />
+ Use mkdir macro also in case if mingw32. (Lars Kanis),<br />
+ Add math library to executable link flags (Nick Wellnhofer),<br />
+ Fix quoting of xlocale test program in configure.in (Nick Wellnhofer)<br />
+ </li>
+
+ <li>Bug Fixes:<br />
+ Fix OOB heap read in xsltExtModuleRegisterDynamic (Nick Wellnhofer),<br />
+ Remove CDATA markup from libxslt_tutorial.c (Nick Wellnhofer),<br />
+ Remove generated headers from dist tarball (Nick Wellnhofer),<br />
+ Mark XML file argument as repeatable (Nick Wellnhofer),<br />
+ Keep timezone in date:add (Nick Wellnhofer),<br />
+ Fix buffer overflow in exsltDateFormat (Nick Wellnhofer),<br />
+ Fix saxon:line-number with namespace nodes (Nick Wellnhofer),<br />
+ Fix dyn:map with namespace nodes (Nick Wellnhofer),<br />
+ Fix error handling in Saxon extension functions (Nick Wellnhofer),<br />
+ Fix double free in libexslt hash functions (Nick Wellnhofer),<br />
+ Fix libxslt format warnings (David Kilzer),<br />
+ Fix xsltNumberFormatGetMultipleLevel (Nick Wellnhofer),<br />
+ Fix use-after-free in xsltDocumentFunctionLoadDocument (Nick Wellnhofer),<br />
+ Always initialize EXSLT month and day to 1 (Nick Wellnhofer),<br />
+ Fix possible NULL pointer deref in transform.c (mahendra.n),<br />
+ Fix possible NULL pointer deref in xsltCopyTextString (Nick Wellnhofer),<br />
+ Fix possible NULL pointer deref in libexslt/functions.c (Nick Wellnhofer),<br />
+ Fix possible NULL pointer deref in xsltproc.c (mahendra.n),<br />
+ Fix possible NULL pointer deref in preproc.c (mahendra.n),<br />
+ Fix LIBXSLT_DEFAULT_PLUGINS_PATH in xsltconfig.h (Nick Wellnhofer),<br />
+ Fix memory leak in xsltNumberFormat (Albert Astals Cid),<br />
+ Error in doc/Makefile.am (Brice De Bruyne),<br />
+ Detect attribute sets recursions in more cases (Daniel Veillard),<br />
+ Check name vales for attribute-set elements (Daniel Veillard),<br />
+ Fix hang with namespace-alias, fixes #700689 (Shaun McCance),<br />
+ Fix str:align with UTF-8 strings (Nick Wellnhofer),<br />
+ Fix for compiled XPath helpers (Nick Wellnhofer),<br />
+ Check return value of exsltFuncNewFunctionData (Nick Wellnhofer),<br />
+ Fix return value of xsltRegisterExtModuleElement (Nick Wellnhofer),<br />
+ Call xmlNodeGetSpacePreserve with element node (Nick Wellnhofer),<br />
+ Set namespaces before evaluating xsl:number (Nick Wellnhofer),<br />
+ Make --maxvars option work (Per Hedeland),<br />
+ Set correct context node when initializing xsl:keys (Nick Wellnhofer),<br />
+ Fix for bug 436589 (Imran Azeezullah),<br />
+ Memory leak in xsltCompileIdKeyPattern error path (Nick Wellnhofer),<br />
+ Fix handling of UTF-8 strings in EXSLT crypto module (Nick Wellnhofer),<br />
+ Fix certain patterns with predicates (Nick Wellnhofer),<br />
+ Fix direct pattern matching (Nick Wellnhofer),<br />
+ Fix str:padding to work with UTF-8 strings (Nick Wellnhofer),<br />
+ EXSLT function str:replace() is broken as-is (Nick Wellnhofer),<br />
+ Fix a couple of places where (f)printf parameters were broken (Daniel Veillard)<br />
+ </li>
+
+ <li>Improvements:<br />
+ Add support timestamps from environment (Daniel Veillard),<br />
+ Add missing tests to dist tarball (Nick Wellnhofer),<br />
+ Improve error message in xsltAddTemplate and fix test (Nick Wellnhofer),<br />
+ Allow REC tests with empty stdout (Nick Wellnhofer),<br />
+ Fix GPL license in HTML files as well (Nick Wellnhofer),<br />
+ Fix status message in EXSLT dynamic tests (Nick Wellnhofer),<br />
+ Add public function macros to xsltlocale.h (Nick Wellnhofer),<br />
+ Make valgrind tests work with libtool (Nick Wellnhofer),<br />
+ Add a couple of xsl:number tests (Nick Wellnhofer),<br />
+ Lower and upper bound for format token "i" (Nick Wellnhofer),<br />
+ Lower bound for format token "a" (Nick Wellnhofer),<br />
+ Handle negative xsl:number values (Nick Wellnhofer),<br />
+ Round xsl:number values to nearest integer (Nick Wellnhofer),<br />
+ Allow {URI}NCName syntax for user parameters (Nick Wellnhofer),<br />
+ Fix endTimer parameter type (Nick Wellnhofer),<br />
+ Fix error messages for unsupported methods (Nick Wellnhofer),<br />
+ Replace sprintf with snprintf (David Kilzer),<br />
+ Enforce two digit exponent under MSVC (Nick Wellnhofer),<br />
+ Rework xsltNumberFormat to fix warning (Nick Wellnhofer),<br />
+ Fix a couple of GPL licences found in the documentation (Daniel Veillard),<br />
+ Use hash table to lookup named templates (Christian Ceelen),<br />
+ Fix to reg tests post 737840 fix (Daniel Veillard),<br />
+ Don't fail build the man page if xsltproc is not present (Daniel Veillard),<br />
+ Re-adding xsltproc.1 (Daniel Veillard),<br />
+ Fix time type in xsltSaveProfiling (Nick Wellnhofer),<br />
+ Remove unused parameters (Nick Wellnhofer),<br />
+ Suppress unused variable warning. (Nick Wellnhofer),<br />
+ Remove unused variable in xsltGenerateIdFunction (Nick Wellnhofer),<br />
+ Add test case for XPath function args in error case (Nick Wellnhofer),<br />
+ Add comment about known-to-fail test (Nick Wellnhofer),<br />
+ Adjust expected test output (Nick Wellnhofer),<br />
+ Helper functions to evaluate compiled XPath expressions (Nick Wellnhofer),<br />
+ Add tests for crypto:rc4 (Nick Wellnhofer),<br />
+ Add first test case for EXSLT crypto module (Nick Wellnhofer),<br />
+ Separate function for predicate matching in patterns (Nick Wellnhofer),<br />
+ Initialize pseudo random number generator with current time or optional command line parameter (Nils Werner),<br />
+ Adding doc update related to 1.1.28 (Daniel Veillard)<br />
+ </li>
+
+ <li>Cleanups:<br />
+ Remove bogus test file (Nick Wellnhofer),<br />
+ Add warning message to expected test output (Nick Wellnhofer)<br />
+ </li>
+</ul><h3>1.1.28: Nov 21 2012</h3><ul>
+ <li> Portability:<br />
+ Fix python build by using libxsltmod_la_CPPFLAGS instead of AM_CPPFLAGS (Alexandre Rostovtsev),<br />
+ configure should be more careful with linker script (Igor Pashev),<br />
+ add gcrypt library in LIBADD, not LDFLAGS, as recommended (Roumen Petrov)<br />
+ </li>
+
+ <li> Bug fixes:<br />
+ Fix generate-id() to avoid generating the same ID (Stewart Brodie),<br />
+ Fix crash with empty xsl:key/@match attribute (Nick Wellnhofer),<br />
+ Crash when passing an uninitialized variable to document() (Nick Wellnhofer),<br />
+ Add missing test docs to EXTRA_DIST (Nick Wellnhofer),<br />
+ Fix regression: Default namespace not correctly used (Nick Wellnhofer)<br />
+ </li>
+
+ <li> Cleanups:<br />
+ Remove xsltTransStorageAdd and xsltTransStorageRemove from symbols.xml (Daniel Veillard),<br />
+ autogen.sh cleanup (Daniel Richard),<br />
+ consistent use of xslt processor (Roumen Petrov),<br />
+ Add object files in tests/plugins to .gitignore (Nick Wellnhofer),<br />
+ Fix error on bug-165 regression test (Daniel Veillard),<br />
+ Remove xsltTransStorageAdd and xsltTransStorageRemove (Daniel Veillard),<br />
+ </li>
+</ul><h3>1.1.27: Sep 12 2012</h3><ul>
+ <li> Portability:<br />
+ xincludestyle wasn't protected with LIBXML_XINCLUDE_ENABLED (Michael Bonfils),<br />
+ Portability fix for testThreads.c (IlyaS),<br />
+ FreeBSD portability fixes (Pedro F. Giffuni),<br />
+ check for gmtime - on mingw* hosts will enable date-time function (Roumen Petrov),<br />
+ use only native crypto-API for mingw* hosts (Roumen Petrov),<br />
+ autogen: Only check for libtoolize (Colin Walters),<br />
+ minimal mingw support (Roumen Petrov),<br />
+ configure: acconfig.h is deprecated since autoconf-2.50 (Stefan Kost),<br />
+ Fix a small out of tree compilation issue (Hao Hu),<br />
+ Fix python generator to not use deprecated xmllib (Daniel Veillard),<br />
+ link python module with python library (Frederic Crozat)<br />
+ </li>
+
+ <li> Documentation:<br />
+ Tiny doc improvement (Daniel Veillard),<br />
+ Various documentation fixes for docs on internals (C. M. Sperberg-McQueen)<br />
+ </li>
+
+ <li> Bug fixes:<br />
+ Report errors on variable use in key (Daniel Veillard),<br />
+ The XSLT namespace string is a constant one (Daniel Veillard),<br />
+ Fix handling of names in xsl:attribute (Nick Wellnhofer),<br />
+ Reserved namespaces in xsl:element and xsl:attribute (Nick Wellnhofer),<br />
+ Null-terminate result string of cry:rc4_decrypt (Nick Wellnhofer),<br />
+ EXSLT date normalization fix (James Muscat),<br />
+ Exit after compilation of invalid func:result (Nick Wellnhofer),<br />
+ Fix for EXSLT func:function (Nick Wellnhofer),<br />
+ Rewrite EXSLT string:replace to be conformant (Nick Wellnhofer),<br />
+ Avoid a heap use after free error (Chris Evans),<br />
+ Fix a dictionary string usage (Chris Evans),<br />
+ Output should not include extraneous newlines when indent is off (Laurence Rowe),<br />
+ document('') fails to return stylesheets parsed from memory (Jason Viers),<br />
+ xsltproc should return an error code if xinclude fails (Malcolm Purvis),<br />
+ Forwards-compatible processing of unknown top level elements (Nick Wellnhofer),<br />
+ Fix system-property with unknown namespace (Nick Wellnhofer),<br />
+ Hardening of code checking node types in EXSLT (Daniel Veillard),<br />
+ Hardening of code checking node types in various entry point (Daniel Veillard),<br />
+ Cleanup of the pattern compilation code (Daniel Veillard),<br />
+ Fix default template processing on namespace nodes (Daniel Veillard),<br />
+ Fix a bug in selecting XSLT elements (Daniel Veillard),<br />
+ Fixed bug #616839 (Daniel Mustieles),<br />
+ Fix some case of pattern parsing errors (Abhishek Arya),<br />
+ preproc: fix the build (Stefan Kost),<br />
+ Fix a memory leak with xsl:number (Daniel Veillard),<br />
+ Fix a problem with ESXLT date:add() with January (money_seshu Dronamraju),<br />
+ Fix a memory leak if compiled with Windows locale support (Daniel Veillard),<br />
+ Fix generate-id() to not expose object addresses (Daniel Veillard),<br />
+ Fix curlies support in literals for non-compiled AVTs (Nick Wellnhofer),<br />
+ Allow whitespace in xsl:variable with select (Nick Wellnhofer),<br />
+ Small fixes to locale code (Nick Wellnhofer),<br />
+ Fix bug 602515 (Nick Wellnhofer),<br />
+ Fix popping of vars in xsltCompilerNodePop (Nick Wellnhofer),<br />
+ Fix direct pattern matching bug (Nick Wellnhofer)<br />
+ </li>
+
+ <li> Improvements:<br />
+ Add the saxon:systemId extension (Mike Hommey),<br />
+ Add an append mode to document output (Daniel Veillard),<br />
+ Add new tests to EXTRA_DIST (Nick Wellnhofer),<br />
+ Test for bug #680920 (Nick Wellnhofer),<br />
+ fix regresson in Various "make distcheck" and other fixes (Roumen Petrov),<br />
+ Various "make distcheck" and other fixes (Daniel Richard G),<br />
+ Fix portability to upcoming libxml2-2.9.0 (Daniel Veillard),<br />
+ Adding --system flag support to autogen.sh (Daniel Veillard),<br />
+ Allow per-context override of xsltMaxDepth, introduce xsltMaxVars (Jérôme Carretero),<br />
+ autogen.sh: Honor NOCONFIGURE environment variable (Colin Walters),<br />
+ configure: support silent automake rules if possible (Stefan Kost),<br />
+ Precompile patterns in xsl:number (Nick Wellnhofer),<br />
+ Fix some warnings in the refactored code (Nick Wellnhofer),<br />
+ Adding new generated files (Daniel Veillard),<br />
+ profiling: add callgraph report (Stefan Kost)<br />
+ </li>
+
+ <li> Cleanups:<br />
+ Big space and tabs cleanup (Daniel Veillard),<br />
+ Fix authors list (Daniel Veillard),<br />
+ Cleanups some of the test makefiles (Daniel Richard),<br />
+ Remove .cvsignore files which are not needed anymore (Daniel Veillard),<br />
+ Cleanup some misplaced spaces and tabs (Daniel Veillard),<br />
+ Augment list of ignored files (Daniel Veillard),<br />
+ configure: remove checks for isinf and isnan as those are not used anyway (Stefan Kost),<br />
+ Point to GIT for source code and a bit of cleanup (Daniel Veillard),<br />
+ Get rid of specific build setup and STATIC_BINARIES (Daniel Veillard)<br />
+ </li>
+</ul><h3>1.1.26: Sep 24 2009</h3><ul>
+ <li> Improvement:
+ Add xsltProcessOneNode to exported symbols for lxml (Daniel Veillard)
+ </li>
+ <li> Bug fixes:
+ Fix an idness generation problem (Daniel Veillard),
+ 595612 Try to fix some locking problems (Daniel Veillard),
+ Fix a crash on misformed imported stylesheets (Daniel Veillard)
+ </li>
+</ul><h3>1.1.25: Sep 17 2009</h3><ul>
+ <li> Features:
+ Add API versioning and various cleanups (Daniel Veillard),
+ xsl:sort lang support using the locale (Nick Wellnhofer and Roumen Petrov)
+ </li>
+ <li> Documentation:
+ Fix the download links for Solaris (Daniel Veillard),
+ Fix makefile and spec file to include doc in rpm (Daniel Veillard)
+ </li>
+ <li> Portability:
+ Make sure testThreads is linked with pthreads (Daniel Veillard),
+ Fix potential crash on debug of extensions Solaris (Ben Walton),
+ applied patch from Roumen Petrov for mingw cross compilation problems (Roumen Petrov),
+ patch from Richard Jones to build shared libs with MinGW cross-compiler (Richard Jones),
+ fix include path when compiling with MinGW (Roumen Petrov),
+ portability fixes ( Nick Wellnhofer and Roumen Petrov)
+ </li>
+ <li> Bug fixes:
+ Big fixes of pattern compilations (Nick Wellnhofer),
+ Fix uses of xmlAddChild for error handling (Daniel Veillard),
+ Detect deep recusion on function calls (Daniel Veillard),
+ Avoid an error in namespace generation (Martin),
+ Fix importing of encoding from included stylesheets (Nick Wellnhofer),
+ Fix problems with embedded stylesheets and namespaces (Martin),
+ QName parsing fix for patterns (Martin),
+ Crash compiling stylesheet with DTD (Martin),
+ Fix xsl:strip-space with namespace and wildcard (Nick Wellnhofer),
+ Fix a mutex deadlock on unregistered extensions (Nix),
+ 567192 xsltproc --output option ignore --xinclude (Joachim Breitner),
+ Fix redundant headers in list (Daniel Veillard),
+ 134754 Configure's --with-html-dir related fixes (Julio M. Merino Vidal),
+ 305913 a serious problem in extensions reentrancy (Daniel Veillard),
+ Fix an idness issue when building the tree (Daniel Veillard),
+ Fixed indexing error reported by Ron Burk on the mailing list. (William M. Brack),
+ prevent some unchecked pointer accesses (Jake Goulding),
+ fix for CVE-2008-2935 libexslt RC4 encryption/decryption functions Daniel (Daniel Veillard),
+ avoid a quadratic behaviour when hitting duplicates (Daniel Veillard),
+ 544829 fixed option --with-debugger (Arun Ragnavan),
+ 541965 fixed incorrect argument popping in exsltMathAtan2Function (William M. Brack),
+ fix problem with string check for element-available (Ron Burk),
+ 539741 added code to handle literal within an AVT (William M. Brack)
+ </li>
+ <li> Improvements:
+ Allow use of EXSLT outside XSLT (Martin),
+ Support Esperanto locale (Nick Wellnhofer),
+ Change how attributes are copied for id and speed (Daniel Veillard),
+ Add API versioning and various cleanups (Daniel Veillard),
+ Adding a test program to check thread reentrancy (Daniel Veillard),
+ big patch from finishing xsl:sort lang support (Roumen Petrov),
+ add xsl:sort lang support using the locale (Nick Wellnhofer)
+ </li>
+ <li> Cleanups:
+ Label xsltProcessOneNode as static (Daniel Veillard),
+ git setup (Daniel Veillard),
+ fixed typo detected by new libxml2 code (William M. Brack),
+ xsltExtFunctionLookup was defined but never implemented (Ralf Junker)
+ </li>
+</ul><h3>1.1.24: May 13 2008</h3><ul>
+ <li>Documentation: man page fix (Vincent Lefevre).</li>
+ <li>Bug fixes: pattern bug fix, key initialization problems, exclusion of
+ unknown namespaced element on top of stylesheets, python generator
+ syntactic cleanup (Martin)</li>
+</ul><h3>1.1.23: Apr 8 2008</h3><ul>
+ <li>Documentation: fix links for Cygwin DocBook setup (Philippe Bourcier),
+ xsltParseStylesheetDoc doc fix (Jason Viers), fix manpage default
+ maxdepth value </li>
+ <li>Bug fixes: python segfault (Daniel Gryniewicz), week-in-year bug fix
+ (Maurice van der Pot), fix python iterator problem (William Brack),
+ avoid garbage collection problems on str:tokenize and str:split
+ and function results (William Brack and Peter Pawlowski)
+ superfluous re-generation of keys (William Brack), remove superfluous
+ code in xsltExtInitTest (Tony Graham), func:result segfault fix
+ (William Brack), timezone offset problem (Peter Pawlowski),</li>
+ <li>Portability fixes: old gcrypt support fix (Brent Cowgill), Python
+ portability patch (Stephane Bidoul), VS 2008 fix (Rob Richard) </li>
+</ul><h3>1.1.22: Aug 23 2007</h3><ul>
+ <li>Bug fixes: RVT cleanup problems (William Brack), exclude-result-prefix
+ bug (William Brack), stylesheet compilation error handling (Rob Richards).
+ </li>
+ <li>Portability fixes: improve build with VS2005 (Rob Richards),
+ fixing build on AIX (Bjorn Wiberg), fix the security file checks on
+ Windows (Roland Schwarz and Rob Richards). </li>
+ <li>Improvement: add an --encoding option to xsltproc (Drazen Kacar). </li>
+</ul><h3>1.1.21: Jun 12 2007</h3><ul>
+ <li>Bug fixes: out of memory allocation errors (William Brack),
+ namespace problem on compound predicates (William Brack),
+ python space/tab inconsistencies (Andreas Hanke), hook xsl:message
+ to per transformation error callbacks (Shaun McCance),
+ cached RVT problem (William Brack), XPath context maintainance
+ on choose (William Brack), memory leaks in the math module (William
+ Brack), exclude-result-prefix induced namespace problem (William
+ Brack)</li>
+ <li>Build: configure setup for TRIO_REPLACE_STDIO (William Brack)
+ </li><li>Documentation: updated after change from CVs to SVN (William Brack)</li>
+</ul><h3>1.1.20: Jan 17 2007</h3><ul>
+ <li>Portability fixes: strict aliasing fix (Marcus Meissner), BSD portability
+ patches (Roland Illig)</li>
+ <li>Bug fixes: Result Value Tree handling fix (William Brack), function
+ parameters fix (William), uninitialized variable (Kjartan Maraas),
+ empty text node handling (William), plugin support and test fixes (William),
+ fragment support fixes (William)</li>
+ <li>Improvements: python stylesheet compare and transform context
+ access (Nic Ferrier), EXSLT string replace support (Joel Reed),
+ xsltproc better low level error handling (Mike Hommey and William)</li>
+</ul><h3>1.1.19: Nov 29 2006</h3><ul>
+ <li>Bug fixes: entities within attributes (William Brack), Python detection
+ problem (Joseph Sacco), in-scope namespace bug (Mike Hommey), Result
+ value tree caching bug (William Brack)</li>
+</ul><h3>1.1.18: Oct 26 2006</h3><ul>
+ <li>portability and build fixes: DESTDIR problem, build paths in python
+ shared lib, compile when libxml2 doesn't support XInclude (Gary Coady).</li>
+ <li>bug fixes: a number of namespace related bugs (Kasimier Buchcik),
+ parameters bugs (Kasimier Buchcik), proximity position in predicates
+ of match patterns (Kasimier), exslt-node-set troubles with strings
+ (Kasimier), CDATA serialization, Python floats and booleans XPath
+ conversions, XInclude support fixes, RVT cleanup problem (William Brack
+ and Kasimier), attribute checking in stylesheets (Kasimier), xsltForEach
+ context problem (Kasimier), security check should pass full URLs (Shane
+ Corgatelli), security cleanup patch (Mikhail Zabaluev), some python
+ accessor for stylesheet were broken, memory errors when compiling
+ stylesheets (Mike Hommey), EXSLT current date end-of-month problem
+ (William Brack).</li>
+ <li>improvements: refactoring of namespace handling, value-of impleemntation
+ and template internal processing (Kasimier Buchcik), new xsltproc
+ flag to apply Xinclude to stylesheets.</li>
+ <li>documentation: xsltproc man pages (Daniel Leidert), tests updates
+ (William Brack), various typo fixes (Daniel Leidert), comments on
+ versions macros (Peter Breitenlohner).</li>
+</ul><h3>1.1.17: Jun 6 2006</h3><ul>
+ <li>portability fixes: python detection</li>
+ <li>bug fixes: some regression tests, attribute/namespaces output (Kasimier
+ Buchcik), problem in mixed xsl:value-of and xsl:text uses (Kasimier)</li>
+ <li>improvements: internal refactoring (Kasimier Buchcik), use of the XPath
+ object cache in libxml2-2.6.25 (Kasimier)</li>
+</ul><h3>1.1.16: May 01 2006</h3><ul>
+ <li>portability fixes: EXSLT date/time on Solaris and IRIX (Albert Chin),
+ HP-UX build (Albert Chin),
+ </li><li>build fixes: Python detection(Joseph Sacco), plugin configurei
+ (Joel Reed)</li>
+ <li>bug fixes: pattern compilation fix(William Brack), EXSLT date/time
+ fix (Thomas Broyer), EXSLT function bug, potential loop on variable
+ eval, startup race (Christopher Palmer), debug statement left in python
+ (Nic Ferrier), various cleanup based on Coverity reports), error on
+ Out of memory condition (Charles Hardin), various namespace prefixes
+ fixes (Kasimier Buchcik), </li>
+ <li>improvement: speed up sortingi, start of internals refactoring (Kasimier
+ Buchcik)</li>
+ <li>documentation: man page fixes and updates (Daniel Leidert)
+</li></ul><h3>1.1.15: Sep 04 2005</h3><ul>
+ <li>build fixes: Windows build cleanups and updates (Igor Zlatkovic),
+ remove jhbuild warnings</li>
+ <li>bug fixes: negative number formatting (William Brack), number
+ formatting per mille definition (William Brack), XInclude default values
+ (William), text copy bugs (William), bug related to xmlXPathContext size,
+ reuse libxml2 memory management for text nodes, dictionary text bug,
+ forbid variables in match (needs libxml2-2.6.21)</li>
+ <li>improvements: EXSLT dyn:map (Mark Vakoc),</li>
+ <li>documentation: EXSLT date and time functions namespace in man (Jonathan
+ Wakely)</li>
+</ul><h3>1.1.14: Apr 02 2005</h3><ul>
+ <li>bug fixes: text node on stylesheet document without a dictionary
+ (William Brack), more checking of XSLT syntax, calling xsltInit()
+ multiple times, mode values interning raised by Mark Vakoc, bug in
+ pattern matching with ancestors, bug in patterna matching with cascading
+ select, xinclude and document() problem, build outside of source tree
+ (Mike Castle)</li>
+ <li>improvement: added a --nodict mode to xsltproc to check problems for
+ docuemtns without dictionaries</li>
+</ul><h3>1.1.13: Mar 13 2005</h3><ul>
+ <li>build fixes: 64bits cleanup (William Brack), python 2.4 test (William),
+ LIBXSLT_VERSION_EXTRA on Windows (William), Windows makefiles fixes (Joel
+ Reed), libgcrypt-devel requires for RPM spec.</li>
+ <li>bug fixes: exslt day-of-week-in-month (Sal Paradise), xsl:call-template
+ should not change the current template rule (William Brack), evaluation
+ of global variables (William Brack), RVT's in XPath predicates (William),
+ namespace URI on template names (Mark Vakoc), stat() for Windows patch
+ (Aleksey Gurtovoy), pattern expression fixes (William Brack), out of
+ memory detection misses (William), parserOptions propagation (William),
+ exclude-result-prefixes fix (William), // patten fix (William).</li>
+ <li>extensions: module support (Joel Reed), dictionary based speedups
+ trying to get rid of xmlStrEqual as much as possible.</li>
+ <li>documentation: added Wiki (Joel Reed)</li>
+</ul><h3>1.1.12: Oct 29 2004</h3><ul>
+ <li>build fixes: warnings removal (William).</li>
+ <li>bug fixes: attribute document pointer fix (Mark Vakoc), exslt date
+ negative periods (William Brack), generated tree structure fixes,
+ namespace lookup fix, use reentrant gmtime_r (William Brack),
+ exslt:funtion namespace fix (William), potential NULL pointer reference
+ (Dennis Dams, William), force string interning on generated
+ documents.</li>
+ <li>documentation: update of the second tutorial (Panagiotis Louridas), add
+ exslt doc in rpm packages, fix the xsltproc man page.</li>
+</ul><h3>1.1.11: Sep 29 2004</h3><ul>
+ <li>bug fixes: xsl:include problems (William Brack), UTF8 number pattern
+ (William), date-time validation (William), namespace fix (William),
+ various Exslt date fixes (William), error callback fixes, leak with
+ namespaced global variable, attempt to fix a weird problem #153137</li>
+ <li>improvements: exslt:date-sum tests (Derek Poon)</li>
+ <li>documentation: second tutorial by Panagiotis Lourida</li>
+</ul><h3>1.1.10: Aug 31 2004</h3><ul>
+ <li>build fix: NUL in c file blocking compilation on Solaris, Windows build
+ (Igor Zlatkovic)</li>
+ <li>fix: key initialization problem (William Brack)</li>
+ <li>documentation: fixed missing man page description for --path</li>
+</ul><h3>1.1.9: Aug 22 2004</h3><ul>
+ <li>build fixes: missing tests (William Brack), Python dependancies, Python
+ on 64bits boxes, --with-crypto flag (Rob Richards),</li>
+ <li>fixes: RVT key handling (William), Python binding (William and Sitsofe
+ Wheeler), key and XPath troubles (William), template priority on imports
+ (William), str:tokenize with empty strings (William), #default namespace
+ alias behaviour (William), doc ordering missing for main document
+ (William), 64bit bug (Andreas Schwab)</li>
+ <li>improvements: EXSLT date:sum added (Joel Reed), hook for document
+ loading for David Hyatt, xsltproc --nodtdattr to avoid defaulting DTD
+ attributes, extend xsltproc --version with CVS stamp (William).</li>
+ <li>Documentation: web page problem reported by Oliver Stoeneberg</li>
+</ul><h3>1.1.8: July 5 2004</h3><ul>
+ <li>build fixes: Windows runtime options (Oliver Stoeneberg), Windows
+ binary package layout (Igor Zlatkovic), libgcrypt version test and link
+ (William)</li>
+ <li>documentation: fix libxslt namespace name in doc (William)</li>
+ <li>bug fixes: undefined namespace message (William Brack), search engine
+ (William), multiple namespace fixups (William), namespace fix for key
+ evaluation (William), Python memory debug bindings,</li>
+ <li>improvements: crypto extensions for exslt (Joel Reed, William)</li>
+</ul><h3>1.1.7: May 17 2004</h3><ul>
+ <li>build fix: warning about localtime_r on Solaris</li>
+ <li>bug fix: UTF8 string tokenize (William Brack), subtle memory
+ corruption, linefeed after comment at document level (William),
+ disable-output-escaping problem (William), pattern compilation in deep
+ imported stylesheets (William), namespace extension prefix bug,
+ libxslt.m4 bug (Edward Rudd), namespace lookup for attribute, namespaced
+ DOCTYPE name</li>
+</ul><h3>1.1.6: Apr 18 2004</h3><ul>
+ <li>2 bug fixes about keys fixed one by Mark Vakoc</li>
+</ul><h3>1.1.5: Mar 23 2004</h3><ul>
+ <li>performance: use dictionary lookup for variables</li>
+ <li>remove use of _private from source documents</li>
+ <li>cleanup of "make tests" output</li>
+ <li>bugfixes: AVT in local variables, use localtime_r to avoid thread
+ troubles (William), dictionary handling bug (William), limited number of
+ stubstitutions in AVT (William), tokenize fix for UTF-8 (William),
+ superfluous namespace (William), xsltproc error code on
+ &lt;xsl:message&gt; halt, OpenVMS fix, dictionary reference counting
+ change.</li>
+</ul><h3>1.1.4: Feb 23 2004</h3><ul>
+ <li>bugfixes: attributes without doc (Mariano Suárez-Alvarez), problem with
+ Yelp, extension problem</li>
+ <li>display extension modules (Steve Little)</li>
+ <li>Windows compilation patch (Mark Vadoc), Mingw (Mikhail Grushinskiy)</li>
+</ul><h3>1.1.3: Feb 16 2004</h3><ul>
+ <li>Rewrote the Attribute Value Template code, new XPath compilation
+ interfaces, dictionary reuses for XSLT with potential for serious
+ performance improvements.</li>
+ <li>bug fixes: portability (William Brack), key() in node-set() results
+ (William), comment before doctype (William), math and node-set() problems
+ (William), cdata element and default namespace (William), behaviour on
+ unknown XSLT elements (Stefan Kost), priority of "//foo" patterns
+ (William), xsl:element and xsl:attribute QName check (William), comments
+ with -- (William), attribute namespace (William), check for ?&gt; in PI
+ (William)</li>
+ <li>Documentations: cleanup (John Fleck and William)</li>
+ <li>Python: patch for OS-X (Gianni Ceccarelli), enums export (Stephane
+ bidoul)</li>
+</ul><h3>1.1.2: Dec 24 2003</h3><ul>
+ <li>Documentation fixes (John Fleck, William Brack), EXSLT documentation
+ (William Brack)</li>
+ <li>Windows compilation fixes for MSVC and Mingw (Igor Zlatkovic)</li>
+ <li>Bug fixes: exslt:date returning NULL strings (William Brack),
+ namespaces output (William Brack), key and namespace definition problem,
+ passing options down to the document() parser, xsl:number fixes (William
+ Brack)</li>
+</ul><h3>1.1.1: Dec 10 2003</h3><ul>
+ <li>code cleanup (William Brack)</li>
+ <li>Windows: Makefile improvements (Igor Zlatkovic)</li>
+ <li>documentation improvements: William Brack, libexslt man page (Jonathan
+ Wakely)</li>
+ <li>param in EXSLT functions (Shaun McCance)</li>
+ <li>XSLT debugging improvements (Mark Vakoc)</li>
+ <li>bug fixes: number formatting (Bjorn Reese), exslt:tokenize (William
+ Brack), key selector parsing with | reported by Oleg Paraschenko,
+ xsl:element with computed namespaces (William Brack), xslt:import/include
+ recursion detection (William Brack), exslt:function used in keys (William
+ Brack), bug when CDATA_SECTION are foun in the tree (William Brack),
+ entities handling when using XInclude.</li>
+</ul><h3>1.1.0: Nov 4 2003</h3><ul>
+ <li>Removed DocBook SGML broken support</li>
+ <li>fix xsl:key to work with PIs</li>
+ <li>Makefile and build improvement (Graham Wilson), build cleanup (William
+ Brack), macro fix (Justin Fletcher), build outside of source tree (Roumen
+ Petrov)</li>
+ <li>xsltproc option display fix (Alexey Efimov), --load-trace (Crutcher
+ Dunnavant)</li>
+ <li>Python: never use stdout for error</li>
+ <li>extension memory error fix (Karl Eichwalder)</li>
+ <li>header path fixes (Steve Ball)</li>
+ <li>added saxon:line-number() to libexslt (Brett Kail)</li>
+ <li>Fix some tortuous template problems when using predicates (William
+ Brack)</li>
+ <li>Debugger status patch (Kasimier Buchcik)</li>
+ <li>Use new libxml2-2.6.x APIs for faster processing</li>
+ <li>Make sure xsl:sort is empty</li>
+ <li>Fixed a bug in default processing of attributes</li>
+ <li>Removes the deprecated breakpoint library</li>
+ <li>detect invalid names on templates (William Brack)</li>
+ <li>fix exslt:document (and similar) base handling problem</li>
+</ul><h3>1.0.33: Sep 12 2003</h3><p>This is a bugfix only release</p><ul>
+ <li>error message missing argument (William Brack)</li>
+ <li>mode not cascaded in template fallbacks (William Brack)</li>
+ <li>catch redefinition of parameter/variables (William Brack)</li>
+ <li>multiple keys with same namespace name (William Brack)</li>
+ <li>patch for compilation using MingW on Windows (Mikhail Grushinskiy)</li>
+ <li>header export macros for Windows (Igor Zlatkovic)</li>
+ <li>cdata-section-elements handling of namespaced names</li>
+ <li>compilation without libxml2 XPointer support (Mark Vadoc)</li>
+ <li>apply-templates crash (William Brack)</li>
+ <li>bug with imported templates (William Brack)</li>
+ <li>imported attribute-sets merging bug (DocBook) (William Brack)</li>
+</ul><h3>1.0.32: Aug 9 2003</h3><ul>
+ <li>bugfixes: xsltSaveResultToFile() python binding (Chris Jaeger), EXSLT
+ function (William Brack), RVT for globals (William Brack), EXSLT date
+ (William Brack),
+ <p>speed of large text output, xsl:copy with attributes, strip-space and
+ namespaces prefix, fix for --path xsltproc option, EXST:tokenize (Shaun
+ McCance), EXSLT:seconds (William Brack), sort with multiple keys (William
+ Brack), checking of { and } for attribute value templates (William
+ Brack)</p>
+ </li>
+ <li>Python bindings for extension elements (Sean Treadway)</li>
+ <li>EXSLT:split added (Shaun McCance)</li>
+ <li>portability fixes for HP-UX/Solaris/IRIX (William Brack)</li>
+ <li>doc cleanup</li>
+</ul><h3>1.0.31: Jul 6 2003</h3><ul>
+ <li>bugfixes: xsl:copy on namespace nodes, AVT for xsl:sort order, fix for
+ the debugger (Keith Isdale), output filename limitation, trio.h and
+ triodef.h added (Albert Chin), EXSLT node-set (Peter Breitenlohner),
+ xsltChoose and whitespace (Igor Zlatkovic),
+ <p>stylesheet compilation (Igor Zlatkovic), NaN and sort (William Brack),
+ RVT bug introduced in 1.0.30</p>
+ </li>
+ <li>avoid generating &amp;quot; (fix in libxml2-2.5.8)</li>
+ <li>fix 64bit cleaness problem and compilation troubles introduced in
+ 1.0.30</li>
+ <li>Windows makefile generation (Igor Zlatkovic)</li>
+ <li>HP-UX portability fix</li>
+</ul><h3>1.0.30: May 4 2003</h3><ul>
+ <li>Fixes and new APIs to handle Result Value Trees and avoid leaks</li>
+ <li>Fixes for: EXSLT math pow() function (Charles Bozeman), global
+ parameter and global variables mismatch, a segfault on pattern
+ compilation errors, namespace copy in xsl:copy-of, python generator
+ problem, OpenVMS trio update, premature call to xsltFreeStackElem (Igor),
+ current node when templates applies to attributes</li>
+</ul><h3>1.0.29: Apr 1 2003</h3><ul>
+ <li>performance improvements especially for large flat documents</li>
+ <li>bug fixes: Result Value Tree handling, XML IDs, keys(), extra namespace
+ declarations with xsl:elements.</li>
+ <li>portability: python and trio fixes (Albert Chin), python on Solaris
+ (Ben Phillips)</li>
+</ul><h3>1.0.28: Mar 24 2003</h3><ul>
+ <li>fixed node() in patterns semantic.</li>
+ <li>fixed a memory access problem in format-number()</li>
+ <li>fixed stack overflow in recursive global variable or params</li>
+ <li>cleaned up Result Value Tree handling, and fixed a couple of old bugs
+ in the process</li>
+</ul><h3>1.0.27: Feb 24 2003</h3><ul>
+ <li>bug fixes: spurious xmlns:nsX="" generation, serialization bug (in
+ libxml2), a namespace copy problem, errors in the RPM spec prereqs</li>
+ <li>Windows path canonicalization and document cache fix (Igor)</li>
+</ul><h3>1.0.26: Feb 10 2003</h3><ul>
+ <li>Fixed 3 serious bugs in document() and stylesheet compilation which
+ could lead to a crash</li>
+</ul><h3>1.0.25: Feb 5 2003</h3><ul>
+ <li>Bug fix: double-free for standalone stylesheets introduced in 1.0.24, C
+ syntax pbm, 3 bugs reported by Eric van der Vlist</li>
+ <li>Some XPath and XInclude related problems were actually fixed in
+ libxml2-2.5.2</li>
+ <li>Documentation: emphasize taht --docbook is not for XML docs.</li>
+</ul><h3>1.0.24: Jan 14 2003</h3><ul>
+ <li>bug fixes: imported global varables, python bindings (Stéphane Bidoul),
+ EXSLT memory leak (Charles Bozeman), namespace generation on
+ xsl:attribute, space handling with imports (Daniel Stodden),
+ extension-element-prefixes (Josh Parsons), comments within xsl:text (Matt
+ Sergeant), superfluous xmlns generation, XInclude related bug for
+ numbering, EXSLT strings (Alexey Efimov), attribute-sets computation on
+ imports, extension module init and shutdown callbacks not called</li>
+ <li>HP-UX portability (Alexey Efimov), Windows makefiles (Igor and Stephane
+ Bidoul), VMS makefile updates (Craig A. Berry)</li>
+ <li>adds xsltGetProfileInformation() (Michael Rothwell)</li>
+ <li>fix the API generation scripts</li>
+ <li>API to provide the sorting routines (Richard Jinks)</li>
+ <li>added XML description of the EXSLT API</li>
+ <li>added ESXLT URI (un)escaping (Jörg Walter)</li>
+ <li>Some memory leaks have been found and fixed</li>
+ <li>document() now support fragment identifiers in URIs</li>
+</ul><h3>1.0.23: Nov 17 2002</h3><ul>
+ <li>Windows build cleanup (Igor)</li>
+ <li>Unix build and RPM packaging cleanup</li>
+ <li>Improvement of the python bindings: extension functions and activating
+ EXSLT</li>
+ <li>various bug fixes: number formatting, portability for bounded string
+ functions, CData nodes, key(), @*[...] patterns</li>
+ <li>Documentation improvements (John Fleck)</li>
+ <li>added libxslt.m4 (Thomas Schraitle)</li>
+</ul><h3>1.0.22: Oct 18 2002</h3><ul>
+ <li>Updates on the Windows Makefiles</li>
+ <li>Added a security module, and a related set of new options to
+ xsltproc</li>
+ <li>Allowed per transformation error handler.</li>
+ <li>Fixed a few bugs: node() semantic, URI escaping, media-type, attribute
+ lists</li>
+</ul><h3>1.0.21: Sep 26 2002</h3><ul>
+ <li>Bug fixes: match="node()", date:difference() (Igor and Charlie
+ Bozeman), disable-output-escaping</li>
+ <li>Python bindings: style.saveResultToString() from Ralf Mattes</li>
+ <li>Logos from Marc Liyanage</li>
+ <li>Mem leak fix from Nathan Myers</li>
+ <li>Makefile: DESTDIR fix from Christophe Merlet, AMD x86_64 (Mandrake),
+ Windows (Igor), Python detection</li>
+ <li>Documentation improvements: John Fleck</li>
+</ul><h3>1.0.20: Aug 23 2002</h3><ul>
+ <li>Windows makefile updates (Igor) and x86-64 (Frederic Crozat)</li>
+ <li>fixed HTML meta tag saving for Mac/IE users</li>
+ <li>possible leak patches from Nathan Myers</li>
+ <li>try to handle document('') as best as possible depending in the
+ cases</li>
+ <li>Fixed the DocBook stylesheets handling problem</li>
+ <li>Fixed a few XSLT reported errors</li>
+</ul><h3>1.0.19: July 6 2002</h3><ul>
+ <li>EXSLT: dynamic functions and date support bug fixes (Mark Vakoc)</li>
+ <li>xsl:number fix: Richard Jinks</li>
+ <li>xsl:format-numbers fix: Ken Neighbors</li>
+ <li>document('') fix: bug pointed by Eric van der Vlist</li>
+ <li>xsl:message with terminate="yes" fixes: William Brack</li>
+ <li>xsl:sort order support added: Ken Neighbors</li>
+ <li>a few other bug fixes, some of them requiring the latest version of
+ libxml2</li>
+</ul><h3>1.0.18: May 27 2002</h3><ul>
+ <li>a number of bug fixes: attributes, extra namespace declarations
+ (DocBook), xsl:include crash (Igor), documentation (Christian Cornelssen,
+ Charles Bozeman and Geert Kloosterman), element-available (Richard
+ Jinks)</li>
+ <li>xsltproc can now list teh registered extensions thanks to Mark
+ Vakoc</li>
+ <li>there is a new API to save directly to a string
+ xsltSaveResultToString() by Morus Walter</li>
+ <li>specific error registration function for the python API</li>
+</ul><h3>1.0.17: April 29 2002</h3><ul>
+ <li>cleanup in code, XSLT debugger support and Makefiles for Windows by
+ Igor</li>
+ <li>a C++ portability fix by Mark Vakoc</li>
+ <li>EXSLT date improvement and regression tests by Charles Bozeman</li>
+ <li>attempt to fix a bug in xsltProcessUserParamInternal</li>
+</ul><h3>1.0.16: April 15 2002</h3><ul>
+ <li>Bug fixes: strip-space, URL in HTML output, error when xsltproc can't
+ save</li>
+ <li>portability fixes: OSF/1, IEEE on alphas, Windows, Python bindings</li>
+</ul><h3>1.0.15: Mar 25 2002</h3><ul>
+ <li>Bugfixes: XPath, python Makefile, recursive attribute sets, @foo[..]
+ templates</li>
+ <li>Debug of memory alocation with valgind</li>
+ <li>serious profiling leading to significant improvement for DocBook
+ processing</li>
+ <li>revamp of the Windows build</li>
+</ul><h3>1.0.14: Mar 18 2002</h3><ul>
+ <li>Improvement in the XPath engine (libxml2-2.4.18)</li>
+ <li>Nasty bug fix related to exslt:node-set</li>
+ <li>Fixed the python Makefiles, cleanup of doc comments, Windows
+ portability fixes</li>
+</ul><h3>1.0.13: Mar 8 2002</h3><ul>
+ <li>a number of bug fixes including "namespace node have no parents"</li>
+ <li>Improvement of the Python bindings</li>
+ <li>Charles Bozeman provided fixes and regression tests for exslt date
+ functions.</li>
+</ul><h3>1.0.12: Feb 11 2002</h3><ul>
+ <li>Fixed the makefiles especially the python module ones</li>
+ <li>half a dozen bugs fixes including 2 old ones</li>
+</ul><h3>1.0.11: Feb 8 2002</h3><ul>
+ <li>Change of Licence to the <a href="http://www.opensource.org/licenses/mit-license.html">MIT
+ Licence</a></li>
+ <li>Added a beta version of the Python bindings, including support to
+ extend the engine with functions written in Python</li>
+ <li>A number of bug fixes</li>
+ <li>Charlie Bozeman provided more EXSLT functions</li>
+ <li>Portability fixes</li>
+</ul><h3>1.0.10: Jan 14 2002</h3><ul>
+ <li>Windows fixes for Win32 from Igor</li>
+ <li>Fixed the Solaris compilation trouble (Albert)</li>
+ <li>Documentation changes and updates: John Fleck</li>
+ <li>Added a stringparam option to avoid escaping hell at the shell
+ level</li>
+ <li>A few bug fixes</li>
+</ul><h3>1.0.9: Dec 7 2001</h3><ul>
+ <li>Makefile patches from Peter Williams</li>
+ <li>attempt to fix the compilation problem associated to prelinking</li>
+ <li>obsoleted libxsltbreakpoint now deprecated and frozen to 1.0.8 API</li>
+ <li>xsltproc return codes are now significant, John Fleck updated the
+ documentation</li>
+ <li>patch to allow as much as 40 steps in patterns (Marc Tardif), should be
+ made dynamic really</li>
+ <li>fixed a bug raised by Nik Clayton when using doctypes with HTML
+ output</li>
+ <li>patches from Keith Isdale to interface with xsltdebugger</li>
+</ul><h3>1.0.8: Nov 26 2001</h3><ul>
+ <li>fixed an annoying header problem, removed a few bugs and some code
+ cleanup</li>
+ <li>patches for Windows and update of Windows Makefiles by Igor</li>
+ <li>OpenVMS port instructions from John A Fotheringham</li>
+ <li>fixed some Makefiles annoyance and libraries prelinking
+ information</li>
+</ul><h3>1.0.7: Nov 10 2001</h3><ul>
+ <li>remove a compilation problem with LIBXSLT_PUBLIC</li>
+ <li>Finishing the integration steps for Keith Isdale debugger</li>
+ <li>fixes the handling of indent="no" on HTML output</li>
+ <li>fixes on the configure script and RPM spec file</li>
+</ul><h3>1.0.6: Oct 30 2001</h3><ul>
+ <li>bug fixes on number formatting (Thomas), date/time functions (Bruce
+ Miller)</li>
+ <li>update of the Windows Makefiles (Igor)</li>
+ <li>fixed DOCTYPE generation rules for HTML output (me)</li>
+</ul><h3>1.0.5: Oct 10 2001</h3><ul>
+ <li>some portability fixes, including Windows makefile updates from
+ Igor</li>
+ <li>fixed a dozen bugs on XSLT and EXSLT (me and Thomas Broyer)</li>
+ <li>support for Saxon's evaluate and expressions extensions added (initial
+ contribution from Darren Graves)</li>
+ <li>better handling of XPath evaluation errors</li>
+</ul><h3>1.0.4: Sep 12 2001</h3><ul>
+ <li>Documentation updates from John fleck</li>
+ <li>bug fixes (DocBook FO generation should be fixed) and portability
+ improvements</li>
+ <li>Thomas Broyer improved the existing EXSLT support and added String,
+ Time and Date core functions support</li>
+</ul><h3>1.0.3: Aug 23 2001</h3><ul>
+ <li>XML Catalog support see the doc</li>
+ <li>New NaN/Infinity floating point code</li>
+ <li>A few bug fixes</li>
+</ul><h3>1.0.2: Aug 15 2001</h3><ul>
+ <li>lot of bug fixes, increased the testsuite</li>
+ <li>a large chunk of EXSLT is implemented</li>
+ <li>improvements on the extension framework</li>
+ <li>documentation improvements</li>
+ <li>Windows MSC projects files should be up-to-date</li>
+ <li>handle attributes inherited from the DTD by default</li>
+</ul><h3>1.0.1: July 24 2001</h3><ul>
+ <li>initial EXSLT framework</li>
+ <li>better error reporting</li>
+ <li>fixed the profiler on Windows</li>
+ <li>bug fixes</li>
+</ul><h3>1.0.0: July 10 2001</h3><ul>
+ <li>a lot of cleanup, a lot of regression tests added or fixed</li>
+ <li>added a documentation for <a href="extensions.html">writing
+ extensions</a></li>
+ <li>fixed some variable evaluation problems (with William)</li>
+ <li>added profiling of stylesheet execution accessible as the xsltproc
+ --profile option</li>
+ <li>fixed element-available() and the implementation of the various
+ chunking methods present, Norm Walsh provided a lot of feedback</li>
+ <li>exclude-result-prefixes and namespaces output should now work as
+ expected</li>
+ <li>added support of embedded stylesheet as described in section 2.7 of the
+ spec</li>
+</ul><h3>0.14.0: July 5 2001</h3><ul>
+ <li>lot of bug fixes, and code cleanup</li>
+ <li>completion of the little XSLT-1.0 features left unimplemented</li>
+ <li>Added and implemented the extension API suggested by Thomas Broyer</li>
+ <li>the Windows MSC environment should be complete</li>
+ <li>tested and optimized with a really large document (DocBook Definitive
+ Guide) libxml/libxslt should really be faster on serious workloads</li>
+</ul><h3>0.13.0: June 26 2001</h3><ul>
+ <li>lots of cleanups</li>
+ <li>fixed a C++ compilation problem</li>
+ <li>couple of fixes to xsltSaveTo()</li>
+ <li>try to fix Docbook-xslt-1.4 and chunking, updated the regression test
+ with them</li>
+ <li>fixed pattern compilation and priorities problems</li>
+ <li>Patches for Windows and MSC project mostly contributed by Yon Derek</li>
+ <li>update to the Tutorial by John Fleck</li>
+ <li>William fixed bugs in templates and for-each functions</li>
+ <li>added a new interface xsltRunStylesheet() for a more flexible output
+ (incomplete), added -o option to xsltproc</li>
+</ul><h3>0.12.0: June 18 2001</h3><ul>
+ <li>fixed a dozen of bugs reported</li>
+ <li>HTML generation should be quite better (requires libxml-2.3.11 upgrade
+ too)</li>
+ <li>William fixed some problems with document()</li>
+ <li>Fix namespace nodes selection and copy (requires libxml-2.3.11 upgrade
+ too)</li>
+ <li>John Fleck added a<a href="tutorial/libxslttutorial.html">
+ tutorial</a></li>
+ <li>Fixes for namespace handling when evaluating variables</li>
+ <li>XInclude global flag added to process XInclude on document() if
+ requested</li>
+ <li>made xsltproc --version more detailed</li>
+</ul><h3>0.11.0: June 1 2001</h3><p>Mostly a bug fix release.</p><ul>
+ <li>integration of catalogs from xsltproc</li>
+ <li>added --version to xsltproc for bug reporting</li>
+ <li>fixed errors when handling ID in external parsed entities</li>
+ <li>document() should hopefully work correctly but ...</li>
+ <li>fixed bug with PI and comments processing</li>
+ <li>William fixed the XPath string functions when using unicode</li>
+</ul><h3>0.10.0: May 19 2001</h3><ul>
+ <li>cleanups to make stylesheet read-only (not 100% complete)</li>
+ <li>fixed URI resolution in document()</li>
+ <li>force all XPath expression to be compiled at stylesheet parsing time,
+ even if unused ...</li>
+ <li>Fixed HTML default output detection</li>
+ <li>Fixed double attribute generation #54446</li>
+ <li>Fixed {{ handling in attributes #54451</li>
+ <li>More tests and speedups for DocBook document transformations</li>
+ <li>Fixed a really bad race like bug in xsltCopyTreeList()</li>
+ <li>added a documentation on the libxslt internals</li>
+ <li>William Brack and Bjorn Reese improved format-number()</li>
+ <li>Fixed multiple sort, it should really work now</li>
+ <li>added a --docbook option for SGML DocBook input (hackish)</li>
+ <li>a number of other bug fixes and regression test added as people were
+ submitting them</li>
+</ul><h3>0.9.0: May 3 2001</h3><ul>
+ <li>lot of various bugfixes, extended the regression suite</li>
+ <li>xsltproc should work with multiple params</li>
+ <li>added an option to use xsltproc with HTML input</li>
+ <li>improved the stylesheet compilation, processing of complex stylesheets
+ should be faster</li>
+ <li>using the same stylesheet for concurrent processing on multithreaded
+ programs should work now</li>
+ <li>fixed another batch of namespace handling problems</li>
+ <li>Implemented multiple level of sorting</li>
+</ul><h3>0.8.0: Apr 22 2001</h3><ul>
+ <li>fixed ansidecl.h problem</li>
+ <li>fixed unparsed-entity-uri() and generate-id()</li>
+ <li>sort semantic fixes and priority prob from William M. Brack</li>
+ <li>fixed namespace handling problems in XPath expression computations
+ (requires libxml-2.3.7)</li>
+ <li>fixes to current() and key()</li>
+ <li>other, smaller fixes, lots of testing with N Walsh DocBook HTML
+ stylesheets</li>
+</ul><h3>0.7.0: Apr 10 2001</h3><ul>
+ <li>cleanup using stricter compiler flags</li>
+ <li>command line parameter passing</li>
+ <li>fix to xsltApplyTemplates from William M. Brack</li>
+ <li>added the XSLTMark in the regression tests as well as document()</li>
+</ul><h3>0.6.0: Mar 22 2001</h3><ul>
+ <li>another beta</li>
+ <li>requires 2.3.5, which provide XPath expression compilation support</li>
+ <li>document() extension should function properly</li>
+ <li>fixed a number or reported bugs</li>
+</ul><h3>0.5.0: Mar 10 2001</h3><ul>
+ <li>fifth beta</li>
+ <li>some optimization work, for the moment 2 XSLT transform cannot use the
+ same stylesheet at the same time (to be fixed)</li>
+ <li>fixed problems with handling of tree results</li>
+ <li>fixed a reported strip-spaces problem</li>
+ <li>added more reported/fixed bugs to the test suite</li>
+ <li>incorporated William M. Brack fix for imports and global variables as
+ well as patch for with-param support in apply-templates</li>
+ <li>a bug fix on for-each</li>
+</ul><h3>0.4.0: Mar 1 2001</h3><ul>
+ <li>fourth beta test, released at the same time of libxml2-2.3.3</li>
+ <li>bug fixes</li>
+ <li>some optimization</li>
+ <li>started implement extension support, not finished</li>
+ <li>implemented but not tested multiple file output</li>
+</ul><h3>0.3.0: Feb 24 2001</h3><ul>
+ <li>third beta test, released at the same time of libxml2-2.3.2</li>
+ <li>lot of bug fixes</li>
+ <li>some optimization</li>
+ <li>added DocBook XSL based testsuite</li>
+</ul><h3>0.2.0: Feb 15 2001</h3><ul>
+ <li>second beta version, released at the same time as libxml2-2.3.1</li>
+ <li>getting close to feature completion, lot of bug fixes, some in the HTML
+ and XPath support of libxml</li>
+ <li>start becoming usable for real work. This version can now regenerate
+ the XML 2e HTML from the original XML sources and the associated
+ stylesheets (in <a href="http://www.w3.org/TR/REC-xml#b4d250b6c21">section I of the XML
+ REC</a>)</li>
+ <li>Still misses extension element/function/prefixes support. Support of
+ key() and document() is not complete</li>
+</ul><h3>0.1.0: Feb 8 2001</h3><ul>
+ <li>first beta version, released at the same time as libxml2-2.3.0</li>
+ <li>lots of bug fixes, first "testing" version, but incomplete</li>
+</ul><h3>0.0.1: Jan 25 2001</h3><ul>
+ <li>first alpha version released at the same time as libxml2-2.2.12</li>
+ <li>Framework in place, should work on simple examples, but far from being
+ feature complete</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/news.xsl b/libxslt/doc/news.xsl
new file mode 100644
index 0000000..4ec2bc5
--- /dev/null
+++ b/libxslt/doc/news.xsl
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:xhtml="http://www.w3.org/1999/xhtml"
+ version="1.0">
+ <xsl:output method="text" encoding="ISO-8859-1"/>
+
+ <xsl:template match="/">
+ <xsl:text>
+ NEWS file for libxslt
+
+ Note that this is automatically generated from the news webpage at:
+ http://xmlsoft.org/XSLT/news.html
+
+</xsl:text>
+ <xsl:apply-templates select="//xhtml:h3[1]/.."/>
+ </xsl:template>
+ <xsl:template match="xhtml:h3">
+ <xsl:text>
+</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>:
+</xsl:text>
+ </xsl:template>
+ <xsl:template match="xhtml:ul">
+ <xsl:apply-templates select=".//xhtml:li"/>
+ <xsl:text>
+</xsl:text>
+ </xsl:template>
+ <xsl:template match="xhtml:li">
+ <xsl:text> - </xsl:text>
+ <xsl:value-of select="."/>
+ <xsl:text>
+</xsl:text>
+ </xsl:template>
+ <xsl:template match="xhtml:a">
+ <xsl:value-of select="."/>
+ <xsl:text> at
+</xsl:text>
+ <xsl:value-of select="@href"/>
+ <xsl:text>
+</xsl:text>
+ </xsl:template>
+</xsl:stylesheet>
+
diff --git a/libxslt/doc/node.fig b/libxslt/doc/node.fig
new file mode 100644
index 0000000..aaed2d4
--- /dev/null
+++ b/libxslt/doc/node.fig
@@ -0,0 +1,91 @@
+#FIG 3.2
+Landscape
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+6 825 6675 2925 7350
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 4
+ 825 6975 825 6675 2925 6675 2925 6975
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 825 7050 825 7350
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 2925 7050 2925 7350
+-6
+6 4500 6675 6600 7350
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 4
+ 4500 6975 4500 6675 6600 6675 6600 6975
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 4500 7050 4500 7350
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 6600 7050 6600 7350
+-6
+6 1275 150 3375 825
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 4
+ 1275 525 1275 825 3375 825 3375 525
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 1275 450 1275 150
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 3375 450 3375 150
+-6
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2400 2025 4500 2025
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2400 2400 4500 2400
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2400 3150 4500 3150
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2400 3525 4500 3525
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2400 3900 4500 3900
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2400 4275 4500 4275
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2400 4650 4500 4650
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2400 2775 4500 2775
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2400 5025 4500 5025
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 4
+ 975 1575 1725 1575 1725 5625 1125 5625
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 600 1575 900 1575
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 750 5625 1050 5625
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 4
+ 5925 1575 5175 1575 5175 5625 5775 5625
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 6300 1575 6000 1575
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 6150 5625 5850 5625
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 2400 1575 4500 1575 4500 5625 2400 5625 2400 1575
+2 1 0 3 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 3.00 180.00 360.00
+ 2700 3300 1725 3300
+2 1 0 3 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 3.00 180.00 360.00
+ 3975 2925 5175 2925
+2 1 0 3 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 3.00 180.00 360.00
+ 2700 2625 2700 825
+2 1 0 3 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 3.00 180.00 360.00
+ 2700 3750 1575 6675
+2 1 0 3 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 3.00 180.00 360.00
+ 3975 4125 5475 6675
+4 0 0 50 0 0 18 0.0000 4 255 915 2850 1875 _private\001
+4 0 0 50 0 0 18 0.0000 4 225 465 2850 2250 type\001
+4 0 0 50 0 0 18 0.0000 4 135 255 2850 4500 ns\001
+4 0 0 50 0 0 18 0.0000 4 255 1125 2850 4875 properties\001
+4 0 0 50 0 0 18 0.0000 4 165 855 2850 5325 content\001
+4 0 0 50 0 0 18 0.0000 4 30 180 2850 5550 ...\001
+4 0 0 50 0 0 18 0.0000 4 195 495 2850 3375 prev\001
+4 0 0 50 0 0 18 0.0000 4 195 390 2850 4200 last\001
+4 0 0 50 0 0 18 0.0000 4 165 495 2850 3000 next\001
+4 0 0 50 0 0 18 0.0000 4 195 930 2850 3825 children\001
+4 0 0 50 0 0 18 0.0000 4 225 720 2850 2625 parent\001
diff --git a/libxslt/doc/node.gif b/libxslt/doc/node.gif
new file mode 100644
index 0000000..158e921
--- /dev/null
+++ b/libxslt/doc/node.gif
Binary files differ
diff --git a/libxslt/doc/object.fig b/libxslt/doc/object.fig
new file mode 100644
index 0000000..2955bbd
--- /dev/null
+++ b/libxslt/doc/object.fig
@@ -0,0 +1,90 @@
+#FIG 3.2
+Landscape
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+6 5700 1950 6525 3450
+2 2 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 5
+ 5700 1950 6525 1950 6525 3450 5700 3450 5700 1950
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 5700 2250 6525 2250
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 5700 2550 6525 2550
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 5700 2850 6525 2850
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 5700 3150 6525 3150
+-6
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 450 1875 2100 1875
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 450 1275 2100 1275
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 450 1575 2100 1575
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 450 2175 2100 2175
+2 2 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 5
+ 450 975 2100 975 2100 3300 450 3300 450 975
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 450 2550 2100 2550
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 1950 1425 3525 1425
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 3525 1500 4800 1500
+2 1 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 3525 1800 4800 1800
+2 2 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 5
+ 3525 1200 4800 1200 4800 2100 3525 2100 3525 1200
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 4725 1950 5700 1950
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 6150 2100 7050 1875
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 6150 2400 8025 2025
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 6150 2700 7650 2700
+2 2 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 5
+ 8025 825 8475 825 8475 1275 8025 1275 8025 825
+2 2 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 5
+ 8475 2400 8925 2400 8925 2850 8475 2850 8475 2400
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 8250 1275 8250 1650
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 8025 1275 7500 1650
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 8250 2100 7875 2400
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 8325 2100 8550 2400
+2 2 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 5
+ 9000 1650 9450 1650 9450 2100 9000 2100 9000 1650
+2 2 0 1 0 7 50 0 -1 4.000 0 0 -1 0 0 5
+ 9225 2400 9675 2400 9675 2850 9225 2850 9225 2400
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 9225 2100 9375 2400
+2 1 0 2 0 7 50 0 -1 6.000 0 0 -1 0 0 2
+ 8475 1275 9150 1650
+2 2 0 2 1 1 50 0 20 6.000 0 0 7 0 0 5
+ 8025 1650 8475 1650 8475 2100 8025 2100 8025 1650
+2 2 0 2 1 1 50 0 20 6.000 0 0 7 0 0 5
+ 7650 2400 8100 2400 8100 2850 7650 2850 7650 2400
+2 2 0 2 1 1 50 0 20 6.000 0 0 7 0 0 5
+ 7050 1650 7500 1650 7500 2100 7050 2100 7050 1650
+4 0 0 50 0 0 18 0.0000 4 255 1875 375 825 xmlXPathObject\001
+4 0 0 50 0 0 18 0.0000 4 225 465 675 1200 type\001
+4 0 0 50 0 0 18 0.0000 4 195 1185 675 1500 nodesetval\001
+4 0 0 50 0 0 18 0.0000 4 195 810 675 1800 boolval\001
+4 0 0 50 0 0 18 0.0000 4 195 840 675 2115 floatval\001
+4 0 0 50 0 0 18 0.0000 4 255 975 675 2430 stringval\001
+4 0 0 50 0 0 18 0.0000 4 195 840 3750 1425 nodeNr\001
+4 0 0 50 0 0 18 0.0000 4 195 1035 3750 1740 nodeMax\001
+4 0 0 50 0 0 18 0.0000 4 195 975 3750 2055 nodeTab\001
+4 0 -1 50 0 0 18 0.0000 4 195 1380 3450 1050 xmlNodeSet\001
diff --git a/libxslt/doc/object.gif b/libxslt/doc/object.gif
new file mode 100644
index 0000000..f8cc295
--- /dev/null
+++ b/libxslt/doc/object.gif
Binary files differ
diff --git a/libxslt/doc/processing.fig b/libxslt/doc/processing.fig
new file mode 100644
index 0000000..b2c214e
--- /dev/null
+++ b/libxslt/doc/processing.fig
@@ -0,0 +1,137 @@
+#FIG 3.2
+Landscape
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+6 5850 225 9675 4500
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 7050 450 7575 450 7575 975 7050 975 7050 450
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 6225 1275 6750 1275 6750 1800 6225 1800 6225 1275
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 6225 2175 6750 2175 6750 2700 6225 2700 6225 2175
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 7350 2175 7875 2175 7875 2700 7350 2700 7350 2175
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 8550 1350 9075 1350 9075 1875 8550 1875 8550 1350
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 7350 975 6750 1275
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 6525 1800 6525 2175
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 6750 1575 8550 1575
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 6750 2475 7350 2475
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 7650 2700 7650 3225
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 8175 3225 8700 3225 8700 3750 8175 3750 8175 3225
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 7425 3225 7950 3225 7950 3750 7425 3750 7425 3225
+3 1 0 1 0 7 50 0 -1 0.000 0 0 0 10
+ 7650 225 6675 300 6075 1050 5850 2400 6150 3525 7800 4500
+ 9375 4200 9675 2400 9375 1050 8400 375
+ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
+ 1.000 1.000
+4 0 0 50 0 0 18 0.0000 4 195 720 6150 3075 html:a\001
+4 0 0 50 0 0 18 0.0000 4 195 705 8475 2250 TEXT\001
+4 0 0 50 0 0 18 0.0000 4 195 705 8100 4125 TEXT\001
+-6
+2 3 0 2 0 7 50 0 -1 0.000 0 0 0 0 0 7
+ 4875 2400 5180 1878 4880 1353 4275 1350 3970 1872 4270 2397
+ 4875 2400
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1425 600 1950 600 1950 1125 1425 1125 1425 600
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 450 1650 975 1650 975 2175 450 2175 450 1650
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1500 1650 2025 1650 2025 2175 1500 2175 1500 1650
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 450 2775 975 2775 975 3300 450 3300 450 2775
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1500 2775 2025 2775 2025 3300 1500 3300 1500 2775
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 2550 2775 3075 2775 3075 3300 2550 3300 2550 2775
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 1725 1125 975 1650
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 975 1875 1500 1875
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 750 2175 750 2775
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 1800 2175 1800 2775
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2025 3075 2550 3075
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 5175 6525 5700 6525 5700 7050 5175 7050 5175 6525
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 4800 3900 5325 3900 5325 4425 4800 4425 4800 3900
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 4800 4425 4425 4875
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 3225 5625 3750 5625 3750 6150 3225 6150 3225 5625
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 4125 6525 4650 6525 4650 7050 4125 7050 4125 6525
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 3075 6525 3600 6525 3600 7050 3075 7050 3075 6525
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 5175 5625 5700 5625 5700 6150 5175 6150 5175 5625
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 4200 4875 4725 4875 4725 5400 4200 5400 4200 4875
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 4200 5400 3750 5625
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 3450 6150 3300 6525
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 3750 5925 5175 5925
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 3600 6750 4125 6750
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 5475 6150 5475 6525
+2 1 0 3 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 3.00 180.00 360.00
+ 4650 3675 4650 2400
+2 1 0 3 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 3.00 180.00 360.00
+ 5175 1875 6150 1875
+2 1 0 3 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 3.00 180.00 360.00
+ 2625 1875 3975 1875
+3 1 0 1 0 7 50 0 -1 0.000 0 0 0 10
+ 1650 300 825 525 225 1350 150 2850 675 3825 2325 3975
+ 3375 3450 3675 2325 2625 975 2025 300
+ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
+ 1.000 1.000
+3 1 0 1 0 7 50 0 -1 0.000 0 0 0 10
+ 4725 3300 3600 3600 2700 4350 2475 5550 2625 7275 4275 7875
+ 6000 7725 7200 6375 6675 4575 5775 3525
+ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
+ 1.000 1.000
+4 0 0 50 0 0 18 0.0000 4 255 1470 3225 4200 xsl:stylesheet\001
+4 0 0 50 0 0 18 0.0000 4 255 1350 4800 5175 xsl:template\001
+4 0 0 50 0 0 18 0.0000 4 195 720 4125 6450 html:a\001
+4 0 0 50 0 0 18 0.0000 4 195 705 5400 7350 TEXT\001
+4 0 0 50 0 0 20 0.0000 4 285 2115 3525 1200 XSLT Processing\001
+4 0 0 50 0 0 18 0.0000 4 255 1140 1350 5250 Stylesheet\001
+4 0 0 50 0 0 18 0.0000 4 195 1935 4575 525 Result Document\001
+4 0 0 50 0 0 18 0.0000 4 195 1995 2250 525 Source Document\001
diff --git a/libxslt/doc/processing.gif b/libxslt/doc/processing.gif
new file mode 100644
index 0000000..5533f89
--- /dev/null
+++ b/libxslt/doc/processing.gif
Binary files differ
diff --git a/libxslt/doc/python.html b/libxslt/doc/python.html
new file mode 100644
index 0000000..50fc1fb
--- /dev/null
+++ b/libxslt/doc/python.html
@@ -0,0 +1,173 @@
+<?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>Python and bindings</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>Python and bindings</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p>There is a number of language bindings and wrappers available for libxml2,
+the list below is not exhaustive. Please contact the <a href="http://mail.gnome.org/mailman/listinfo/xml-bindings">xml-bindings@gnome.org</a>
+(<a href="http://mail.gnome.org/archives/xml-bindings/">archives</a>) in
+order to get updates to this list or to discuss the specific topic of libxml2
+or libxslt wrappers or bindings:</p><ul>
+ <li><a href="http://mail.gnome.org/archives/xml/2001-March/msg00014.html">Matt
+ Sergeant</a> developped <a href="http://axkit.org/download/">XML::LibXML
+ and XML::LibXSLT</a>, Perl wrappers for libxml2/libxslt as part of the <a href="http://axkit.com/">AxKit XML application server</a></li>
+ <li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a> provides and
+ earlier version of the libxml/libxslt <a href="http://www.rexx.com/~dkuhlman">wrappers for Python</a></li>
+ <li>Petr Kozelka provides <a href="http://sourceforge.net/projects/libxml2-pas">Pascal units to glue
+ libxml2</a> with Kylix, Delphi and other Pascal compilers</li>
+ <li>Wai-Sun "Squidster" Chia provides <a href="http://www.rubycolor.org/arc/redist/">bindings for Ruby</a> and
+ libxml2 bindings are also available in Ruby through the <a href="http://libgdome-ruby.berlios.de/">libgdome-ruby</a> module
+ maintained by Tobias Peters.</li>
+ <li>Steve Ball and contributors maintains <a href="http://tclxml.sourceforge.net/">libxml2 and libxslt bindings for
+ Tcl</a></li>
+ <li><a href="mailto:xmlwrapp@pmade.org">Peter Jones</a> maintains C++
+ bindings for libxslt within <a href="http://pmade.org/pjones/software/xmlwrapp/">xmlwrapp</a></li>
+ <li><a href="phillim2@comcast.net">Mike Phillips</a> provides a module
+ using <a href="http://siasl.dyndns.org/projects/projects.html">libxslt
+ for PHP</a>.</li>
+ <li><a href="http://savannah.gnu.org/projects/classpathx/">LibxmlJ</a> is
+ an effort to create a 100% JAXP-compatible Java wrapper for libxml2 and
+ libxslt as part of GNU ClasspathX project.</li>
+ <li>Patrick McPhee provides Rexx bindings fof libxml2 and libxslt, look for
+ <a href="http://www.interlog.com/~ptjm/software.html">RexxXML</a>.</li>
+ <li><a href="http://www.satimage.fr/software/en/xml_suite.html">Satimage</a>
+ provides <a href="http://www.satimage.fr/software/en/downloads_osaxen.html">XMLLib
+ osax</a>. This is an osax for Mac OS X with a set of commands to
+ implement in AppleScript the XML DOM, XPATH and XSLT.</li>
+</ul><p>The libxslt Python module depends on the <a href="http://xmlsoft.org/python.html">libxml2 Python</a> module.</p><p>The distribution includes a set of Python bindings, which are guaranteed to
+be maintained as part of the library in the future, though the Python
+interface have not yet reached the completeness of the C API.</p><p><a href="mailto:stephane.bidoul@softwareag.com">Stéphane Bidoul</a>
+maintains <a href="http://users.skynet.be/sbi/libxml-python/">a Windows port
+of the Python bindings</a>.</p><p>Note to people interested in building bindings, the API is formalized as
+<a href="libxslt-api.xml">an XML API description file</a> which allows to
+automate a large part of the Python bindings, this includes function
+descriptions, enums, structures, typedefs, etc... The Python script used to
+build the bindings is python/generator.py in the source distribution.</p><p>To install the Python bindings there are 2 options:</p><ul>
+ <li>If you use an RPM based distribution, simply install the <a href="http://rpmfind.net/linux/rpm2html/search.php?query=libxml2-python">libxml2-python
+ RPM</a> and the <a href="http://rpmfind.net/linux/rpm2html/search.php?query=libxslt-python">libxslt-python
+ RPM</a>.</li>
+ <li>Otherwise use the <a href="ftp://xmlsoft.org/libxml2/python/">libxml2-python
+ module distribution</a> corresponding to your installed version of
+ libxml2 and libxslt. Note that to install it you will need both libxml2
+ and libxslt installed and run "python setup.py build install" in the
+ module tree.</li>
+</ul><p>The distribution includes a set of examples and regression tests for the
+python bindings in the <code>python/tests</code> directory. Here are some
+excepts from those tests:</p><h3>basic.py:</h3><p>This is a basic test of XSLT interfaces: loading a stylesheet and a
+document, transforming the document and saving the result.</p><pre>import libxml2
+import libxslt
+
+styledoc = libxml2.parseFile("test.xsl")
+style = libxslt.parseStylesheetDoc(styledoc)
+doc = libxml2.parseFile("test.xml")
+result = style.applyStylesheet(doc, None)
+style.saveResultToFilename("foo", result, 0)
+style.freeStylesheet()
+doc.freeDoc()
+result.freeDoc()</pre><p>The Python module is called libxslt, you will also need the libxml2 module
+for the operations on XML trees. Let's have a look at the objects manipulated
+in that example and how is the processing done:</p><ul>
+ <li><code>styledoc</code> : is a libxml2 document tree. It is obtained by
+ parsing the XML file "test.xsl" containing the stylesheet.</li>
+ <li><code>style</code> : this is a precompiled stylesheet ready to be used
+ by the following transformations (note the plural form, multiple
+ transformations can resuse the same stylesheet).</li>
+ <li><code>doc</code> : this is the document to apply the transformation to.
+ In this case it is simply generated by parsing it from a file but any
+ other processing is possible as long as one get a libxml2 Doc. Note that
+ HTML tree are suitable for XSLT processing in libxslt. This is actually
+ how this page is generated !</li>
+ <li><code>result</code> : this is a document generated by applying the
+ stylesheet to the document. Note that some of the stylesheet information
+ may be related to the serialization of that document and as in this
+ example a specific saveResultToFilename() method of the stylesheet should
+ be used to save it to a file (in that case to "foo").</li>
+</ul><p>Also note the need to explicitely deallocate documents with freeDoc()
+except for the stylesheet document which is freed when its compiled form is
+garbage collected.</p><h3>extfunc.py:</h3><p>This one is a far more complex test. It shows how to modify the behaviour
+of an XSLT transformation by passing parameters and how to extend the XSLT
+engine with functions defined in python:</p><pre>import libxml2
+import libxslt
+import string
+
+nodeName = None
+def f(ctx, str):
+ global nodeName
+
+ #
+ # Small check to verify the context is correcly accessed
+ #
+ try:
+ pctxt = libxslt.xpathParserContext(_obj=ctx)
+ ctxt = pctxt.context()
+ tctxt = ctxt.transformContext()
+ nodeName = tctxt.insertNode().name
+ except:
+ pass
+
+ return string.upper(str)
+
+libxslt.registerExtModuleFunction("foo", "http://example.com/foo", f)</pre><p>This code defines and register an extension function. Note that the
+function can be bound to any name (foo) and how the binding is also
+associated to a namespace name "http://example.com/foo". From an XSLT point
+of view the function just returns an upper case version of the string passed
+as a parameter. But the first part of the function also read some contextual
+information from the current XSLT processing environement, in that case it
+looks for the current insertion node in the resulting output (either the
+resulting document or the Result Value Tree being generated), and saves it to
+a global variable for checking that the access actually worked.</p><p>For more information on the xpathParserContext and transformContext
+objects check the <a href="internals.html">libray internals description</a>.
+The pctxt is actually an object from a class derived from the
+libxml2.xpathParserContext() with just a couple more properties including the
+possibility to look up the XSLT transformation context from the XPath
+context.</p><pre>styledoc = libxml2.parseDoc("""
+&lt;xsl:stylesheet version='1.0'
+ xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
+ xmlns:foo='http://example.com/foo'
+ xsl:exclude-result-prefixes='foo'&gt;
+
+ &lt;xsl:param name='bar'&gt;failure&lt;/xsl:param&gt;
+ &lt;xsl:template match='/'&gt;
+ &lt;article&gt;&lt;xsl:value-of select='foo:foo($bar)'/&gt;&lt;/article&gt;
+ &lt;/xsl:template&gt;
+&lt;/xsl:stylesheet&gt;
+""")</pre><p>Here is a simple example of how to read an XML document from a python
+string with libxml2. Note how this stylesheet:</p><ul>
+ <li>Uses a global parameter <code>bar</code></li>
+ <li>Reference the extension function f</li>
+ <li>how the Namespace name "http://example.com/foo" has to be bound to a
+ prefix</li>
+ <li>how that prefix is excluded from the output</li>
+ <li>how the function is called from the select</li>
+</ul><pre>style = libxslt.parseStylesheetDoc(styledoc)
+doc = libxml2.parseDoc("&lt;doc/&gt;")
+result = style.applyStylesheet(doc, { "bar": "'success'" })
+style.freeStylesheet()
+doc.freeDoc()</pre><p>that part is identical, to the basic example except that the
+transformation is passed a dictionary of parameters. Note that the string
+passed "success" had to be quoted, otherwise it is interpreted as an XPath
+query for the childs of root named "success".</p><pre>root = result.children
+if root.name != "article":
+ print "Unexpected root node name"
+ sys.exit(1)
+if root.content != "SUCCESS":
+ print "Unexpected root node content, extension function failed"
+ sys.exit(1)
+if nodeName != 'article':
+ print "The function callback failed to access its context"
+ sys.exit(1)
+
+result.freeDoc()</pre><p>That part just verifies that the transformation worked, that the parameter
+got properly passed to the engine, that the function f() got called and that
+it properly accessed the context to find the name of the insertion node.</p><h3>pyxsltproc.py:</h3><p>this module is a bit too long to be described there but it is basically a
+rewrite of the xsltproc command line interface of libxslt in Python. It
+provides nearly all the functionalities of xsltproc and can be used as a base
+module to write Python customized XSLT processors. One of the thing to notice
+are:</p><pre>libxml2.lineNumbersDefault(1)
+libxml2.substituteEntitiesDefault(1)</pre><p>those two calls in the main() function are needed to force the libxml2
+processor to generate DOM trees compliant with the XPath data model.</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/redhat.gif b/libxslt/doc/redhat.gif
new file mode 100644
index 0000000..eff3d73
--- /dev/null
+++ b/libxslt/doc/redhat.gif
Binary files differ
diff --git a/libxslt/doc/search.php b/libxslt/doc/search.php
new file mode 100644
index 0000000..9deb2ce
--- /dev/null
+++ b/libxslt/doc/search.php
@@ -0,0 +1,346 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
+<html><head xmlns="http://www.w3.org/1999/xhtml"><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/><style type="text/css" xml:space="preserve">
+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>Search engine</title></head><body xmlns="http://www.w3.org/1999/xhtml" bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120" rowspan="1" colspan="1"><a href="http://swpat.ffii.org/" shape="rect"><img src="epatents.png" alt="Action against software patents"/></a></td><td width="180" rowspan="1" colspan="1"><a href="http://www.gnome.org/" shape="rect"><img src="gnome2.png" alt="GNOME2 Logo"/></a><a href="http://www.w3.org/Status" shape="rect"><img src="w3c.png" alt="W3C logo"/></a><a href="http://www.redhat.com" shape="rect"><img src="redhat.gif" alt="Red Hat Logo"/></a><div align="left"><a href="http://xmlsoft.org/XSLT/" shape="rect"><img src="Libxslt-Logo-180x168.gif" alt="Made with Libxslt Logo"/></a></div></td><td rowspan="1" colspan="1"><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td rowspan="1" colspan="1"><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center" rowspan="1" colspan="1"><h1>The XSLT C library for GNOME</h1><h2>Search engine</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" rowspan="1" colspan="1"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765" rowspan="1" colspan="1"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td rowspan="1" colspan="1"><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center" rowspan="1"><center><b>Main Menu</b></center></td></tr><tr><td bgcolor="#fffacd" rowspan="1" colspan="1"><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 href="index.html" shape="rect">Home</a></li><li><a href="intro.html" shape="rect">Introduction</a></li><li><a href="docs.html" shape="rect">Documentation</a></li><li><a href="bugs.html" shape="rect">Reporting bugs and getting help</a></li><li><a href="help.html" shape="rect">How to help</a></li><li><a href="downloads.html" shape="rect">Downloads</a></li><li><a href="FAQ.html" shape="rect">FAQ</a></li><li><a href="news.html" shape="rect">News</a></li><li><a href="xsltproc2.html" shape="rect">The xsltproc tool</a></li><li><a href="docbook.html" shape="rect">DocBook</a></li><li><a href="API.html" shape="rect">The programming API</a></li><li><a href="python.html" shape="rect">Python and bindings</a></li><li><a href="internals.html" shape="rect">Library internals</a></li><li><a href="extensions.html" shape="rect">Writing extensions</a></li><li><a href="contribs.html" shape="rect">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold" shape="rect">libexslt</a></li><li><a href="xslt.html" shape="rect">flat page</a>, <a href="site.xsl" shape="rect">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold" shape="rect">API Menu</a></li><li><a href="ChangeLog.html" shape="rect">ChangeLog</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center" rowspan="1"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd" rowspan="1" colspan="1"><ul><li><a href="tutorial/libxslttutorial.html" shape="rect">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html" shape="rect">Tutorial2</a></li><li><a href="xsltproc.html" shape="rect">Man page for xsltproc</a></li><li><a href="http://mail.gnome.org/archives/xslt/" shape="rect">Mail archive</a></li><li><a href="http://xmlsoft.org/" shape="rect">XML libxml2</a></li><li><a href="ftp://xmlsoft.org/" shape="rect">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/" shape="rect">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/" shape="rect">Solaris binaries</a></li><li><a href="http://www.explain.com.au/oss/libxml2xslt.html" shape="rect">MacOsX binaries</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt" shape="rect">Bug Tracker</a></li><li><a href="http://codespeak.net/lxml/" shape="rect">lxml Python bindings</a></li><li><a href="http://cpan.uwinnipeg.ca/dist/XML-LibXSLT" shape="rect">Perl XSLT bindings</a></li><li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading17" shape="rect">XSLT with PHP</a></li><li><a href="http://www.mod-xslt2.com/" shape="rect">Apache module</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/" shape="rect">Pascal bindings</a></li><li><a href="http://xsldbg.sourceforge.net/" shape="rect">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" rowspan="1"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd" rowspan="1" colspan="1"><ul><li><a href="APIchunk0.html" shape="rect">Alphabetic</a></li><li><a href="APIconstructors.html" shape="rect">Constructors</a></li><li><a href="APIfunctions.html" shape="rect">Functions/Types</a></li><li><a href="APIfiles.html" shape="rect">Modules</a></li><li><a href="APIsymbols.html" shape="rect">Symbols</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765" rowspan="1" colspan="1"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td rowspan="1" colspan="1"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td rowspan="1" colspan="1"><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd" rowspan="1" colspan="1">
+
+<?php
+ $query = $HTTP_GET_VARS[ "query" ];
+ $scope = $HTTP_GET_VARS[ "scope" ];
+ // We handle only the first argument so far
+ $query = $_GET['query'];
+ $query = ltrim ($query);
+ if (! $query) {
+ echo "<h1 align='center'>Search the documentation on XMLSoft.org</h1>";
+ }
+ if ($scope == NULL)
+ $scope = "any";
+ $scope = ltrim ($scope);
+ if ($scope == "")
+ $scope = "any";
+
+?>
+<p> The search service indexes the libxml2 and libxslt APIs and documentation as well as the xml@gnome.org and xslt@gnome.org mailing-list archives. To use it simply provide a set of keywords:
+<p>
+<form action="<?php echo "$PHP_SELF", "?query=", rawurlencode($query) ?>"
+ enctype="application/x-www-form-urlencoded" method="GET">
+ <input name="query" type="TEXT" size="50" value="<?php echo $query?>">
+ <select name="scope">
+ <option value="any">Search All</option>
+ <option value="XML" <?php if ($scope == 'XML') print "selected"?>>XML resources</option>
+ <option value="XSLT" <?php if ($scope == 'XSLT') print "selected"?>>XSLT resources</option>
+ <option value="API" <?php if ($scope == 'API') print "selected"?>>Only the APIs</option>
+ <option value="XMLAPI" <?php if ($scope == 'XMLAPI') print "selected"?>>Only the XML API</option>
+ <option value="XSLTAPI" <?php if ($scope == 'XSLTAPI') print "selected"?>>Only the XSLT API</option>
+ <option value="DOCS" <?php if ($scope == 'DOCS') print "selected"?>>Only the Documentation</option>
+ <option value="XMLDOC" <?php if ($scope == 'XMLDOC') print "selected"?>>Only the XML Documentation</option>
+ <option value="XSLTDOC" <?php if ($scope == 'XSLTDOC') print "selected"?>>Only the XSLT Documentation</option>
+ <option value="LISTS" <?php if ($scope == 'LISTS') print "selected"?>>Only the lists archives</option>
+ <option value="XMLLIST" <?php if ($scope == 'XMLLIST') print "selected"?>>Only the XML list archive</option>
+ <option value="XSLTLIST" <?php if ($scope == 'XSLTLIST') print "selected"?>>Only the XSLT list archive</option>
+ </select>
+ <input name=submit type=submit value="Search ...">
+</form>
+<?php
+ function logQueryWord($word) {
+ $result = mysql_query ("SELECT ID,Count FROM Queries WHERE Value='$word'");
+ if ($result) {
+ $i = mysql_num_rows($result);
+ if ($i == 0) {
+ mysql_free_result($result);
+ mysql_query ("INSERT INTO Queries (Value,Count) VALUES ('$word',1)");
+ } else {
+ $id = mysql_result($result, 0, 0);
+ $count = mysql_result($result, 0, 1);
+ $count ++;
+ mysql_query ("UPDATE Queries SET Count=$count WHERE ID=$id");
+ }
+ } else {
+ mysql_query ("INSERT INTO Queries (Value,Count) VALUES ('$word',1)");
+ }
+ }
+ function queryWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT words.relevance, symbols.name, symbols.type, symbols.module, symbols.descr FROM words, symbols WHERE LCASE(words.name) LIKE LCASE('$word') and words.symbol = symbols.name ORDER BY words.relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function queryHTMLWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT relevance, name, id, resource, section FROM wordsHTML WHERE LCASE(name) LIKE LCASE('$word') ORDER BY relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function queryArchiveWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT wordsArchive.relevance, wordsArchive.name, 'xml-list', archives.resource, archives.title FROM wordsArchive, archives WHERE LCASE(wordsArchive.name) LIKE LCASE('$word') and wordsArchive.ID = archives.ID ORDER BY relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function XSLTqueryWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT XSLTwords.relevance, XSLTsymbols.name, XSLTsymbols.type, XSLTsymbols.module, XSLTsymbols.descr FROM XSLTwords, XSLTsymbols WHERE LCASE(XSLTwords.name) LIKE LCASE('$word') and XSLTwords.symbol = XSLTsymbols.name ORDER BY XSLTwords.relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function XSLTqueryHTMLWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT relevance, name, id, resource, section FROM XSLTwordsHTML WHERE LCASE(name) LIKE LCASE('$word') ORDER BY relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function XSLTqueryArchiveWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT XSLTwordsArchive.relevance, XSLTwordsArchive.name, 'xslt-list', archives.resource, archives.title FROM XSLTwordsArchive, archives WHERE LCASE(XSLTwordsArchive.name) LIKE LCASE('$word') and XSLTwordsArchive.ID = archives.ID ORDER BY relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function resSort ($a, $b) {
+ list($ra,$ta,$ma,$na,$da) = $a;
+ list($rb,$tb,$mb,$nb,$db) = $b;
+ if ($ra == $rb) return 0;
+ return ($ra > $rb) ? -1 : 1;
+ }
+ if (($query) && (strlen($query) <= 50)) {
+ $link = mysql_connect ("localhost", "nobody");
+ if (!$link) {
+ echo "<p> Could not connect to the database: ", mysql_error();
+ } else {
+ mysql_select_db("xmlsoft", $link);
+ $list = explode (" ", $query);
+ $results = array();
+ $number = 0;
+ for ($number = 0;$number < count($list);$number++) {
+
+ $word = $list[$number];
+ if (($scope == 'any') || ($scope == 'XML') ||
+ ($scope == 'API') || ($scope == 'XMLAPI')) {
+ list($result, $j) = queryWord($word);
+ if ($j > 0) {
+ for ($i = 0; $i < $j; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $type = mysql_result($result, $i, 2);
+ $module = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ if (array_key_exists($name, $results)) {
+ list($r,$t,$m,$d,$w,$u) = $results[$name];
+ $results[$name] = array(($r + $relevance) * 2,
+ $t,$m,$d,$w,$u);
+ } else {
+ $id = strtoupper($name);
+// $m = strtolower($module);
+ $m = $module;
+ $url = "../html/libxml-$m.html#$id";
+ $results[$name] = array($relevance,$type,
+ $module, $desc, $name, $url);
+ }
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($scope == 'any') || ($scope == 'XSLT') ||
+ ($scope == 'API') || ($scope == 'XSLTAPI')) {
+ list($result, $j) = XSLTqueryWord($word);
+ if ($j > 0) {
+ for ($i = 0; $i < $j; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $type = mysql_result($result, $i, 2);
+ $module = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ if (array_key_exists($name, $results)) {
+ list($r,$t,$m,$d,$w,$u) = $results[$name];
+ $results[$name] = array(($r + $relevance) * 2,
+ $t,$m,$d,$w,$u);
+ } else {
+ $id = strtoupper($name);
+// $m = strtolower($module);
+ $m = $module;
+ $url = "html/libxslt-$m.html#$id";
+ $results[$name] = array($relevance,$type,
+ $module, $desc, $name, $url);
+ }
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($scope == 'any') || ($scope == 'XML') ||
+ ($scope == 'DOCS') || ($scope == 'XMLDOC')) {
+ list($result, $k) = queryHTMLWord($word);
+ if ($k > 0) {
+ for ($i = 0; $i < $k; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $id = mysql_result($result, $i, 2);
+ $module = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ $url = $module;
+ if ($id != "") {
+ $url = $url + "#$id";
+ }
+ $results["$name _html_ $number _ $i"] =
+ array($relevance, "XML docs",
+ $module, $desc, $name, $url);
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($scope == 'any') || ($scope == 'XSLT') ||
+ ($scope == 'DOCS') || ($scope == 'XSLTDOC')) {
+ list($result, $k) = XSLTqueryHTMLWord($word);
+ if ($k > 0) {
+ for ($i = 0; $i < $k; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $id = mysql_result($result, $i, 2);
+ $module = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ $url = "$module";
+ if ($id != "") {
+ $url = $url + "#$id";
+ }
+ $results["$name xslthtml $number _ $i "] =
+ array($relevance, "XSLT docs",
+ $module, $desc, $name, $url);
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($scope == 'any') || ($scope == 'XML') ||
+ ($scope == 'LISTS') || ($scope == 'XMLLIST')) {
+ list($result, $j) = queryArchiveWord($word);
+ if ($j > 0) {
+ for ($i = 0; $i < $j; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $type = mysql_result($result, $i, 2);
+ $url = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ if (array_key_exists($url, $results)) {
+ list($r,$t,$m,$d,$w,$u) = $results[$url];
+ $results[$name] = array(($r + $relevance) * 2,
+ $t,$m,$d,$w,$u);
+ } else {
+ $id = strtoupper($name);
+// $m = strtolower($module);
+ $m = $module;
+ $u = str_replace(
+ "http://mail.gnome.org/archives/xml/", "", $url);
+ $results[$url] = array($relevance,$type,
+ $u, $desc, $name, $url);
+ }
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($scope == 'any') || ($scope == 'XSLT') ||
+ ($scope == 'LISTS') || ($scope == 'XSLTLIST')) {
+ list($result, $j) = XSLTqueryArchiveWord($word);
+ if ($j > 0) {
+ for ($i = 0; $i < $j; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $type = mysql_result($result, $i, 2);
+ $url = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ if (array_key_exists($url, $results)) {
+ list($r,$t,$m,$d,$w,$u) = $results[$url];
+ $results[$name] = array(($r + $relevance) * 2,
+ $t,$m,$d,$w,$u);
+ } else {
+ $id = strtoupper($name);
+// $m = strtolower($module);
+ $m = $module;
+ $u = str_replace(
+ "http://mail.gnome.org/archives/xslt/", "", $url);
+ $results[$url] = array($relevance,$type,
+ $u, $desc, $name, $url);
+ }
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($j <= 0) && ($k <= 0)) {
+ echo "<p> No result found for $word\n";
+ }
+ }
+ mysql_close($link);
+ $nb = count($results);
+ echo "<h3 align='center'>Found $nb results for query $query</h3>\n";
+ usort($results, "resSort");
+
+ if ($nb > 0) {
+ printf("<table><tbody>\n");
+ printf("<tr><td>Quality</td><td>Symbol</td><td>Type</td><td>module</td><td>Description</td></tr>\n");
+ $i = 0;
+ while (list ($name, $val) = each ($results)) {
+ list($r,$t,$m,$d,$s,$u) = $val;
+ $m = str_replace("<", "&lt;", $m);
+ $s = str_replace("<", "&lt;", $s);
+ $d = str_replace("<", "&lt;", $d);
+ echo "<tr><td>$r</td><td><a href='$u'>$s</a></td><td>$t</td><td>$m</td><td>$d</td></tr>";
+ $i = $i + 1;
+ if ($i > 75)
+ break;
+ }
+ printf("</tbody></table>\n");
+ }
+ }
+ }
+?>
+
+ <p><a href="bugs.html" shape="rect">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/search.php.inc b/libxslt/doc/search.php.inc
new file mode 100644
index 0000000..f9db689
--- /dev/null
+++ b/libxslt/doc/search.php.inc
@@ -0,0 +1,333 @@
+<?php
+ $query = $HTTP_GET_VARS[ "query" ];
+ $scope = $HTTP_GET_VARS[ "scope" ];
+ // We handle only the first argument so far
+ $query = $_GET['query'];
+ $query = ltrim ($query);
+ if (! $query) {
+ echo "<h1 align='center'>Search the documentation on XMLSoft.org</h1>";
+ }
+ if ($scope == NULL)
+ $scope = "any";
+ $scope = ltrim ($scope);
+ if ($scope == "")
+ $scope = "any";
+
+?>
+<p> The search service indexes the libxml2 and libxslt APIs and documentation as well as the xml@gnome.org and xslt@gnome.org mailing-list archives. To use it simply provide a set of keywords:
+<p>
+<form action="<?php echo "$PHP_SELF", "?query=", rawurlencode($query) ?>"
+ enctype="application/x-www-form-urlencoded" method="GET">
+ <input name="query" type="TEXT" size="50" value="<?php echo $query?>">
+ <select name="scope">
+ <option value="any">Search All</option>
+ <option value="XML" <?php if ($scope == 'XML') print "selected"?>>XML resources</option>
+ <option value="XSLT" <?php if ($scope == 'XSLT') print "selected"?>>XSLT resources</option>
+ <option value="API" <?php if ($scope == 'API') print "selected"?>>Only the APIs</option>
+ <option value="XMLAPI" <?php if ($scope == 'XMLAPI') print "selected"?>>Only the XML API</option>
+ <option value="XSLTAPI" <?php if ($scope == 'XSLTAPI') print "selected"?>>Only the XSLT API</option>
+ <option value="DOCS" <?php if ($scope == 'DOCS') print "selected"?>>Only the Documentation</option>
+ <option value="XMLDOC" <?php if ($scope == 'XMLDOC') print "selected"?>>Only the XML Documentation</option>
+ <option value="XSLTDOC" <?php if ($scope == 'XSLTDOC') print "selected"?>>Only the XSLT Documentation</option>
+ <option value="LISTS" <?php if ($scope == 'LISTS') print "selected"?>>Only the lists archives</option>
+ <option value="XMLLIST" <?php if ($scope == 'XMLLIST') print "selected"?>>Only the XML list archive</option>
+ <option value="XSLTLIST" <?php if ($scope == 'XSLTLIST') print "selected"?>>Only the XSLT list archive</option>
+ </select>
+ <input name=submit type=submit value="Search ...">
+</form>
+<?php
+ function logQueryWord($word) {
+ $result = mysql_query ("SELECT ID,Count FROM Queries WHERE Value='$word'");
+ if ($result) {
+ $i = mysql_num_rows($result);
+ if ($i == 0) {
+ mysql_free_result($result);
+ mysql_query ("INSERT INTO Queries (Value,Count) VALUES ('$word',1)");
+ } else {
+ $id = mysql_result($result, 0, 0);
+ $count = mysql_result($result, 0, 1);
+ $count ++;
+ mysql_query ("UPDATE Queries SET Count=$count WHERE ID=$id");
+ }
+ } else {
+ mysql_query ("INSERT INTO Queries (Value,Count) VALUES ('$word',1)");
+ }
+ }
+ function queryWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT words.relevance, symbols.name, symbols.type, symbols.module, symbols.descr FROM words, symbols WHERE LCASE(words.name) LIKE LCASE('$word') and words.symbol = symbols.name ORDER BY words.relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function queryHTMLWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT relevance, name, id, resource, section FROM wordsHTML WHERE LCASE(name) LIKE LCASE('$word') ORDER BY relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function queryArchiveWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT wordsArchive.relevance, wordsArchive.name, 'xml-list', archives.resource, archives.title FROM wordsArchive, archives WHERE LCASE(wordsArchive.name) LIKE LCASE('$word') and wordsArchive.ID = archives.ID ORDER BY relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function XSLTqueryWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT XSLTwords.relevance, XSLTsymbols.name, XSLTsymbols.type, XSLTsymbols.module, XSLTsymbols.descr FROM XSLTwords, XSLTsymbols WHERE LCASE(XSLTwords.name) LIKE LCASE('$word') and XSLTwords.symbol = XSLTsymbols.name ORDER BY XSLTwords.relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function XSLTqueryHTMLWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT relevance, name, id, resource, section FROM XSLTwordsHTML WHERE LCASE(name) LIKE LCASE('$word') ORDER BY relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function XSLTqueryArchiveWord($word) {
+ $result = NULL;
+ $j = 0;
+ if ($word) {
+ $result = mysql_query ("SELECT XSLTwordsArchive.relevance, XSLTwordsArchive.name, 'xslt-list', archives.resource, archives.title FROM XSLTwordsArchive, archives WHERE LCASE(XSLTwordsArchive.name) LIKE LCASE('$word') and XSLTwordsArchive.ID = archives.ID ORDER BY relevance DESC LIMIT 75");
+ if ($result) {
+ $j = mysql_num_rows($result);
+ if ($j == 0)
+ mysql_free_result($result);
+ }
+ logQueryWord($word);
+ }
+ return array($result, $j);
+ }
+ function resSort ($a, $b) {
+ list($ra,$ta,$ma,$na,$da) = $a;
+ list($rb,$tb,$mb,$nb,$db) = $b;
+ if ($ra == $rb) return 0;
+ return ($ra > $rb) ? -1 : 1;
+ }
+ if (($query) && (strlen($query) <= 50)) {
+ $link = mysql_connect ("localhost", "nobody");
+ if (!$link) {
+ echo "<p> Could not connect to the database: ", mysql_error();
+ } else {
+ mysql_select_db("xmlsoft", $link);
+ $list = explode (" ", $query);
+ $results = array();
+ $number = 0;
+ for ($number = 0;$number < count($list);$number++) {
+
+ $word = $list[$number];
+ if (($scope == 'any') || ($scope == 'XML') ||
+ ($scope == 'API') || ($scope == 'XMLAPI')) {
+ list($result, $j) = queryWord($word);
+ if ($j > 0) {
+ for ($i = 0; $i < $j; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $type = mysql_result($result, $i, 2);
+ $module = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ if (array_key_exists($name, $results)) {
+ list($r,$t,$m,$d,$w,$u) = $results[$name];
+ $results[$name] = array(($r + $relevance) * 2,
+ $t,$m,$d,$w,$u);
+ } else {
+ $id = strtoupper($name);
+// $m = strtolower($module);
+ $m = $module;
+ $url = "../html/libxml-$m.html#$id";
+ $results[$name] = array($relevance,$type,
+ $module, $desc, $name, $url);
+ }
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($scope == 'any') || ($scope == 'XSLT') ||
+ ($scope == 'API') || ($scope == 'XSLTAPI')) {
+ list($result, $j) = XSLTqueryWord($word);
+ if ($j > 0) {
+ for ($i = 0; $i < $j; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $type = mysql_result($result, $i, 2);
+ $module = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ if (array_key_exists($name, $results)) {
+ list($r,$t,$m,$d,$w,$u) = $results[$name];
+ $results[$name] = array(($r + $relevance) * 2,
+ $t,$m,$d,$w,$u);
+ } else {
+ $id = strtoupper($name);
+// $m = strtolower($module);
+ $m = $module;
+ $url = "html/libxslt-$m.html#$id";
+ $results[$name] = array($relevance,$type,
+ $module, $desc, $name, $url);
+ }
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($scope == 'any') || ($scope == 'XML') ||
+ ($scope == 'DOCS') || ($scope == 'XMLDOC')) {
+ list($result, $k) = queryHTMLWord($word);
+ if ($k > 0) {
+ for ($i = 0; $i < $k; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $id = mysql_result($result, $i, 2);
+ $module = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ $url = $module;
+ if ($id != "") {
+ $url = $url + "#$id";
+ }
+ $results["$name _html_ $number _ $i"] =
+ array($relevance, "XML docs",
+ $module, $desc, $name, $url);
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($scope == 'any') || ($scope == 'XSLT') ||
+ ($scope == 'DOCS') || ($scope == 'XSLTDOC')) {
+ list($result, $k) = XSLTqueryHTMLWord($word);
+ if ($k > 0) {
+ for ($i = 0; $i < $k; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $id = mysql_result($result, $i, 2);
+ $module = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ $url = "$module";
+ if ($id != "") {
+ $url = $url + "#$id";
+ }
+ $results["$name xslthtml $number _ $i "] =
+ array($relevance, "XSLT docs",
+ $module, $desc, $name, $url);
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($scope == 'any') || ($scope == 'XML') ||
+ ($scope == 'LISTS') || ($scope == 'XMLLIST')) {
+ list($result, $j) = queryArchiveWord($word);
+ if ($j > 0) {
+ for ($i = 0; $i < $j; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $type = mysql_result($result, $i, 2);
+ $url = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ if (array_key_exists($url, $results)) {
+ list($r,$t,$m,$d,$w,$u) = $results[$url];
+ $results[$name] = array(($r + $relevance) * 2,
+ $t,$m,$d,$w,$u);
+ } else {
+ $id = strtoupper($name);
+// $m = strtolower($module);
+ $m = $module;
+ $u = str_replace(
+ "http://mail.gnome.org/archives/xml/", "", $url);
+ $results[$url] = array($relevance,$type,
+ $u, $desc, $name, $url);
+ }
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($scope == 'any') || ($scope == 'XSLT') ||
+ ($scope == 'LISTS') || ($scope == 'XSLTLIST')) {
+ list($result, $j) = XSLTqueryArchiveWord($word);
+ if ($j > 0) {
+ for ($i = 0; $i < $j; $i++) {
+ $relevance = mysql_result($result, $i, 0);
+ $name = mysql_result($result, $i, 1);
+ $type = mysql_result($result, $i, 2);
+ $url = mysql_result($result, $i, 3);
+ $desc = mysql_result($result, $i, 4);
+ if (array_key_exists($url, $results)) {
+ list($r,$t,$m,$d,$w,$u) = $results[$url];
+ $results[$name] = array(($r + $relevance) * 2,
+ $t,$m,$d,$w,$u);
+ } else {
+ $id = strtoupper($name);
+// $m = strtolower($module);
+ $m = $module;
+ $u = str_replace(
+ "http://mail.gnome.org/archives/xslt/", "", $url);
+ $results[$url] = array($relevance,$type,
+ $u, $desc, $name, $url);
+ }
+ }
+ mysql_free_result($result);
+ }
+ }
+ if (($j <= 0) && ($k <= 0)) {
+ echo "<p> No result found for $word\n";
+ }
+ }
+ mysql_close($link);
+ $nb = count($results);
+ echo "<h3 align='center'>Found $nb results for query $query</h3>\n";
+ usort($results, "resSort");
+
+ if ($nb > 0) {
+ printf("<table><tbody>\n");
+ printf("<tr><td>Quality</td><td>Symbol</td><td>Type</td><td>module</td><td>Description</td></tr>\n");
+ $i = 0;
+ while (list ($name, $val) = each ($results)) {
+ list($r,$t,$m,$d,$s,$u) = $val;
+ $m = str_replace("<", "&lt;", $m);
+ $s = str_replace("<", "&lt;", $s);
+ $d = str_replace("<", "&lt;", $d);
+ echo "<tr><td>$r</td><td><a href='$u'>$s</a></td><td>$t</td><td>$m</td><td>$d</td></tr>";
+ $i = $i + 1;
+ if ($i > 75)
+ break;
+ }
+ printf("</tbody></table>\n");
+ }
+ }
+ }
+?>
diff --git a/libxslt/doc/search.templ b/libxslt/doc/search.templ
new file mode 100644
index 0000000..c46dbab
--- /dev/null
+++ b/libxslt/doc/search.templ
@@ -0,0 +1,11 @@
+<?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>Search engine</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>Search engine</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><insert_php>Insert point for php code</insert_php><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/search.xml b/libxslt/doc/search.xml
new file mode 100644
index 0000000..1d499f3
--- /dev/null
+++ b/libxslt/doc/search.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0"?>
+<!--
+ This stylesheet is not used directly, but rather is processed by
+ xmllint with xinclude in order to "insert" the php code from the
+ file search.php.inc.
+
+ It processes a "generic" documentation page (search.templ) which
+ is produced by api.xsl, changes it from xhtml to html (because of
+ php limitations), and inserts the php code at the "right spot".
+ This "right spot" is a unique element generated by api.xsl with
+ the tag name "insert_php". This script replaces that element.
+ In order to avoid parsing problems, php code is contained within
+ a <xsl:text disable-output-escaping="yes"> node.
+-->
+<xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:xhtml="http://www.w3.org/1999/xhtml"
+ xmlns:xi="http://www.w3.org/2003/XInclude"
+ exclude-result-prefixes="xhtml xi">
+
+ <xsl:output method="xml" omit-xml-declaration="yes"
+ doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN"
+ doctype-system="http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd"/>
+
+ <!-- The <html> element is the root for our processing -->
+ <xsl:template match="xhtml:html">
+ <html>
+ <xsl:apply-templates/>
+ </html>
+ </xsl:template>
+
+ <!-- api.xsl has put a dummy tag at the insert point -->
+ <xsl:template match="xhtml:insert_php">
+ <xsl:text disable-output-escaping="yes">
+<!-- This will be replaced with the php code -->
+<xi:include parse="text" href="search.php.inc"/>
+ </xsl:text>
+ </xsl:template>
+
+ <!-- anything else just gets copied out -->
+ <xsl:template match="@*|node()">
+ <xsl:copy>
+ <xsl:apply-templates select="@*"/>
+ <xsl:apply-templates/>
+ </xsl:copy>
+ </xsl:template>
+
+</xsl:stylesheet>
diff --git a/libxslt/doc/site.xsl b/libxslt/doc/site.xsl
new file mode 100644
index 0000000..28b5388
--- /dev/null
+++ b/libxslt/doc/site.xsl
@@ -0,0 +1,464 @@
+<?xml version="1.0"?>
+<!--
+ This stylesheet is imported by the other stylesheets (e.g. newapi.xsl
+ and api.xsl). For flexibility, it depends upon a global param
+ which is normally defined in the importing stylesheet. This is:
+ href_base The most superior documentation directory (e.g. XML/)
+-->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+ <xsl:output method="xml" encoding="ISO-8859-1"
+ doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
+
+ <!-- dirname is used to 'choose' between libxslt and libexslt -->
+ <xsl:param name="dirname" select="''"/>
+ <!-- libname is the name of the library being documented -->
+ <xsl:param name="libname" select="'libxslt'"/>
+ <!-- logo_base points to the *.png logos used in headers -->
+ <xsl:param name="logo_base" select="''"/>
+
+ <!-- href_base gives the location of 'base documentation' files
+ and can be changed by importing stylesheets -->
+ <xsl:variable name="href_base" select="''"/>
+
+ <xsl:variable name="home_base">
+ <xsl:choose>
+ <xsl:when test="$dirname != ''">
+ <xsl:value-of select = "'../'"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select = "''"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:variable name="menu_name" select="'Main Menu'"/>
+
+<!--
+ - returns the filename associated to an ID in the original file
+ -->
+ <xsl:template name="filename">
+ <xsl:param name="name" select="string(@href)"/>
+ <xsl:choose>
+ <xsl:when test="$name = '#Introducti'">
+ <xsl:text>intro.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#Documentat'">
+ <xsl:text>docs.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#Reporting'">
+ <xsl:text>bugs.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#help'">
+ <xsl:text>help.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#Help'">
+ <xsl:text>help.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#Downloads'">
+ <xsl:text>downloads.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#News'">
+ <xsl:text>news.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#Contributi'">
+ <xsl:text>contribs.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#xsltproc'">
+ <xsl:text>xsltproc2.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#API'">
+ <xsl:text>API.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#Extensions'">
+ <xsl:text>extensions.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#Internals'">
+ <xsl:text>internals.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#DocBook'">
+ <xsl:text>docbook.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#FAQ'">
+ <xsl:text>FAQ.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = '#Python'">
+ <xsl:text>python.html</xsl:text>
+ </xsl:when>
+ <xsl:when test="$name = ''">
+ <xsl:text>unknown.html</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$name"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+<!--
+ - The table of content
+ -->
+ <xsl:variable name="toc">
+ <form action="{$home_base}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 href="index.html">Home</a></li>
+ <xsl:for-each select="/html/body/h2">
+ <xsl:variable name="filename">
+ <xsl:call-template name="filename">
+ <xsl:with-param name="name" select="concat('#', string(a[1]/@name))"/>
+ </xsl:call-template>
+ </xsl:variable>
+ <li>
+ <xsl:element name="a">
+ <xsl:attribute name="href">
+ <xsl:value-of select="$filename"/>
+ </xsl:attribute>
+ <xsl:value-of select="."/>
+ </xsl:element>
+ </li>
+ </xsl:for-each>
+
+ <xsl:choose>
+ <xsl:when test="$dirname != ''">
+ <li><a href="../index.html" style="font-weight:bold">libxslt</a></li>
+ </xsl:when>
+ <xsl:otherwise>
+ <li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li>
+ <li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li>
+ </xsl:otherwise>
+ </xsl:choose>
+
+ <li><a href="html/index.html" style="font-weight:bold">API Menu</a></li>
+ <li><a href="ChangeLog.html">ChangeLog</a></li>
+ </ul>
+ </xsl:variable>
+
+ <xsl:variable name="api">
+ <ul>
+ <li><a href="{$href_base}APIchunk0.html">Alphabetic</a></li>
+ <li><a href="{$href_base}APIconstructors.html">Constructors</a></li>
+ <li><a href="{$href_base}APIfunctions.html">Functions/Types</a></li>
+ <li><a href="{$href_base}APIfiles.html">Modules</a></li>
+ <li><a href="{$href_base}APIsymbols.html">Symbols</a></li>
+ </ul>
+ </xsl:variable>
+
+ <xsl:variable name="related">
+ <ul>
+ <xsl:choose>
+ <xsl:when test="$dirname = ''">
+ <li><a href="{$href_base}tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="{$href_base}tutorial2/libxslt_pipes.html">Tutorial2</a></li>
+ <li><a href="{$href_base}xsltproc.html">Man page for xsltproc</a></li>
+ </xsl:when>
+ </xsl:choose>
+ <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>
+ </xsl:variable>
+
+ <xsl:template name="develtoc">
+ <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><xsl:value-of select="$menu_name"/></b>
+ </center>
+ </td>
+ </tr>
+ <tr>
+ <td bgcolor="#fffacd">
+ <xsl:copy-of select="$toc"/>
+ </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">
+ <xsl:copy-of select="$related"/>
+ </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">
+ <xsl:copy-of select="$api"/>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </xsl:template>
+
+ <xsl:template mode="head" match="title">
+ <title>
+ <xsl:apply-templates/>
+ </title>
+ </xsl:template>
+ <xsl:template mode="head" match="meta">
+</xsl:template>
+
+<!--
+ - The global title
+ -->
+ <xsl:variable name="globaltitle" select="string(/html/body/h1[1])"/>
+<!--
+ - Write the styles in the head
+ -->
+ <xsl:template name="style">
+ <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>
+ </xsl:template>
+
+<!--
+ - Write the title box on top
+ -->
+ <xsl:template name="titlebox">
+ <xsl:param name="title" select="'Main Page'"/>
+ <table border="0" width="100%" cellpadding="5" cellspacing="0" align="center">
+ <tr>
+ <td width="120">
+ <a href="http://swpat.ffii.org/"><img src="{$logo_base}epatents.png" alt="Action against software patents"/></a>
+ </td>
+ <td width="180">
+ <a href="http://www.gnome.org/"><img src="{$logo_base}gnome2.png" alt="GNOME2 Logo"/></a>
+ <a href="http://www.w3.org/Status"><img src="{$logo_base}w3c.png" alt="W3C logo"/></a>
+ <a href="http://www.redhat.com"><img src="{$logo_base}redhat.gif" alt="Red Hat Logo"/></a>
+ <div align="left">
+ <a href="http://xmlsoft.org/XSLT/"><img src="{$logo_base}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">
+ <xsl:element name="h1">
+ <xsl:value-of select="$globaltitle"/>
+ </xsl:element>
+ <xsl:element name="h2">
+ <xsl:value-of select="$title"/>
+ </xsl:element>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </xsl:template>
+
+<!--
+ - Handling of nodes in the body before the first H2, table of content
+ - Everything is just copied over, except href which may get rewritten
+ - and h1/h2/a at the top level
+ -->
+ <xsl:template priority="2" mode="subcontent" match="a">
+ <xsl:variable name="filename">
+ <xsl:call-template name="filename">
+ <xsl:with-param name="name" select="string(@href)"/>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:copy>
+ <xsl:attribute name="href">
+ <xsl:value-of select="$filename"/>
+ </xsl:attribute>
+ <xsl:apply-templates mode="subcontent" select="node()"/>
+ </xsl:copy>
+ </xsl:template>
+
+ <xsl:template mode="subcontent" match="@*|node()">
+ <xsl:copy>
+ <xsl:apply-templates mode="subcontent" select="@*|node()"/>
+ </xsl:copy>
+ </xsl:template>
+ <xsl:template mode="content" match="@*|node()">
+ <xsl:if test="name() != 'h1' and name() != 'h2'">
+ <xsl:copy>
+ <xsl:apply-templates mode="subcontent" select="@*|node()"/>
+ </xsl:copy>
+ </xsl:if>
+ </xsl:template>
+
+<!--
+ - Handling of nodes in the body after an H2
+ - Open a new file and dump all the siblings up to the next H2
+ -->
+ <xsl:template name="subfile">
+ <xsl:param name="header" select="following-sibling::h2[1]"/>
+ <xsl:variable name="filename">
+ <xsl:call-template name="filename">
+ <xsl:with-param name="name" select="concat('#', string($header/a[1]/@name))"/>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:variable name="title">
+ <xsl:value-of select="$header"/>
+ </xsl:variable>
+ <xsl:variable name="content">
+ <xsl:apply-templates mode="subfile" select=
+ "$header/following-sibling::*[preceding-sibling::h2[1] = $header and name() != 'h2' and position() != last()]"/>
+ </xsl:variable>
+ <xsl:call-template name="new_page">
+ <xsl:with-param name="filename" select="concat($dirname, $filename)"/>
+ <xsl:with-param name="title" select="$title"/>
+ <xsl:with-param name="target" select="$content"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template mode="subfile" match="@*|node()">
+ <xsl:copy>
+ <xsl:apply-templates mode="content" select="@*|node()"/>
+ </xsl:copy>
+ </xsl:template>
+
+<!--
+ - Handling of the initial body and head HTML document
+ -->
+ <xsl:template match="body">
+ <xsl:variable name="firsth2" select="./h2[1]"/>
+ <xsl:variable name="rest2" select="./h2[position()&gt;1]"/>
+ <xsl:variable name="content">
+ <xsl:apply-templates mode="content" select="($firsth2/preceding-sibling::*)"/>
+ <xsl:for-each select="./h2">
+ <xsl:call-template name="subfile">
+ <xsl:with-param name="header" select="."/>
+ </xsl:call-template>
+ </xsl:for-each>
+ </xsl:variable>
+ <xsl:call-template name="generic_page">
+ <xsl:with-param name="title" select="$libname"/>
+ <xsl:with-param name="target" select="$content"/>
+ </xsl:call-template>
+
+ </xsl:template>
+
+ <xsl:template match="head">
+ <!--
+ The output <head> node is created during initial processing
+ -->
+ </xsl:template>
+
+ <xsl:template match="html">
+ <!--
+ The output <html> node is created during initial processing
+ -->
+ <xsl:apply-templates/>
+ </xsl:template>
+
+<!--
+ new_page creates a new output document using the parameter "filename", then calls upon
+ the template generic_page to do the actual page generation.
+-->
+ <xsl:template name="new_page">
+ <xsl:param name="filename"/> <!-- Output filename -->
+ <xsl:param name="title"/> <!-- Page title -->
+ <xsl:param name="target"/> <!-- The nodes (RTF) to be copied into document -->
+ <xsl:document href="{$filename}" method="xml" encoding="ISO-8859-1"
+ doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ <xsl:call-template name="generic_page">
+ <xsl:with-param name="title" select="$title"/>
+ <xsl:with-param name="target" select="$target"/>
+ <xsl:with-param name="toc" select="$toc"/>
+ </xsl:call-template>
+ </xsl:document>
+ </xsl:template>
+
+<!--
+ generic_page produces the "standard" page used by all the different doc files.
+-->
+ <xsl:template name="generic_page">
+ <xsl:param name="title"/>
+ <xsl:param name="target"/> <!-- The nodes (RTF) that make up the main page content -->
+ <html>
+ <head>
+ <xsl:call-template name="style"/>
+ <xsl:element name="title">
+ <xsl:value-of select="$title"/>
+ </xsl:element>
+ </head>
+ <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000">
+ <xsl:call-template name="titlebox">
+ <xsl:with-param name="title" select="$title"/>
+ </xsl:call-template>
+ <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">
+ <xsl:call-template name="develtoc"/>
+ </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">
+ <xsl:copy-of select="$target"/>
+ <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+ </html>
+ </xsl:template>
+</xsl:stylesheet>
diff --git a/libxslt/doc/smallfootonly.gif b/libxslt/doc/smallfootonly.gif
new file mode 100644
index 0000000..ddbb9ee
--- /dev/null
+++ b/libxslt/doc/smallfootonly.gif
Binary files differ
diff --git a/libxslt/doc/stylesheet.fig b/libxslt/doc/stylesheet.fig
new file mode 100644
index 0000000..4f900e9
--- /dev/null
+++ b/libxslt/doc/stylesheet.fig
@@ -0,0 +1,104 @@
+#FIG 3.2
+Landscape
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 2400 3075 2925 3075 2925 3600 2400 3600 2400 3075
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 2025 450 2550 450 2550 975 2025 975 2025 450
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 5400 375 7050 375 7050 3225 5400 3225 5400 375
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 750 7050 750
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 1125 7050 1125
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 1500 7050 1500
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 1875 7050 1875
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 2250 7050 2250
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2025 975 1650 1425
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 450 2175 975 2175 975 2700 450 2700 450 2175
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1350 3075 1875 3075 1875 3600 1350 3600 1350 3075
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 300 3075 825 3075 825 3600 300 3600 300 3075
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 2400 2175 2925 2175 2925 2700 2400 2700 2400 2175
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 1425 1425 1950 1425 1950 1950 1425 1950 1425 1425
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 1425 1950 975 2175
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 675 2700 525 3075
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 975 2475 2400 2475
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 825 3300 1350 3300
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2700 2700 2700 3075
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 5550 2025 2550 450
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 2100 5025 3750 5025 3750 7425 2100 7425 2100 5025
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 600 3600 2475 5025
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 2850 7050 2850
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 6225 3150 3750 5025
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2100 5325 3750 5325
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2100 5625 3750 5625
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2100 5925 3750 5925
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2250 5775 450 3600
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 3
+ 5250 5025 4575 5025 4575 6300
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 5325 5025 5550 5025
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 4575 6375 4575 6600
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 3150 5175 4575 5175
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2925 2700 5100 5025
+4 0 0 50 0 0 18 0.0000 4 225 720 5700 675 parent\001
+4 0 0 50 0 0 18 0.0000 4 165 495 5700 1050 next\001
+4 0 0 50 0 0 18 0.0000 4 255 870 5700 1425 imports\001
+4 0 0 50 0 0 18 0.0000 4 195 735 5700 1800 doclist\001
+4 0 0 50 0 0 18 0.0000 4 195 390 5700 2175 doc\001
+4 0 0 50 0 0 18 0.0000 4 255 1470 450 750 xsl:stylesheet\001
+4 0 0 50 0 0 18 0.0000 4 255 1350 2025 1725 xsl:template\001
+4 0 0 50 0 0 18 0.0000 4 255 1140 5700 3075 preComps\001
+4 0 0 50 0 0 18 0.0000 4 165 495 2475 5250 next\001
+4 0 0 50 0 0 18 0.0000 4 225 465 2475 5550 type\001
+4 0 0 50 0 0 18 0.0000 4 195 420 2475 5850 inst\001
+4 0 0 50 0 0 18 0.0000 4 255 915 1350 4050 _private\001
+4 0 0 50 0 0 18 0.0000 4 195 720 1350 3000 html:a\001
+4 0 0 50 0 0 18 0.0000 4 195 705 2625 3900 TEXT\001
+4 0 0 50 0 0 18 0.0000 4 255 915 3375 3000 _private\001
+4 0 0 50 0 0 18 0.0000 4 255 2010 4050 6900 xsltStylePreComp\001
+4 0 0 50 0 0 18 0.0000 4 255 1455 3900 600 xslStylesheet\001
diff --git a/libxslt/doc/stylesheet.gif b/libxslt/doc/stylesheet.gif
new file mode 100644
index 0000000..5250d66
--- /dev/null
+++ b/libxslt/doc/stylesheet.gif
Binary files differ
diff --git a/libxslt/doc/symbols.xml b/libxslt/doc/symbols.xml
new file mode 100644
index 0000000..e1bbb38
--- /dev/null
+++ b/libxslt/doc/symbols.xml
@@ -0,0 +1,317 @@
+<!-- This file describes all the exported entry points from libxslt
+ library, grouped by release with the first release being 1.0.11
+ Add new exported entry points at the end, this will be used to
+ generate libxslt.syms the definition of exported symbols from
+ shared libraries
+-->
+<symbols>
+ <release version="1.0.11">
+ <symbol file="attributes">xsltApplyAttributeSet</symbol>
+ <symbol file="attributes">xsltFreeAttributeSetsHashes</symbol>
+ <symbol file="attributes">xsltParseStylesheetAttributeSet</symbol>
+ <symbol file="documents">xsltFindDocument</symbol>
+ <symbol file="documents">xsltFreeDocuments</symbol>
+ <symbol file="documents">xsltFreeStyleDocuments</symbol>
+ <symbol file="documents">xsltLoadDocument</symbol>
+ <symbol file="documents">xsltLoadStyleDocument</symbol>
+ <symbol file="documents">xsltNewDocument</symbol>
+ <symbol file="documents">xsltNewStyleDocument</symbol>
+ <symbol file="extensions">xsltCheckExtPrefix</symbol>
+ <symbol file="extensions">xsltExtElementLookup</symbol>
+ <symbol file="extensions">xsltExtModuleElementLookup</symbol>
+ <symbol file="extensions">xsltExtModuleFunctionLookup</symbol>
+ <symbol file="extensions">xsltExtModuleTopLevelLookup</symbol>
+ <symbol file="extensions">xsltFreeCtxtExts</symbol>
+ <symbol file="extensions">xsltFreeExts</symbol>
+ <symbol file="extensions">xsltGetExtData</symbol>
+ <symbol file="extensions">xsltInitCtxtExts</symbol>
+ <symbol file="extensions">xsltInitElemPreComp</symbol>
+ <symbol file="extensions">xsltNewElemPreComp</symbol>
+ <symbol file="extensions">xsltPreComputeExtModuleElement</symbol>
+ <symbol file="extensions">xsltRegisterExtElement</symbol>
+ <symbol file="extensions">xsltRegisterExtFunction</symbol>
+ <symbol file="extensions">xsltRegisterExtModuleElement</symbol>
+ <symbol file="extensions">xsltRegisterExtModuleFull</symbol>
+ <symbol file="extensions">xsltRegisterExtModuleFunction</symbol>
+ <symbol file="extensions">xsltRegisterExtModule</symbol>
+ <symbol file="extensions">xsltRegisterExtModuleTopLevel</symbol>
+ <symbol file="extensions">xsltRegisterExtPrefix</symbol>
+ <symbol file="extensions">xsltRegisterTestModule</symbol>
+ <symbol file="extensions">xsltShutdownCtxtExts</symbol>
+ <symbol file="extensions">xsltShutdownExts</symbol>
+ <symbol file="extensions">xsltStyleGetExtData</symbol>
+ <symbol file="extensions">xsltUnregisterExtModuleElement</symbol>
+ <symbol file="extensions">xsltUnregisterExtModuleFunction</symbol>
+ <symbol file="extensions">xsltUnregisterExtModule</symbol>
+ <symbol file="extensions">xsltUnregisterExtModuleTopLevel</symbol>
+ <symbol file="extra">xsltDebug</symbol>
+ <symbol file="extra">xsltFunctionNodeSet</symbol>
+ <symbol file="extra">xsltRegisterAllExtras</symbol>
+ <symbol file="extra">xsltRegisterExtras</symbol>
+ <symbol file="functions">xsltDocumentFunction</symbol>
+ <symbol file="functions">xsltElementAvailableFunction</symbol>
+ <symbol file="functions">xsltFormatNumberFunction</symbol>
+ <symbol file="functions">xsltFunctionAvailableFunction</symbol>
+ <symbol file="functions">xsltGenerateIdFunction</symbol>
+ <symbol file="functions">xsltKeyFunction</symbol>
+ <symbol file="functions">xsltRegisterAllFunctions</symbol>
+ <symbol file="functions">xsltSystemPropertyFunction</symbol>
+ <symbol file="functions">xsltUnparsedEntityURIFunction</symbol>
+ <symbol file="functions">xsltXPathFunctionLookup</symbol>
+ <symbol file="imports">xsltFindElemSpaceHandling</symbol>
+ <symbol file="imports">xsltFindTemplate</symbol>
+ <symbol file="imports">xsltNeedElemSpaceHandling</symbol>
+ <symbol file="imports">xsltNextImport</symbol>
+ <symbol file="imports">xsltParseStylesheetImport</symbol>
+ <symbol file="imports">xsltParseStylesheetInclude</symbol>
+ <symbol file="keys">xsltAddKey</symbol>
+ <symbol file="keys">xsltFreeDocumentKeys</symbol>
+ <symbol file="keys">xsltFreeKeys</symbol>
+ <symbol file="keys">xsltGetKey</symbol>
+ <symbol file="keys">xsltInitCtxtKeys</symbol>
+ <symbol file="namespaces">xsltCopyNamespaceList</symbol>
+ <symbol file="namespaces">xsltCopyNamespace</symbol>
+ <symbol file="namespaces">xsltFreeNamespaceAliasHashes</symbol>
+ <symbol file="namespaces">xsltGetNamespace</symbol>
+ <symbol file="namespaces">xsltGetSpecialNamespace</symbol>
+ <symbol file="namespaces">xsltNamespaceAlias</symbol>
+ <symbol file="pattern">xsltAddTemplate</symbol>
+ <symbol file="pattern">xsltCleanupTemplates</symbol>
+ <symbol file="pattern">xsltCompilePattern</symbol>
+ <symbol file="pattern">xsltFreeCompMatchList</symbol>
+ <symbol file="pattern">xsltFreeTemplateHashes</symbol>
+ <symbol file="pattern">xsltGetTemplate</symbol>
+ <symbol file="pattern">xsltMatchPattern</symbol>
+ <symbol file="pattern">xsltTestCompMatchList</symbol>
+ <symbol file="preproc">xsltDocumentComp</symbol>
+ <symbol file="preproc">xsltFreeStylePreComps</symbol>
+ <symbol file="preproc">xsltStylePreCompute</symbol>
+ <symbol file="templates">xsltAttrListTemplateProcess</symbol>
+ <symbol file="templates">xsltAttrTemplateProcess</symbol>
+ <symbol file="templates">xsltAttrTemplateValueProcess</symbol>
+ <symbol file="templates">xsltEvalAttrValueTemplate</symbol>
+ <symbol file="templates">xsltEvalStaticAttrValueTemplate</symbol>
+ <symbol file="templates">xsltEvalTemplateString</symbol>
+ <symbol file="templates">xsltEvalXPathPredicate</symbol>
+ <symbol file="templates">xsltEvalXPathString</symbol>
+ <symbol file="templates">xsltTemplateProcess</symbol>
+ <symbol file="transform">xslHandleDebugger</symbol>
+ <symbol file="transform">xsltApplyImports</symbol>
+ <symbol file="transform">xsltApplyOneTemplate</symbol>
+ <symbol file="transform">xsltApplyStripSpaces</symbol>
+ <symbol file="transform">xsltApplyStylesheet</symbol>
+ <symbol file="transform">xsltApplyStylesheetUser</symbol>
+ <symbol file="transform">xsltApplyTemplates</symbol>
+ <symbol file="transform">xsltAttribute</symbol>
+ <symbol file="transform">xsltCallTemplate</symbol>
+ <symbol file="transform">xsltChoose</symbol>
+ <symbol file="transform">xsltComment</symbol>
+ <symbol file="transform">xsltCopyOf</symbol>
+ <symbol file="transform">xsltCopy</symbol>
+ <symbol file="transform">xsltDocumentElem</symbol>
+ <symbol file="transform">xsltElement</symbol>
+ <symbol file="transform">xsltForEach</symbol>
+ <symbol file="transform">xsltFreeTransformContext</symbol>
+ <symbol file="transform">xsltGetXIncludeDefault</symbol>
+ <symbol file="transform">xsltIf</symbol>
+ <symbol file="transform">xsltNewTransformContext</symbol>
+ <symbol file="transform">xsltNumber</symbol>
+ <symbol file="transform">xsltProcessingInstruction</symbol>
+ <symbol file="transform">xsltProfileStylesheet</symbol>
+ <symbol file="transform">xsltRegisterAllElement</symbol>
+ <symbol file="transform">xsltRunStylesheet</symbol>
+ <symbol file="transform">xsltSetXIncludeDefault</symbol>
+ <symbol file="transform">xsltSort</symbol>
+ <symbol file="transform">xsltText</symbol>
+ <symbol file="transform">xsltValueOf</symbol>
+ <symbol file="variables">xsltAddStackElemList</symbol>
+ <symbol file="variables">xsltEvalGlobalVariables</symbol>
+ <symbol file="variables">xsltEvalOneUserParam</symbol>
+ <symbol file="variables">xsltEvalUserParams</symbol>
+ <symbol file="variables">xsltFreeGlobalVariables</symbol>
+ <symbol file="variables">xsltParseGlobalParam</symbol>
+ <symbol file="variables">xsltParseGlobalVariable</symbol>
+ <symbol file="variables">xsltParseStylesheetCallerParam</symbol>
+ <symbol file="variables">xsltParseStylesheetParam</symbol>
+ <symbol file="variables">xsltParseStylesheetVariable</symbol>
+ <symbol file="variables">xsltQuoteOneUserParam</symbol>
+ <symbol file="variables">xsltQuoteUserParams</symbol>
+ <symbol file="variables">xsltVariableLookup</symbol>
+ <symbol file="variables">xsltXPathVariableLookup</symbol>
+ <symbol file="xsltInternals">xsltDecimalFormatGetByName</symbol>
+ <symbol file="xsltInternals">xsltFormatNumberConversion</symbol>
+ <symbol file="xsltInternals">xsltFreeStackElemList</symbol>
+ <symbol file="xsltInternals">xsltFreeStylesheet</symbol>
+ <symbol file="xsltInternals">xsltIsBlank</symbol>
+ <symbol file="xsltInternals">xsltLoadStylesheetPI</symbol>
+ <symbol file="xsltInternals">xsltNewStylesheet</symbol>
+ <symbol file="xsltInternals">xsltNumberFormat</symbol>
+ <symbol file="xsltInternals">xsltParseStylesheetDoc</symbol>
+ <symbol file="xsltInternals">xsltParseStylesheetFile</symbol>
+ <symbol file="xsltInternals">xsltParseStylesheetOutput</symbol>
+ <symbol file="xsltInternals">xsltParseStylesheetProcess</symbol>
+ <symbol file="xsltInternals">xsltParseTemplateContent</symbol>
+ <symbol file="xsltutils">xslAddCall</symbol>
+ <symbol file="xsltutils">xslDropCall</symbol>
+ <symbol file="xsltutils">xsltCalibrateAdjust</symbol>
+ <symbol file="xsltutils">xsltDocumentSortFunction</symbol>
+ <symbol file="xsltutils">xsltDoSortFunction</symbol>
+ <symbol file="xsltutils">xsltGetNsProp</symbol>
+ <symbol file="xsltutils">xsltGetQNameURI</symbol>
+ <symbol file="xsltutils">xsltMessage</symbol>
+ <symbol file="xsltutils">xsltPrintErrorContext</symbol>
+ <symbol file="xsltutils">xsltSaveProfiling</symbol>
+ <symbol file="xsltutils">xsltSaveResultToFd</symbol>
+ <symbol file="xsltutils">xsltSaveResultToFilename</symbol>
+ <symbol file="xsltutils">xsltSaveResultToFile</symbol>
+ <symbol file="xsltutils">xsltSaveResultTo</symbol>
+ <symbol file="xsltutils">xsltSetDebuggerCallbacks</symbol>
+ <symbol file="xsltutils">xsltSetGenericDebugFunc</symbol>
+ <symbol file="xsltutils">xsltSetGenericErrorFunc</symbol>
+ <symbol file="xsltutils">xsltTimestamp</symbol>
+ <symbol file="xslt">xsltCleanupGlobals</symbol>
+ </release>
+ <release version="1.0.12">
+ <symbol file="xsltInternals">xsltAllocateExtraCtxt</symbol>
+ <symbol file="xsltInternals">xsltAllocateExtra</symbol>
+ </release>
+ <release version="1.0.13">
+ <symbol file="extensions">xsltExtModuleElementPreComputeLookup</symbol>
+ <symbol file="extensions">xsltXPathGetTransformContext</symbol>
+ </release>
+ <release version="1.0.16">
+ <symbol file="attributes">xsltResolveStylesheetAttributeSet</symbol>
+ </release>
+ <release version="1.0.17">
+ <symbol file="transform">xsltRunStylesheetUser</symbol>
+ </release>
+ <release version="1.0.18">
+ <symbol file="extensions">xsltDebugDumpExtensions</symbol>
+ <symbol file="xsltutils">xsltSaveResultToString</symbol>
+ </release>
+ <release version="1.0.22">
+ <symbol file="templates">xsltAttrTemplateValueProcessNode</symbol>
+ <symbol file="security">xsltCheckRead</symbol>
+ <symbol file="security">xsltCheckWrite</symbol>
+ <symbol file="templates">xsltEvalXPathStringNs</symbol>
+ <symbol file="security">xsltFreeSecurityPrefs</symbol>
+ <symbol file="security">xsltGetDefaultSecurityPrefs</symbol>
+ <symbol file="security">xsltGetSecurityPrefs</symbol>
+ <symbol file="security">xsltNewSecurityPrefs</symbol>
+ <symbol file="security">xsltSecurityAllow</symbol>
+ <symbol file="security">xsltSecurityForbid</symbol>
+ <symbol file="security">xsltSetCtxtSecurityPrefs</symbol>
+ <symbol file="security">xsltSetDefaultSecurityPrefs</symbol>
+ <symbol file="security">xsltSetSecurityPrefs</symbol>
+ <symbol file="xsltutils">xsltSetTransformErrorFunc</symbol>
+ <symbol file="xsltutils">xsltTransformError</symbol>
+ </release>
+ <release version="1.0.24">
+ <symbol file="xsltutils">xslDebugStatus</symbol>
+ <symbol file="xsltutils">xsltComputeSortResult</symbol>
+ <symbol file="xsltutils">xsltDefaultSortFunction</symbol>
+ <symbol file="xslt">xsltEngineVersion</symbol>
+ <symbol file="preproc">xsltExtMarker</symbol>
+ <symbol file="xsltutils">xsltGenericDebugContext</symbol>
+ <symbol file="xsltutils">xsltGenericDebug</symbol>
+ <symbol file="xsltutils">xsltGenericErrorContext</symbol>
+ <symbol file="xsltutils">xsltGenericError</symbol>
+ <symbol file="xsltutils">xsltGetProfileInformation</symbol>
+ <symbol file="xsltutils">xsltGetUTF8Char</symbol>
+ <symbol file="xslt">xsltLibxmlVersion</symbol>
+ <symbol file="xslt">xsltLibxsltVersion</symbol>
+ <symbol file="xslt">xsltMaxDepth</symbol>
+ <symbol file="xslt">xsltMaxVars</symbol>
+ <symbol file="xsltInternals">xsltParseStylesheetImportedDoc</symbol>
+ <symbol file="xsltutils">xsltSetCtxtSortFunc</symbol>
+ <symbol file="xsltutils">xsltSetSortFunc</symbol>
+ </release>
+ <release version="1.0.30">
+ <symbol file="xsltInternals">xsltCreateRVT</symbol>
+ <symbol file="xsltInternals">xsltFreeRVTs</symbol>
+ <symbol file="xsltInternals">xsltRegisterPersistRVT</symbol>
+ <symbol file="xsltInternals">xsltRegisterTmpRVT</symbol>
+ </release>
+ <release version="1.0.32">
+ <symbol file="transform">xsltCopyTextString</symbol>
+ <symbol file="extensions">xsltGetExtInfo</symbol>
+ </release>
+ <release version="1.0.33">
+ <symbol file="pattern">xsltNormalizeCompSteps</symbol>
+ </release>
+ <release version="1.1.0">
+ <symbol file="xsltutils">xsltGetDebuggerStatus</symbol>
+ <symbol file="xsltutils">xsltSetDebuggerStatus</symbol>
+ </release>
+ <release version="1.1.1">
+ <symbol file="xsltutils">xsltDebugGetDefaultTrace</symbol>
+ <symbol file="xsltutils">xsltDebugSetDefaultTrace</symbol>
+ </release>
+ <release version="1.1.2">
+ <symbol file="xsltutils">xsltSetCtxtParseOptions</symbol>
+ </release>
+ <release version="1.1.3">
+ <symbol file="xsltInternals">xsltCompileAttr</symbol>
+ <symbol file="xsltInternals">xsltEvalAVT</symbol>
+ <symbol file="xsltInternals">xsltFreeAVTList</symbol>
+ <symbol file="xsltutils">xsltGetCNsProp</symbol>
+ <symbol file="xsltutils">xsltSplitQName</symbol>
+ <symbol file="xsltutils">xsltXPathCompile</symbol>
+ </release>
+ <release version="1.1.5">
+ <symbol file="xsltutils">xsltGetQNameURI2</symbol>
+ </release>
+ <release version="1.1.7">
+ <symbol file="namespaces">xsltGetPlainNamespace</symbol>
+ </release>
+ <release version="1.1.9">
+ <symbol file="documents">xsltDocDefaultLoader</symbol>
+ <symbol file="documents">xsltSetLoaderFunc</symbol>
+ </release>
+ <release version="1.1.18">
+ <symbol file="xsltInternals">xsltConstNamespaceNameXSLT</symbol>
+ <symbol file="xsltInternals">xsltExtensionInstructionResultFinalize</symbol>
+ <symbol file="xsltInternals">xsltExtensionInstructionResultRegister</symbol>
+ <symbol file="xsltInternals">xsltInitCtxtKey</symbol>
+ <symbol file="xslt">xsltInit</symbol>
+ <symbol file="xsltInternals">xsltParseAnyXSLTElem</symbol>
+ <symbol file="xsltInternals">xsltParseSequenceConstructor</symbol>
+ <symbol file="xsltInternals">xsltPointerListAddSize</symbol>
+ <symbol file="xsltInternals">xsltPointerListClear</symbol>
+ <symbol file="xsltInternals">xsltPointerListCreate</symbol>
+ <symbol file="xsltInternals">xsltPointerListFree</symbol>
+ <symbol file="xsltInternals">xsltRegisterLocalRVT</symbol>
+ <symbol file="xsltInternals">xsltReleaseRVT</symbol>
+ <symbol file="xsltInternals">xsltRestoreDocumentNamespaces</symbol>
+ <symbol file="extensions">xsltStyleStylesheetLevelGetExtData</symbol>
+ <symbol removed="1.1.28" file="xsltInternals">xsltTransStorageAdd</symbol>
+ <symbol removed="1.1.28" file="xsltInternals">xsltTransStorageRemove</symbol>
+ <symbol file="xsltInternals">xsltUninit</symbol>
+ <symbol file="xsltInternals">xsltXSLTAttrMarker</symbol>
+ </release>
+ <release version="1.1.20">
+ <symbol file="transform">xsltLocalVariablePop</symbol>
+ <symbol file="transform">xsltLocalVariablePush</symbol>
+ </release>
+ <release version="1.1.23">
+ <symbol file="xsltInternals">xsltInitAllDocKeys</symbol>
+ </release>
+ <release version="1.1.24">
+ <symbol file="extensions">xsltCheckExtURI</symbol>
+ </release>
+ <release version="1.1.25">
+ <symbol file="xsltlocale">xsltFreeLocale</symbol>
+ <symbol file="xsltlocale">xsltLocaleStrcmp</symbol>
+ <symbol file="xsltlocale">xsltNewLocale</symbol>
+ <symbol file="xsltlocale">xsltStrxfrm</symbol>
+ <symbol file="extensions">xsltInitGlobals</symbol>
+ </release>
+ <release version="1.1.26">
+ <!-- lxml was using it even if not pusblished -->
+ <symbol file="transform">xsltProcessOneNode</symbol>
+ </release>
+ <release version="1.1.27">
+ <symbol file="xsltlocale">xsltFreeLocales</symbol>
+ <symbol file="xsltutils">xsltXPathCompileFlags</symbol>
+ </release>
+</symbols>
diff --git a/libxslt/doc/syms.xsl b/libxslt/doc/syms.xsl
new file mode 100644
index 0000000..3965e90
--- /dev/null
+++ b/libxslt/doc/syms.xsl
@@ -0,0 +1,99 @@
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+ <xsl:output method="text" encoding="UTF-8"/>
+
+ <xsl:variable name="api" select="document('libxslt-api.xml')"/>
+
+ <xsl:template match="/">
+ <xsl:text>#
+# Officially exported symbols, for which header
+# file definitions are installed in /usr/include/libxslt
+#
+# Automatically generated from symbols.xml and syms.xsl
+#
+# Versions here are *fixed* to match the libxslt version
+# at which the symbol was introduced. This ensures that
+# a new client app requiring symbol foo() can't accidentally
+# run with old libxslt.so not providing foo() - the global
+# soname version info can't enforce this since we never
+# change the soname
+#
+
+</xsl:text>
+ <xsl:apply-templates select="/symbols/release"/>
+ </xsl:template>
+
+ <xsl:template match="release">
+ <xsl:variable name="prev"
+ select="preceding-sibling::release[position()=1]"/>
+ <xsl:text>LIBXML2_</xsl:text>
+ <xsl:value-of select="string(@version)"/>
+ <xsl:text> {
+ global:
+</xsl:text>
+ <xsl:for-each select="symbol">
+ <xsl:if test="string(preceding-sibling::symbol[position()=1]/@file) != string(@file)">
+ <xsl:text>
+# </xsl:text>
+ <xsl:value-of select="@file"/>
+ <xsl:text>
+</xsl:text>
+ </xsl:if>
+
+ <xsl:apply-templates select="."/>
+ </xsl:for-each>
+
+ <xsl:text>} </xsl:text>
+ <xsl:if test="$prev">
+ <xsl:text>LIBXML2_</xsl:text>
+ <xsl:value-of select="$prev/@version"/>
+ </xsl:if>
+ <xsl:text>;
+
+</xsl:text>
+ </xsl:template>
+
+ <xsl:template match="symbol">
+ <xsl:variable name="name" select="string(.)"/>
+ <xsl:variable name="file" select="string(@file)"/>
+ <xsl:choose>
+ <xsl:when test="@removed">
+ <xsl:text># </xsl:text>
+ <xsl:value-of select="$name"/>
+ <xsl:text>; removed in </xsl:text>
+ <xsl:value-of select="@removed"/>
+ <xsl:text>
+</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <!-- make sure we can find that symbol exported from the API list -->
+ <xsl:variable name="def"
+ select="$api/api/files/file[@name = $file]/exports[@symbol = $name]"/>
+ <xsl:if test="string($def/@symbol) != $name">
+ <xsl:message terminate="yes">
+ <xsl:text>Failed to find definition in libxslt-api.xml:</xsl:text>
+ <xsl:value-of select="$name"/>
+ </xsl:message>
+ </xsl:if>
+
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="$name"/>
+ <xsl:text>;</xsl:text>
+ <xsl:if test="$def/@type = 'variable'">
+ <xsl:text> # variable</xsl:text>
+ </xsl:if>
+ <xsl:if test="@comment">
+ <xsl:text># </xsl:text>
+ <xsl:value-of select="@comment"/>
+ <xsl:text>
+</xsl:text>
+ </xsl:if>
+ <xsl:text>
+</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/libxslt/doc/templates.fig b/libxslt/doc/templates.fig
new file mode 100644
index 0000000..874a19a
--- /dev/null
+++ b/libxslt/doc/templates.fig
@@ -0,0 +1,138 @@
+#FIG 3.2
+Landscape
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+6 3225 5700 4200 7200
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 3
+ 3900 5700 3225 5700 3225 6825
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 3975 5700 4200 5700
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 3225 6900 3225 7200
+-6
+6 3150 2475 4125 3975
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 3
+ 3825 2475 3150 2475 3150 3600
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 3900 2475 4125 2475
+2 1 3 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 3150 3675 3150 3975
+-6
+2 2 0 1 1 1 50 0 20 0.000 0 0 -1 0 0 5
+ 3900 6975 4425 6975 4425 7500 3900 7500 3900 6975
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2175 5850 5400 3075
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2175 7650 4050 6975
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2175 7950 3750 8250
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 750 7050 750
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 1050 7050 1050
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 1350 7050 1350
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 1650 7050 1650
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 1950 7050 1950
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 2250 7050 2250
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 5475 900 2250 900
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 1350 1125 1350 2475
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 750 5700 2400 5700 2400 8100 750 8100 750 5700
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 750 6000 2400 6000
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 750 7500 2400 7500
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 750 7800 2400 7800
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 750 6300 2400 6300
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 1800 6150 3225 6150
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 750 6600 2400 6600
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 750 6900 2400 6900
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 750 7200 2400 7200
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 675 2475 2325 2475 2325 4200 675 4200 675 2475
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 675 2775 2325 2775
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 675 3075 2325 3075
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 675 3900 2325 3900
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 675 3525 2325 3525
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 1875 2625 3150 2625
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 2100 4050 2100 5700
+2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
+ 2175 1800 2175 525 675 525 675 1800 2175 1800
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3675 8250 4125 8250 4125 8700 3675 8700 3675 8250
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 4575 8250 5025 8250 5025 8700 4575 8700 4575 8250
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 4200 7500 3900 8250
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 4125 8475 4575 8475
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 3900 8700 3900 9375
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3675 9375 4125 9375 4125 9825 3675 9825 3675 9375
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 5400 750 7050 750 7050 3600 5400 3600 5400 750
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5400 3225 7050 3225
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 2.00 120.00 240.00
+ 5550 3450 2400 5775
+4 0 0 50 0 0 18 0.0000 4 255 1350 4125 6750 xsl:template\001
+4 0 0 50 0 0 18 0.0000 4 255 1545 5475 975 templateHash\001
+4 0 0 50 0 0 18 0.0000 4 255 1350 750 1050 hash(name)\001
+4 0 0 50 0 0 18 0.0000 4 195 540 1275 7725 elem\001
+4 0 0 50 0 0 18 0.0000 4 165 855 1200 8025 content\001
+4 0 0 50 0 0 18 0.0000 4 255 510 1125 5925 style\001
+4 0 0 50 0 0 18 0.0000 4 165 495 1125 6225 next\001
+4 0 0 50 0 0 18 0.0000 4 255 840 1125 6525 priority\001
+4 0 0 50 0 0 18 0.0000 4 135 615 1125 6825 name\001
+4 0 0 50 0 0 18 0.0000 4 195 615 1125 7140 mode\001
+4 0 0 50 0 0 18 0.0000 4 255 975 975 4125 template\001
+4 0 0 50 0 0 18 0.0000 4 255 735 1200 3375 steps[]\001
+4 0 0 50 0 0 18 0.0000 4 165 495 1200 2700 next\001
+4 0 0 50 0 0 18 0.0000 4 195 615 1200 3000 mode\001
+4 0 0 50 0 0 18 0.0000 4 255 1470 300 5550 xsltTemplate\001
+4 0 0 50 0 0 18 0.0000 4 255 1800 1650 2325 xsltCompMatch\001
+4 0 0 50 0 0 18 0.0000 4 255 2250 900 375 Template hash table\001
+4 0 0 50 0 0 18 0.0000 4 255 1455 5700 525 xslStylesheet\001
+4 0 0 50 0 0 18 0.0000 4 255 2805 4650 7950 Stylesheet document tree\001
+4 0 0 50 0 0 18 0.0000 4 195 1185 5550 1575 rootMatch\001
+4 0 0 50 0 0 18 0.0000 4 255 1095 5550 1875 keyMatch\001
+4 0 0 50 0 0 18 0.0000 4 195 1260 5550 2175 elemMatch\001
+4 0 0 50 0 0 18 0.0000 4 195 1125 5550 2490 attrMatch\001
+4 0 0 50 0 0 18 0.0000 4 30 180 5550 2805 ...\001
+4 0 0 50 0 0 18 0.0000 4 255 1080 5625 3525 templates\001
diff --git a/libxslt/doc/templates.gif b/libxslt/doc/templates.gif
new file mode 100644
index 0000000..39b3c49
--- /dev/null
+++ b/libxslt/doc/templates.gif
Binary files differ
diff --git a/libxslt/doc/tutorial/libxslt_tutorial.c b/libxslt/doc/tutorial/libxslt_tutorial.c
new file mode 100644
index 0000000..6b5d5c8
--- /dev/null
+++ b/libxslt/doc/tutorial/libxslt_tutorial.c
@@ -0,0 +1,84 @@
+/*
+ * libxslt_tutorial.c: demo program for the XSL Transformation 1.0 engine
+ *
+ * based on xsltproc.c, by Daniel.Veillard@imag.fr
+ * by John Fleck
+ *
+ * See Copyright for the status of this software.
+ *
+ */
+
+#include <string.h>
+#include <libxml/xmlmemory.h>
+#include <libxml/debugXML.h>
+#include <libxml/HTMLtree.h>
+#include <libxml/xmlIO.h>
+#include <libxml/DOCBparser.h>
+#include <libxml/xinclude.h>
+#include <libxml/catalog.h>
+#include <libxslt/xslt.h>
+#include <libxslt/xsltInternals.h>
+#include <libxslt/transform.h>
+#include <libxslt/xsltutils.h>
+
+
+
+extern int xmlLoadExtDtdDefaultValue;
+
+static void usage(const char *name) {
+ printf("Usage: %s [options] stylesheet file [file ...]\n", name);
+ printf(" --param name value : pass a (parameter,value) pair\n");
+
+}
+
+int
+main(int argc, char **argv) {
+ int i;
+ const char *params[16 + 1];
+ int nbparams = 0;
+ xsltStylesheetPtr cur = NULL;
+ xmlDocPtr doc, res;
+
+ if (argc <= 1) {
+ usage(argv[0]);
+ return(1);
+ }
+
+
+ for (i = 1; i < argc; i++) {
+ if (argv[i][0] != '-')
+ break;
+ if ((!strcmp(argv[i], "-param")) ||
+ (!strcmp(argv[i], "--param"))) {
+ i++;
+ params[nbparams++] = argv[i++];
+ params[nbparams++] = argv[i];
+ if (nbparams >= 16) {
+ fprintf(stderr, "too many params\n");
+ return (1);
+ }
+ } else {
+ fprintf(stderr, "Unknown option %s\n", argv[i]);
+ usage(argv[0]);
+ return (1);
+ }
+ }
+
+ params[nbparams] = NULL;
+ xmlSubstituteEntitiesDefault(1);
+ xmlLoadExtDtdDefaultValue = 1;
+ cur = xsltParseStylesheetFile((const xmlChar *)argv[i]);
+ i++;
+ doc = xmlParseFile(argv[i]);
+ res = xsltApplyStylesheet(cur, doc, params);
+ xsltSaveResultToFile(stdout, res, cur);
+
+ xsltFreeStylesheet(cur);
+ xmlFreeDoc(res);
+ xmlFreeDoc(doc);
+
+ xsltCleanupGlobals();
+ xmlCleanupParser();
+ return(0);
+
+}
diff --git a/libxslt/doc/tutorial/libxslttutorial.html b/libxslt/doc/tutorial/libxslttutorial.html
new file mode 100644
index 0000000..4172858
--- /dev/null
+++ b/libxslt/doc/tutorial/libxslttutorial.html
@@ -0,0 +1,425 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
+<html>
+<head>
+<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type">
+<title>libxslt Tutorial</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.41">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="article">
+<div class="titlepage">
+<div><h1 class="title">
+<a name="id2702654"></a>libxslt Tutorial</h1></div>
+<div><h3 class="author">John Fleck</h3></div>
+<div><p class="releaseinfo">
+ This is version 0.4 of the libxslt Tutorial
+ </p></div>
+<div><p class="copyright">Copyright © 2001 John Fleck</p></div>
+<div><div class="legalnotice"><p>Permission is granted to copy, distribute and/or modify this
+ document under the terms of the <i>GNU Free Documentation
+ License</i>, Version 1.1 or any later version
+ published by the Free Software Foundation with no Invariant
+ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of
+ the license can be found <a href="http://www.gnu.org/copyleft/fdl.html" target="_top">here</a>.</p></div></div>
+<hr>
+</div>
+<div class="toc">
+<p><b>Table of Contents</b></p>
+<dl>
+<dt> <a href="#introduction">Introduction</a>
+</dt>
+<dt> <a href="#functions">Primary Functions</a>
+</dt>
+<dd><dl>
+<dt> <a href="#preparing">Preparing to Parse</a>
+</dt>
+<dt> <a href="#parsethestylesheet">Parse the Stylesheet</a>
+</dt>
+<dt> <a href="#parseinputfile">Parse the Input File</a>
+</dt>
+<dt> <a href="#applyingstylesheet">Applying the Stylesheet</a>
+</dt>
+<dt> <a href="#saveresult">Saving the result</a>
+</dt>
+<dt> <a href="#parameters">Parameters</a>
+</dt>
+<dt> <a href="#cleanup">Cleanup</a>
+</dt>
+</dl></dd>
+<dt>A <a href="#thecode">The Code</a>
+</dt>
+</dl>
+</div>
+<div class="abstract">
+<p>
+<a name="id2705766"></a><b>Abstract</b>
+</p>
+<p>A tutorial on building a simple application using the
+ libxslt library to perform
+ XSLT transformations to convert an
+ XML file into HTML.</p>
+</div>
+<div class="sect1">
+<a name="introduction"></a><div class="titlepage"><div><h2 class="title" style="clear: both">
+<a name="introduction"></a>Introduction</h2></div></div>
+<p>The Extensible Markup Language (XML) is a World
+ Wide Web Consortium standard for the exchange of structured data in text
+ form. Its popularity stems from its universality. Any computer can
+ read a text file. With the proper tools, any computer can read any other
+ computer's XML files.
+ </p>
+<p>One of the most important of those tools is XSLT:
+ Extensible Stylesheet Language Transformations. XSLT
+ is a declarative language that allows you to
+ translate your XML into arbitrary text output
+ using a stylesheet. libxslt provides the
+ functions to perform the transformation.
+ </p>
+<p>libxslt is a free C language library
+ written by Daniel Veillard for the GNOME project
+ allowing you to write programs that perform XSLT
+ transformations.
+
+ <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
+<h3 class="title">
+<a name="id2754803"></a>Note</h3>
+<p>
+ While libxslt was written
+ under the auspices of the GNOME project, it does not
+ depend on any GNOME libraries. None are used in the
+ example in this tutorial.
+ </p>
+</div>
+
+ </p>
+<p>This tutorial illustrates a simple program that reads an
+ XML file, applies a stylesheet and saves the resulting
+ output. This is not a program you would want to create
+ yourself. xsltproc, which is included with the
+ libxslt package, does the same thing and is
+ more robust and full-featured. The program written for this tutorial is a
+ stripped-down version of xsltproc designed to
+ illustrate the functionality of libxslt.
+ </p>
+<p>The full code for xsltproc is in
+ <tt>xsltproc.c</tt> in the libxslt
+ distribution. It also is available <a href="http://cvs.gnome.org/lxr/source/libxslt/libxslt/xsltproc.c" target="_top">on the
+ web</a>.
+ </p>
+<p>References:
+ <div class="itemizedlist"><ul>
+<li><p>
+<a name="id2708005"></a><a href="http://www.w3.org/XML/" target="_top">W3C XML page</a>
+</p></li>
+<li><p>
+<a name="id2708026"></a><a href="http://www.w3.org/Style/XSL/" target="_top">W3C
+ XSL page.</a>
+</p></li>
+<li><p>
+<a name="id2708047"></a><a href="http://xmlsoft.org/XSLT/" target="_top">libxslt</a>
+</p></li>
+</ul></div>
+
+ </p>
+</div>
+<div class="sect1">
+<a name="functions"></a><div class="titlepage"><div><h2 class="title" style="clear: both">
+<a name="functions"></a>Primary Functions</h2></div></div>
+<div class="toc">
+<p><b>Table of Contents</b></p>
+<dl>
+<dt> <a href="#preparing">Preparing to Parse</a>
+</dt>
+<dt> <a href="#parsethestylesheet">Parse the Stylesheet</a>
+</dt>
+<dt> <a href="#parseinputfile">Parse the Input File</a>
+</dt>
+<dt> <a href="#applyingstylesheet">Applying the Stylesheet</a>
+</dt>
+<dt> <a href="#saveresult">Saving the result</a>
+</dt>
+<dt> <a href="#parameters">Parameters</a>
+</dt>
+<dt> <a href="#cleanup">Cleanup</a>
+</dt>
+</dl>
+</div>
+<p>To transform an XML file, you must perform three
+ functions:
+ <div class="orderedlist"><ol type="1">
+<li><p>
+<a name="id2708093"></a>parse the input file</p></li>
+<li><p>
+<a name="id2708101"></a>parse the stylesheet</p></li>
+<li><p>
+<a name="id2708110"></a>apply the stylesheet</p></li>
+</ol></div>
+ </p>
+<div class="sect2">
+<a name="preparing"></a><div class="titlepage"><div><h3 class="title">
+<a name="preparing"></a>Preparing to Parse</h3></div></div>
+<p>Before you can begin parsing input files or stylesheets, there are
+ several steps you need to take to set up entity handling. These steps are
+ not unique to libxslt. Any
+ libxml2 program that parses
+ XML files would need to take similar steps.
+ </p>
+<p>First, you need set up some libxml
+ housekeeping. Pass the integer value <i><tt>1</tt></i> to the
+ <tt>xmlSubstituteEntitiesDefault</tt> function, which tells
+ the libxml2 parser to substitute entities as
+ it parses your file. (Passing <i><tt>0</tt></i> causes
+ libxml2 to not perform entity substitution.)
+ </p>
+<p>Second, set <tt>xmlLoadExtDtdDefaultValue</tt> equal to
+ <i><tt>1</tt></i>. This tells libxml
+ to load external entity subsets. If you do not do this and your
+ input file includes entities through external subsets, you will get
+ errors.</p>
+</div>
+<div class="sect2">
+<a name="parsethestylesheet"></a><div class="titlepage"><div><h3 class="title">
+<a name="parsethestylesheet"></a>Parse the Stylesheet</h3></div></div>
+<p>Parsing the stylesheet takes a single function call, which takes a
+ variable of type xmlChar:
+ <pre class="programlisting">
+ <tt>cur</tt> = xsltParseStylesheetFile((const xmlChar *)argv[i]);
+ </pre>
+ In this case, I cast the stylesheet file name, passed in as a
+ command line argument, to <i>xmlChar</i>. The return value
+ is of type <i>xsltStylesheetPtr</i>, a struct in memory
+ that contains the stylesheet tree and other information about the
+ stylesheet. It can be manipulated directly, but for this example you
+ will not need to.
+ </p>
+</div>
+<div class="sect2">
+<a name="parseinputfile"></a><div class="titlepage"><div><h3 class="title">
+<a name="parseinputfile"></a>Parse the Input File</h3></div></div>
+<p>Parsing the input file takes a single function call:
+ <pre class="programlisting">
+doc = xmlParseFile(argv[i]);
+ </pre>
+ It returns an <i>xmlDocPtr</i>, a struct in memory that
+ contains the document tree. It can be manipulated directly, but for this
+ example you will not need to.
+ </p>
+</div>
+<div class="sect2">
+<a name="applyingstylesheet"></a><div class="titlepage"><div><h3 class="title">
+<a name="applyingstylesheet"></a>Applying the Stylesheet</h3></div></div>
+<p>Now that you have trees representing the document and the stylesheet
+ in memory, apply the stylesheet to the document. The
+ function that does this is <tt>xsltApplyStylesheet</tt>:
+ <pre class="programlisting">
+res = xsltApplyStylesheet(cur, doc, params);
+ </pre>
+ The function takes an xsltStylesheetPtr and an
+ xmlDocPtr, the values returned by the previous two functions. The third
+ variable, <tt>params</tt> can be used to pass
+ XSLT parameters to the stylesheet. It is a
+ NULL-terminated array of name/value pairs of const char's.
+ </p>
+</div>
+<div class="sect2">
+<a name="saveresult"></a><div class="titlepage"><div><h3 class="title">
+<a name="saveresult"></a>Saving the result</h3></div></div>
+<p>libxslt includes a family of functions to use in
+ saving the resulting output. For this example,
+ <tt>xsltSaveResultToFile</tt> is used, and the results are
+ saved to stdout:
+
+ <pre class="programlisting">
+xsltSaveResultToFile(stdout, res, cur);
+ </pre>
+
+ <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
+<h3 class="title">
+<a name="id2708587"></a>Note</h3>
+<p>libxml also contains output
+ functions, such as <tt>xmlSaveFile</tt>, which can be
+ used here. However, output-related information contained in the
+ stylesheet, such as a declaration of the encoding to be used, will
+ be lost if one of the libxslt save
+ functions is not used.</p>
+</div>
+ </p>
+</div>
+<div class="sect2">
+<a name="parameters"></a><div class="titlepage"><div><h3 class="title">
+<a name="parameters"></a>Parameters</h3></div></div>
+<p>
+ In XSLT, parameters may be used as a way to pass
+ additional information to a
+ stylesheet. libxslt accepts
+ XSLT parameters as one of the values passed to
+ <tt>xsltApplyStylesheet</tt>.
+ </p>
+<p>
+ In the tutorial example and in xsltproc,
+ on which the tutorial example is based, parameters to be passed take the
+ form of key-value pairs. The program collects them from command line
+ arguments, inserting them in the array <tt>params</tt>, then
+ passes them to the function. The final element in the array is set to
+ <i><tt>NULL</tt></i>.
+
+ <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
+<h3 class="title">
+<a name="id2708668"></a>Note</h3>
+<p>
+ If a parameter being passed is a string rather than an
+ XSLT node, it must be escaped. For the tutorial
+ program, that would be done as follows:
+ <b>tutorial]$ ./libxslt_tutorial --param rootid &quot;'asect1'&quot;
+ stylesheet.xsl filename.xml</b>
+ </p>
+</div>
+ </p>
+</div>
+<div class="sect2">
+<a name="cleanup"></a><div class="titlepage"><div><h3 class="title">
+<a name="cleanup"></a>Cleanup</h3></div></div>
+<p>After you are finished, libxslt and
+ libxml provide functions for deallocating
+ memory.
+ </p>
+<p>
+
+ <pre class="programlisting">
+ xsltFreeStylesheet(cur);<a name="cleanupstylesheet"></a><img src="../images/callouts/1.png" alt="1" border="0">
+ xmlFreeDoc(res);<a name="cleanupresults"></a><img src="../images/callouts/2.png" alt="2" border="0">
+ xmlFreeDoc(doc);<a name="cleanupdoc"></a><img src="../images/callouts/3.png" alt="3" border="0">
+ xsltCleanupGlobals();<a name="cleanupglobals"></a><img src="../images/callouts/4.png" alt="4" border="0">
+ xmlCleanupParser();<a name="cleanupparser"></a><img src="../images/callouts/5.png" alt="5" border="0">
+
+ </pre>
+
+ <div class="calloutlist">
+<a name="id2708994"></a><table border="0" summary="Callout list">
+<tr>
+<td width="5%" valign="top" align="left">
+<a name="id2709000"></a><a href="#cleanupstylesheet"><img src="../images/callouts/1.png" alt="1" border="0"></a> </td>
+<td valign="top" align="left"><p>Free the memory used by your stylesheet.</p></td>
+</tr>
+<tr>
+<td width="5%" valign="top" align="left">
+<a name="id2709117"></a><a href="#cleanupresults"><img src="../images/callouts/2.png" alt="2" border="0"></a> </td>
+<td valign="top" align="left"><p>Free the memory used by the results document.</p></td>
+</tr>
+<tr>
+<td width="5%" valign="top" align="left">
+<a name="id2709136"></a><a href="#cleanupdoc"><img src="../images/callouts/3.png" alt="3" border="0"></a> </td>
+<td valign="top" align="left"><p>Free the memory used by your original document.</p></td>
+</tr>
+<tr>
+<td width="5%" valign="top" align="left">
+<a name="id2709155"></a><a href="#cleanupglobals"><img src="../images/callouts/4.png" alt="4" border="0"></a> </td>
+<td valign="top" align="left"><p>Free memory used by libxslt global
+ variables</p></td>
+</tr>
+<tr>
+<td width="5%" valign="top" align="left">
+<a name="id2709176"></a><a href="#cleanupparser"><img src="../images/callouts/5.png" alt="5" border="0"></a> </td>
+<td valign="top" align="left"><p>Free memory used by the XML parser</p></td>
+</tr>
+</table>
+</div>
+ </p>
+</div>
+</div>
+<div class="appendix">
+<h2 class="title" style="clear: both">
+<a name="thecode"></a>A. The Code</h2>
+<p>
+<tt>libxslt_tutorial.c</tt>
+ <pre class="programlisting">
+/*
+ * libxslt_tutorial.c: demo program for the XSL Transformation 1.0 engine
+ *
+ * based on xsltproc.c, by Daniel.Veillard@imag.fr
+ * by John Fleck
+ *
+ * See the file Copyright for the status of this software.
+ *
+ */
+
+#include &lt;string.h&gt;
+#include &lt;libxml/xmlmemory.h&gt;
+#include &lt;libxml/debugXML.h&gt;
+#include &lt;libxml/HTMLtree.h&gt;
+#include &lt;libxml/xmlIO.h&gt;
+#include &lt;libxml/DOCBparser.h&gt;
+#include &lt;libxml/xinclude.h&gt;
+#include &lt;libxml/catalog.h&gt;
+#include &lt;libxslt/xslt.h&gt;
+#include &lt;libxslt/xsltInternals.h&gt;
+#include &lt;libxslt/transform.h&gt;
+#include &lt;libxslt/xsltutils.h&gt;
+
+
+
+extern int xmlLoadExtDtdDefaultValue;
+
+static void usage(const char *name) {
+ printf(&quot;Usage: %s [options] stylesheet file [file ...]\n&quot;, name);
+ printf(&quot; --param name value : pass a (parameter,value) pair\n&quot;);
+
+}
+
+int
+main(int argc, char **argv) {
+ int i;
+ const char *params[16 + 1];
+ int nbparams = 0;
+ xsltStylesheetPtr cur = NULL;
+ xmlDocPtr doc, res;
+
+ if (argc &lt;= 1) {
+ usage(argv[0]);
+ return(1);
+ }
+
+
+ for (i = 1; i &lt; argc; i++) {
+ if (argv[i][0] != '-')
+ break;
+ if ((!strcmp(argv[i], &quot;-param&quot;)) ||
+ (!strcmp(argv[i], &quot;--param&quot;))) {
+ i++;
+ params[nbparams++] = argv[i++];
+ params[nbparams++] = argv[i];
+ if (nbparams &gt;= 16) {
+ fprintf(stderr, &quot;too many params\n&quot;);
+ return (1);
+ }
+ } else {
+ fprintf(stderr, &quot;Unknown option %s\n&quot;, argv[i]);
+ usage(argv[0]);
+ return (1);
+ }
+ }
+
+ params[nbparams] = NULL;
+ xmlSubstituteEntitiesDefault(1);
+ xmlLoadExtDtdDefaultValue = 1;
+ cur = xsltParseStylesheetFile((const xmlChar *)argv[i]);
+ i++;
+ doc = xmlParseFile(argv[i]);
+ res = xsltApplyStylesheet(cur, doc, params);
+ xsltSaveResultToFile(stdout, res, cur);
+
+ xsltFreeStylesheet(cur);
+ xmlFreeDoc(res);
+ xmlFreeDoc(doc);
+
+ xsltCleanupGlobals();
+ xmlCleanupParser();
+ return(0);
+
+}
+
+</pre>
+
+ </p>
+</div>
+</div></body>
+</html>
diff --git a/libxslt/doc/tutorial/libxslttutorial.xml b/libxslt/doc/tutorial/libxslttutorial.xml
new file mode 100644
index 0000000..9ef3a4d
--- /dev/null
+++ b/libxslt/doc/tutorial/libxslttutorial.xml
@@ -0,0 +1,288 @@
+<?xml version="1.0"?>
+<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
+<!ENTITY CODE SYSTEM "libxslt_tutorial.c">
+]>
+<article>
+ <articleinfo>
+ <title>libxslt Tutorial</title>
+ <copyright>
+ <year>2001</year>
+ <holder>John Fleck</holder>
+ </copyright>
+ <legalnotice id="legalnotice">
+
+ <para>Permission is granted to copy, distribute and/or modify this
+ document under the terms of the <citetitle>GNU Free Documentation
+ License</citetitle>, Version 1.1 or any later version
+ published by the Free Software Foundation with no Invariant
+ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of
+ the license can be found <ulink type="http"
+ url="http://www.gnu.org/copyleft/fdl.html">here</ulink>.</para>
+
+ </legalnotice>
+ <author>
+ <firstname>John</firstname>
+ <surname>Fleck</surname>
+ </author>
+ <releaseinfo>
+ This is version 0.4 of the libxslt Tutorial
+ </releaseinfo>
+ </articleinfo>
+ <abstract>
+ <para>A tutorial on building a simple application using the
+ <application>libxslt</application> library to perform
+ <acronym>XSLT</acronym> transformations to convert an
+ <acronym>XML</acronym> file into <acronym>HTML</acronym>.</para>
+ </abstract>
+ <sect1 id="introduction">
+ <title>Introduction</title>
+
+ <para>The Extensible Markup Language (<acronym>XML</acronym>) is a World
+ Wide Web Consortium standard for the exchange of structured data in text
+ form. Its popularity stems from its universality. Any computer can
+ read a text file. With the proper tools, any computer can read any other
+ computer's <acronym>XML</acronym> files.
+ </para>
+
+ <para>One of the most important of those tools is <acronym>XSLT</acronym>:
+ Extensible Stylesheet Language Transformations. <acronym>XSLT</acronym>
+ is a declarative language that allows you to
+ translate your <acronym>XML</acronym> into arbitrary text output
+ using a stylesheet. <application>libxslt</application> provides the
+ functions to perform the transformation.
+ </para>
+
+ <para><application>libxslt</application> is a free C language library
+ written by Daniel Veillard for the <acronym>GNOME</acronym> project
+ allowing you to write programs that perform <acronym>XSLT</acronym>
+ transformations.
+
+ <note>
+ <para>
+ While <application>libxslt</application> was written
+ under the auspices of the <acronym>GNOME</acronym> project, it does not
+ depend on any <acronym>GNOME</acronym> libraries. None are used in the
+ example in this tutorial.
+ </para>
+ </note>
+
+ </para>
+
+ <para>This tutorial illustrates a simple program that reads an
+ <acronym>XML</acronym> file, applies a stylesheet and saves the resulting
+ output. This is not a program you would want to create
+ yourself. <application>xsltproc</application>, which is included with the
+ <application>libxslt</application> package, does the same thing and is
+ more robust and full-featured. The program written for this tutorial is a
+ stripped-down version of <application>xsltproc</application> designed to
+ illustrate the functionality of <application>libxslt</application>.
+ </para>
+ <para>The full code for <application>xsltproc</application> is in
+ <filename>xsltproc.c</filename> in the <application>libxslt</application>
+ distribution. It also is available <ulink
+ url="http://cvs.gnome.org/lxr/source/libxslt/libxslt/xsltproc.c">on the
+ web</ulink>.
+ </para>
+
+ <para>References:
+ <itemizedlist>
+ <listitem>
+ <para><ulink url="http://www.w3.org/XML/">W3C <acronym>XML</acronym> page</ulink></para>
+ </listitem>
+ <listitem>
+ <para><ulink url="http://www.w3.org/Style/XSL/">W3C
+ <acronym>XSL</acronym> page.</ulink></para>
+ </listitem>
+ <listitem>
+ <para><ulink url="http://xmlsoft.org/XSLT/">libxslt</ulink></para>
+ </listitem>
+ </itemizedlist>
+
+ </para>
+ </sect1>
+
+ <sect1 id="functions">
+ <title>Primary Functions</title>
+ <para>To transform an <acronym>XML</acronym> file, you must perform three
+ functions:
+ <orderedlist>
+ <listitem>
+ <para>parse the input file</para>
+ </listitem>
+ <listitem>
+ <para>parse the stylesheet</para>
+ </listitem>
+ <listitem>
+ <para>apply the stylesheet</para>
+ </listitem>
+ </orderedlist>
+ </para>
+ <sect2 id="preparing">
+ <title>Preparing to Parse</title>
+ <para>Before you can begin parsing input files or stylesheets, there are
+ several steps you need to take to set up entity handling. These steps are
+ not unique to <application>libxslt</application>. Any
+ <application>libxml2</application> program that parses
+ <acronym>XML</acronym> files would need to take similar steps.
+ </para>
+ <para>First, you need set up some <application>libxml</application>
+ housekeeping. Pass the integer value <parameter>1</parameter> to the
+ <function>xmlSubstituteEntitiesDefault</function> function, which tells
+ the <application>libxml2</application> parser to substitute entities as
+ it parses your file. (Passing <parameter>0</parameter> causes
+ <application>libxml2</application> to not perform entity substitution.)
+ </para>
+
+ <para>Second, set <varname>xmlLoadExtDtdDefaultValue</varname> equal to
+ <parameter>1</parameter>. This tells <application>libxml</application>
+ to load external entity subsets. If you do not do this and your
+ input file includes entities through external subsets, you will get
+ errors.</para>
+ </sect2>
+ <sect2 id="parsethestylesheet">
+ <title>Parse the Stylesheet</title>
+ <para>Parsing the stylesheet takes a single function call, which takes a
+ variable of type <type>xmlChar</type>:
+ <programlisting>
+ <varname>cur</varname> = xsltParseStylesheetFile((const xmlChar *)argv[i]);
+ </programlisting>
+ In this case, I cast the stylesheet file name, passed in as a
+ command line argument, to <emphasis>xmlChar</emphasis>. The return value
+ is of type <emphasis>xsltStylesheetPtr</emphasis>, a struct in memory
+ that contains the stylesheet tree and other information about the
+ stylesheet. It can be manipulated directly, but for this example you
+ will not need to.
+ </para>
+ </sect2>
+
+ <sect2 id="parseinputfile">
+ <title>Parse the Input File</title>
+ <para>Parsing the input file takes a single function call:
+ <programlisting>
+doc = xmlParseFile(argv[i]);
+ </programlisting>
+ It returns an <emphasis>xmlDocPtr</emphasis>, a struct in memory that
+ contains the document tree. It can be manipulated directly, but for this
+ example you will not need to.
+ </para>
+ </sect2>
+
+ <sect2 id="applyingstylesheet">
+ <title>Applying the Stylesheet</title>
+ <para>Now that you have trees representing the document and the stylesheet
+ in memory, apply the stylesheet to the document. The
+ function that does this is <function>xsltApplyStylesheet</function>:
+ <programlisting>
+res = xsltApplyStylesheet(cur, doc, params);
+ </programlisting>
+ The function takes an xsltStylesheetPtr and an
+ xmlDocPtr, the values returned by the previous two functions. The third
+ variable, <varname>params</varname> can be used to pass
+ <acronym>XSLT</acronym> parameters to the stylesheet. It is a
+ NULL-terminated array of name/value pairs of const char's.
+ </para>
+ </sect2>
+
+ <sect2 id="saveresult">
+ <title>Saving the result</title>
+ <para><application>libxslt</application> includes a family of functions to use in
+ saving the resulting output. For this example,
+ <function>xsltSaveResultToFile</function> is used, and the results are
+ saved to stdout:
+
+ <programlisting>
+xsltSaveResultToFile(stdout, res, cur);
+ </programlisting>
+
+ <note>
+ <para><application>libxml</application> also contains output
+ functions, such as <function>xmlSaveFile</function>, which can be
+ used here. However, output-related information contained in the
+ stylesheet, such as a declaration of the encoding to be used, will
+ be lost if one of the <application>libxslt</application> save
+ functions is not used.</para>
+ </note>
+ </para>
+ </sect2>
+
+ <sect2 id="parameters">
+ <title>Parameters</title>
+ <para>
+ In <acronym>XSLT</acronym>, parameters may be used as a way to pass
+ additional information to a
+ stylesheet. <application>libxslt</application> accepts
+ <acronym>XSLT</acronym> parameters as one of the values passed to
+ <function>xsltApplyStylesheet</function>.
+ </para>
+
+ <para>
+ In the tutorial example and in <application>xsltproc</application>,
+ on which the tutorial example is based, parameters to be passed take the
+ form of key-value pairs. The program collects them from command line
+ arguments, inserting them in the array <varname>params</varname>, then
+ passes them to the function. The final element in the array is set to
+ <parameter>NULL</parameter>.
+
+ <note>
+ <para>
+ If a parameter being passed is a string rather than an
+ <acronym>XSLT</acronym> node, it must be escaped. For the tutorial
+ program, that would be done as follows:
+ <command>tutorial]$ ./libxslt_tutorial --param rootid "'asect1'"
+ stylesheet.xsl filename.xml</command>
+ </para>
+ </note>
+ </para>
+
+ </sect2>
+
+ <sect2 id="cleanup">
+ <title>Cleanup</title>
+ <para>After you are finished, <application>libxslt</application> and
+ <application>libxml</application> provide functions for deallocating
+ memory.
+ </para>
+
+ <para>
+
+ <programlisting>
+ xsltFreeStylesheet(cur);<co id="cleanupstylesheet" />
+ xmlFreeDoc(res);<co id="cleanupresults" />
+ xmlFreeDoc(doc);<co id="cleanupdoc" />
+ xsltCleanupGlobals();<co id="cleanupglobals" />
+ xmlCleanupParser();<co id="cleanupparser" />
+
+ </programlisting>
+
+ <calloutlist>
+ <callout arearefs="cleanupstylesheet">
+ <para>Free the memory used by your stylesheet.</para>
+ </callout>
+ <callout arearefs="cleanupresults">
+ <para>Free the memory used by the results document.</para>
+ </callout>
+ <callout arearefs="cleanupdoc">
+ <para>Free the memory used by your original document.</para>
+ </callout>
+ <callout arearefs="cleanupglobals">
+ <para>Free memory used by <application>libxslt</application> global
+ variables</para>
+ </callout>
+ <callout arearefs="cleanupparser">
+ <para>Free memory used by the <acronym>XML</acronym> parser</para>
+ </callout>
+ </calloutlist>
+ </para>
+ </sect2>
+
+ </sect1>
+
+ <appendix id="thecode">
+ <title>The Code</title>
+ <para><filename>libxslt_tutorial.c</filename>
+ <programlisting>&CODE;</programlisting>
+
+ </para>
+ </appendix>
+</article>
diff --git a/libxslt/doc/tutorial2/libxslt_pipes.c b/libxslt/doc/tutorial2/libxslt_pipes.c
new file mode 100644
index 0000000..44056c1
--- /dev/null
+++ b/libxslt/doc/tutorial2/libxslt_pipes.c
@@ -0,0 +1,127 @@
+/*
+ * libxslt_pipes.c: a program for performing a series of XSLT
+ * transformations
+ *
+ * Writen by Panos Louridas, based on libxslt_tutorial.c by John Fleck.
+ *
+ * See Copyright for the status of this software.
+ *
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+#include <libxslt/transform.h>
+#include <libxslt/xsltutils.h>
+
+extern int xmlLoadExtDtdDefaultValue;
+
+static void usage(const char *name) {
+ printf("Usage: %s [options] stylesheet [stylesheet ...] file [file ...]\n",
+ name);
+ printf(" --out file: send output to file\n");
+ printf(" --param name value: pass a (parameter,value) pair\n");
+}
+
+int main(int argc, char **argv) {
+ int arg_indx;
+ const char *params[16 + 1];
+ int params_indx = 0;
+ int stylesheet_indx = 0;
+ int file_indx = 0;
+ int i, j, k;
+ FILE *output_file = stdout;
+ xsltStylesheetPtr *stylesheets =
+ (xsltStylesheetPtr *) calloc(argc, sizeof(xsltStylesheetPtr));
+ xmlDocPtr *files = (xmlDocPtr *) calloc(argc, sizeof(xmlDocPtr));
+ xmlDocPtr doc, res;
+ int return_value = 0;
+
+ if (argc <= 1) {
+ usage(argv[0]);
+ return_value = 1;
+ goto finish;
+ }
+
+ /* Collect arguments */
+ for (arg_indx = 1; arg_indx < argc; arg_indx++) {
+ if (argv[arg_indx][0] != '-')
+ break;
+ if ((!strcmp(argv[arg_indx], "-param"))
+ || (!strcmp(argv[arg_indx], "--param"))) {
+ arg_indx++;
+ params[params_indx++] = argv[arg_indx++];
+ params[params_indx++] = argv[arg_indx];
+ if (params_indx >= 16) {
+ fprintf(stderr, "too many params\n");
+ return_value = 1;
+ goto finish;
+ }
+ } else if ((!strcmp(argv[arg_indx], "-o"))
+ || (!strcmp(argv[arg_indx], "--out"))) {
+ arg_indx++;
+ output_file = fopen(argv[arg_indx], "w");
+ } else {
+ fprintf(stderr, "Unknown option %s\n", argv[arg_indx]);
+ usage(argv[0]);
+ return_value = 1;
+ goto finish;
+ }
+ }
+ params[params_indx] = 0;
+
+ /* Collect and parse stylesheets and files to be transformed */
+ for (; arg_indx < argc; arg_indx++) {
+ char *argument =
+ (char *) malloc(sizeof(char) * (strlen(argv[arg_indx]) + 1));
+ strcpy(argument, argv[arg_indx]);
+ if (strtok(argument, ".")) {
+ char *suffix = strtok(0, ".");
+ if (suffix && !strcmp(suffix, "xsl")) {
+ stylesheets[stylesheet_indx++] =
+ xsltParseStylesheetFile((const xmlChar *)argv[arg_indx]);;
+ } else {
+ files[file_indx++] = xmlParseFile(argv[arg_indx]);
+ }
+ } else {
+ files[file_indx++] = xmlParseFile(argv[arg_indx]);
+ }
+ free(argument);
+ }
+
+ xmlSubstituteEntitiesDefault(1);
+ xmlLoadExtDtdDefaultValue = 1;
+
+ /* Process files */
+ for (i = 0; files[i]; i++) {
+ doc = files[i];
+ res = doc;
+ for (j = 0; stylesheets[j]; j++) {
+ res = xsltApplyStylesheet(stylesheets[j], doc, params);
+ xmlFreeDoc(doc);
+ doc = res;
+ }
+
+ if (stylesheets[0]) {
+ xsltSaveResultToFile(output_file, res, stylesheets[j-1]);
+ } else {
+ xmlDocDump(output_file, res);
+ }
+ xmlFreeDoc(res);
+ }
+
+ fclose(output_file);
+
+ for (k = 0; stylesheets[k]; k++) {
+ xsltFreeStylesheet(stylesheets[k]);
+ }
+
+ xsltCleanupGlobals();
+ xmlCleanupParser();
+
+ finish:
+ free(stylesheets);
+ free(files);
+ return(return_value);
+}
diff --git a/libxslt/doc/tutorial2/libxslt_pipes.html b/libxslt/doc/tutorial2/libxslt_pipes.html
new file mode 100644
index 0000000..2a0110a
--- /dev/null
+++ b/libxslt/doc/tutorial2/libxslt_pipes.html
@@ -0,0 +1,612 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>libxslt: An Extended Tutorial</title><meta name="generator" content="DocBook XSL Stylesheets V1.66.0"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="article" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="libxslt"></a>libxslt: An Extended Tutorial</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Panos</span> <span class="surname">Louridas</span></h3></div></div><div><p class="copyright">Copyright © 2004 Panagiotis Louridas</p></div><div><div class="legalnotice"><a name="id2839296"></a><p>Permission is hereby granted, free of charge, to
+ any person obtaining a copy of this software and associated
+ documentation files (the "Software"), to deal in the Software
+ without restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software
+ is furnished to do so, subject to the following conditions:
+ </p><p>The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ </p><p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="#id2771767">Introduction</a></span></dt><dt><span class="sect1"><a href="#id2771862">Setting the Scene</a></span></dt><dt><span class="sect1"><a href="#id2799225">Program Start</a></span></dt><dt><span class="sect1"><a href="#id2799358">Arguments Collection</a></span></dt><dt><span class="sect1"><a href="#id2799396">Parsing</a></span></dt><dt><span class="sect1"><a href="#id2771038">File Processing</a></span></dt><dt><span class="sect1"><a href="#id2771153">*NIX Compiling and Linking</a></span></dt><dt><span class="sect1"><a href="#windows-build">MS-Windows Compiling and
+Linking</a></span></dt><dd><dl><dt><span class="sect2"><a href="#windows-ports-build">Building the Ports in
+MS-Windows</a></span></dt></dl></dd><dt><span class="sect1"><a href="#id2839739">zlib, iconv and All That</a></span></dt><dt><span class="sect1"><a href="#id2839841">The Complete Program</a></span></dt></dl></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2771767"></a>Introduction</h2></div></div></div><p>The Extensible Stylesheet Language Transformations (XSLT)
+specification defines an XML template language for transforming XML
+documents. An XSLT engine reads an XSLT file and an XML document and
+transforms the document accordingly.</p><p>We want to perform a series of XSLT transformations to a series
+of documents. An obvious solution is to use the operating system's
+pipe mechanism and start a series of transformation processes, each
+one taking as input the output of the previous transformation. It
+would be interesting, though, and perhaps more efficient if we could
+do our job within a single process.</p><p>libxslt is a library for doing XSLT transformations. It is built
+on libxml, which is a library for handling XML documents. libxml and
+libxslt are used by the GNOME project. Although developed in the
+*NIX world, both libxml and libxslt have been
+ported to the MS-Windows platform. In principle an application using
+libxslt should be easily portable between the two systems. In
+practice, however, there arise various wrinkles. These do not have
+anything to do with libxml or libxslt per se, but rather with the
+different compilation and linking procedures of each system.</p><p>The presented solution is an extension of <a href="http://xmlsoft.org/XSLT/tutorial/libxslttutorial.html" target="_top">John
+Fleck's libxslt tutorial</a>, but the present tutorial tries to be
+self-contained. It develops a minimal libxslt application
+(libxslt_pipes) that can perform a series of transformations to a
+series of files in a pipe-like manner. An invocation might be:</p><p>
+ <b class="userinput"><tt>
+ libxslt_pipes --out results.xml foo.xsl bar.xsl doc1.xml doc2.xml
+ </tt></b>
+</p><p>The <tt class="filename">foo.xsl</tt> stylesheet will be applied to
+<tt class="filename"> doc1.xml</tt> and the <tt class="filename">bar.xsl</tt>
+stylesheet will be applied to the resulting document; then the two
+stylesheets will be applied in the same sequence to
+<tt class="filename">bar.xsl</tt>. The results are sent to
+<tt class="filename">results.xml</tt> (if no output is specified they are
+sent to standard output).</p><p>The application is compiled in both *NIX
+systems and MS-Windows, where by *NIX systems we
+mean Linux, BSD, and other members of the
+family. The gcc suite is used in the *NIX platform
+and the Microsoft compiler and linker are used in the
+MS-Windows platform.</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2771862"></a>Setting the Scene</h2></div></div></div><p>
+We need to include the necessary libraries:
+
+</p><pre class="programlisting">
+
+ #include &lt;stdio.h&gt;
+ #include &lt;string.h&gt;
+ #include &lt;stdlib.h&gt;
+
+ #include &lt;libxslt/transform.h&gt;
+ #include &lt;libxslt/xsltutils.h&gt;
+
+</pre><p>
+</p><p>The first group of include directives includes general C
+libraries. The libraries we need to make libxslt work are in the
+second group. The <tt class="filename">transform.h</tt> header file
+declares the API that does the bulk of the actual processing. The
+<tt class="filename">xsltutils.h</tt> header file declares the API for some
+generic utility functions of the XSLT engine; among other things,
+saving to a file, which is what we need it for.</p><p>
+If our input files contain entities through external subsets, we need
+to tell libxslt to load them. The global variable
+<tt class="function">xmlLoadExtDtdDefaultValue</tt>, defined in
+<tt class="filename">libxml/globals.h</tt>, is responsible for that. As the
+variable is defined outside our program we must specify external
+linkage:
+ </p><pre class="programlisting">
+ extern int xmlLoadExtDtdDefaultValue;
+ </pre><p>
+</p><p>
+The program is called from the command line. We anticipate that the
+user may not call it the right way, so we define a function for
+describing its usage:
+</p><pre class="programlisting">
+ static void usage(const char *name) {
+ printf("Usage: %s [options] stylesheet [stylesheet ...] file [file ...]\n",
+ name);
+ printf(" --out file: send output to file\n");
+ printf(" --param name value: pass a (parameter,value) pair\n");
+ }
+</pre><p>
+</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2799225"></a>Program Start</h2></div></div></div><p>We need to define a few variables that are used throughout the
+program:
+</p><pre class="programlisting">
+ int main(int argc, char **argv) {
+ int arg_indx;
+ const char *params[16 + 1];
+ int params_indx = 0;
+ int stylesheet_indx = 0;
+ int file_indx = 0;
+ int i, j, k;
+ FILE *output_file = stdout;
+ xsltStylesheetPtr *stylesheets =
+ (xsltStylesheetPtr *) calloc(argc, sizeof(xsltStylesheetPtr));
+ xmlDocPtr *files = (xmlDocPtr *) calloc(argc, sizeof(xmlDocPtr));
+ int return_value = 0;
+</pre><p>
+</p><p>The <tt class="varname">arg_indx</tt> integer is an index used to
+iterate over the program arguments. The <tt class="varname">params</tt>
+string array is used to collect the XSLT parameters. In XSLT,
+additional information may be passed to the processor via
+parameters. The user of the program specifies these in key-value pairs
+in the command line following the <b class="userinput"><tt>--param</tt></b>
+command line argument. We accept up to 8 such key-value pairs, which
+we track with the <tt class="varname">params_indx</tt> integer. libxslt
+expects the parameters array to be null-terminated, so we have to
+allocate one extra place (16 + 1) for it. The
+<tt class="varname">file_indx</tt> is an index to iterate over the files to
+be processed. The <tt class="varname">i</tt>, <tt class="varname">j</tt>,
+<tt class="varname">k</tt> integers are additional indices for iteration
+purposes, and <tt class="varname">return_value</tt> is the value the program
+returns to the operating system. We expect the result of the
+transformation to be the standard output in most cases, but the user
+may wish otherwise via the <tt class="option">--out</tt> command line
+option, so we need to keep track of the situation with the
+<tt class="varname">output_file</tt> file pointer.</p><p>In libxslt, XSLT stylesheets are internally stored in
+<span class="structname">xsltStylesheet</span> structures; similarly, in
+libxml XML documents are stored in <span class="structname">xmlDoc</span>
+structures. <span class="type">xsltStylesheetPtr</span> and <span class="type">xmlDocPtr</span>
+are simply typedefs of pointers to them. The user may specify any
+number of stylesheets that will be applied to the documents one after
+the other. To save time we parse the stylesheets and the documents as
+we read them from the command line and keep the parsed representation
+of them. The parsed results are kept in arrays. These are dynamically
+allocated and sized to the number of arguments; this wastes some
+space, but not much (the size of <span class="type">xmlStyleSheetPtr</span> and
+<span class="type">xmlDocPtr</span> is the size of a pointer) and simplifies code
+later on. The array memory is allocated with
+<tt class="function">calloc</tt> to ensure contents are initialised to
+zero.
+</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2799358"></a>Arguments Collection</h2></div></div></div><p>If the program gets no arguments at all, we print the usage
+description, set the program return value to 1 and exit. Instead of
+returning directly we go to (literally) to the end of the program text
+where some housekeeping takes place.</p><p>
+</p><pre class="programlisting">
+
+ if (argc &lt;= 1) {
+ usage(argv[0]);
+ return_value = 1;
+ goto finish;
+ }
+
+ /* Collect arguments */
+ for (arg_indx = 1; arg_indx &lt; argc; arg_indx++) {
+ if (argv[arg_indx][0] != '-')
+ break;
+ if ((!strcmp(argv[arg_indx], "-param"))
+ || (!strcmp(argv[arg_indx], "--param"))) {
+ arg_indx++;
+ params[params_indx++] = argv[arg_indx++];
+ params[params_indx++] = argv[arg_indx];
+ if (params_indx &gt;= 16) {
+ fprintf(stderr, "too many params\n");
+ return_value = 1;
+ goto finish;
+ }
+ } else if ((!strcmp(argv[arg_indx], "-o"))
+ || (!strcmp(argv[arg_indx], "--out"))) {
+ arg_indx++;
+ output_file = fopen(argv[arg_indx], "w");
+ } else {
+ fprintf(stderr, "Unknown option %s\n", argv[arg_indx]);
+ usage(argv[0]);
+ return_value = 1;
+ goto finish;
+ }
+ }
+ params[params_indx] = 0;
+
+</pre><p>
+</p><p>If the user passes arguments we have to collect them. This is a
+matter of iterating over the program argument list while we encounter
+arguments starting with a dash. The XSLT parameters are put into the
+<tt class="varname">params</tt> array and the <tt class="varname">output_file</tt>
+is set to the user request, if any. After processing all the parameter
+key-value pairs we set the last element of the <tt class="varname">params</tt>
+array to null.
+</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2799396"></a>Parsing</h2></div></div></div><p>The rest of the argument list is taken to be stylesheets and
+files to be transformed. Stylesheets are identified by their suffix,
+which is expected to be xsl (case sensitive). All other files are
+assumed to be XML documents, regardless of suffix.</p><p>
+</p><pre class="programlisting">
+
+ /* Collect and parse stylesheets and files to be transformed */
+ for (; arg_indx &lt; argc; arg_indx++) {
+ char *argument =
+ (char *) malloc(sizeof(char) * (strlen(argv[arg_indx]) + 1));
+ strcpy(argument, argv[arg_indx]);
+ if (strtok(argument, ".")) {
+ char *suffix = strtok(0, ".");
+ if (suffix &amp;&amp; !strcmp(suffix, "xsl")) {
+ stylesheets[stylesheet_indx++] =
+ xsltParseStylesheetFile((const xmlChar *)argv[arg_indx]);;
+ } else {
+ files[file_indx++] = xmlParseFile(argv[arg_indx]);
+ }
+ } else {
+ files[file_indx++] = xmlParseFile(argv[arg_indx]);
+ }
+ free(argument);
+ }
+
+</pre><p>
+</p><p>Stylesheets are parsed using the
+<tt class="function">xsltParseStylesheetFile</tt>
+function. <tt class="function">xsltParseStylesheetFile</tt> takes as
+argument a pointer to an <span class="type">xmlChar</span>, a typedef of an
+unsigned char; in effect, the filename of the stylesheet. The
+resulting <span class="type">xsltStylesheetPtr</span> is placed in the
+<tt class="varname">stylesheets</tt> array. In the same vein, XML files are
+parsed using the <tt class="function">xmlParseFile</tt> function that takes
+as argument the file's name; the resulting <span class="type">xmlDocPtr</span> is
+placed in the <tt class="varname">files</tt> array.
+</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2771038"></a>File Processing</h2></div></div></div><p>All stylesheets are applied to each file one after the
+other. Stylesheets are applied with the
+<tt class="function">xsltApplyStylesheet</tt> function that takes as
+argument the stylesheet to be applied, the file to be transformed and
+any parameters we have collected. The in-memory representation of an
+XML document takes space, which we free using the
+<tt class="function">xmlFreeDoc</tt> function. The file is then saved to the
+specified output.</p><p>
+</p><pre class="programlisting">
+
+ /* Process files */
+ for (i = 0; files[i]; i++) {
+ doc = files[i];
+ res = doc;
+ for (j = 0; stylesheets[j]; j++) {
+ res = xsltApplyStylesheet(stylesheets[j], doc, params);
+ xmlFreeDoc(doc);
+ doc = res;
+ }
+
+ if (stylesheets[0]) {
+ xsltSaveResultToFile(output_file, res, stylesheets[j-1]);
+ } else {
+ xmlDocDump(output_file, res);
+ }
+ xmlFreeDoc(res);
+ }
+
+ fclose(output_file);
+
+ for (k = 0; stylesheets[k]; k++) {
+ xsltFreeStylesheet(stylesheets[k]);
+ }
+
+ xsltCleanupGlobals();
+ xmlCleanupParser();
+
+ finish:
+ free(stylesheets);
+ free(files);
+ return(return_value);
+
+</pre><p>
+</p><p>To output an XML document we have in memory we use the
+<tt class="function">xlstSaveResultToFile</tt> function, where we specify
+the destination, the document and the stylesheet that has been applied
+to it. The stylesheet is required so that output-related information
+contained in the stylesheet, such as the encoding to be used, is used
+in output. If no transformation has taken place, which will happen
+when the user specifies no stylesheets at all in the command line, we
+use the <tt class="function">xmlDocDump</tt> libxml function that saves the
+source document to the file without further ado.</p><p>As parsed stylesheets take up space in memory, we take care to
+free that memory after use with a call to
+<tt class="function">xmlFreeStyleSheet</tt>. When all work is done, we
+clean up all global variables used by the XSLT library using
+<tt class="function">xsltCleanupGlobals</tt>. Likewise, all global memory
+allocated for the XML parser is reclaimed by a call to
+<tt class="function">xmlCleanupParser</tt>. Before returning we deallocate
+the memory allocated for the holding the pointers to the XML documents
+and stylesheets.</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2771153"></a>*NIX Compiling and Linking</h2></div></div></div><p>Compiling and linking in a *NIX environment
+is easy, as the required libraries are almost certain to be already in
+place (remember that libxml and libxslt are used by the GNOME project,
+so they are present in most installations). The program can be
+dynamically linked so that its footprint is minimized, or statically
+linked, so that it stands by itself, carrying all required code.</p><p>For dynamic linking the following one liner will do:</p><p>
+<b class="userinput"><tt>gcc -o libxslt_pipes -Wall -I/usr/include/libxml2 -lxslt
+-lxml2 -L/usr/lib libxslt_pipes.c</tt></b>
+</p><p>We assume that the necessary header files are in <tt class="filename">/usr/include/libxml2</tt> and that the
+required libraries (<tt class="filename">libxslt.so</tt>,
+<tt class="filename">libxml2.so</tt>) are in <tt class="filename">/usr/lib</tt>.</p><p>In general, a program may need to link to additional libraries,
+depending on the processing it actually performs. A good way to start
+is to use the <span><b class="command">xslt-config</b></span> script. The
+<tt class="option">--help</tt> option displays usage
+information. Running</p><p>
+ <b class="userinput"><tt>
+ xslt-config --cflags
+ </tt></b>
+</p><p>we get compile flags, while running</p><p>
+ <b class="userinput"><tt>
+ xslt-config --libs
+ </tt></b>
+</p><p>we get the library settings for the linker.</p><p>For static linking we must list more libraries than we did for
+dynamic linking, as the libraries on which the libxsl and libxslt
+libraries depend are also needed. Using <span><b class="command">xslt-config</b></span>
+on a particular installation we create the following one-liner:</p><p>
+<b class="userinput"><tt>
+gcc -o libxslt_pipes -Wall -I/usr/include/libxml2 libxslt_pipes.c
+-static -L/usr/lib -lxslt -lxml2 -lz -lpthread -lm
+</tt></b>
+</p><p>If we get warnings to the effect that some function in
+statically linked applications requires at runtime the shared
+libraries used from the glibc version used for linking, that means
+that the binary is not completely static. Although we statically
+linked against the GNU C runtime library glibc, glibc uses external
+libraries to perform some of its functions. Same version libraries
+must be present on the system we want the application to run. One way
+to avoid this it to use an alternative C runtime, for example <a href="http://www.uclibc.org" target="_top">uClibc</a>, which requires obtaining
+and building a uClibc toolchain first (if the reason for trying to get
+a statically linked version of the program is to embed it somewhere,
+using uClibc might be a good idea anyway).
+</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="windows-build"></a>MS-Windows Compiling and
+Linking</h2></div></div></div><p>Compiling and linking in MS-Windows requires
+some attention. First, the MS-Windows ports must be
+downloaded and installed in the programming workstation. The ports are
+available in <a href="http://www.zlatkovic.com/libxml.en.html" target="_top">Igor
+Zlatkovi&#263;'s site</a>. We need the ports for iconv, zlib, libxml,
+and libxslt. In contrast to *NIX environments, we
+cannot assume that the libraries needed will be present in other
+computers where the program will be used. One solution is to
+distribute the program along with the necessary dynamic
+libraries. Another solution is to statically link the program so that
+only a single executable file will have to be distributed.</p><p>We assume that we have decompressed the downloaded ports and
+have placed the required contents of their <tt class="filename">include</tt> directories in an <tt class="filename">include</tt> directory in our file system. The
+required contents include everything apart from the <tt class="filename">libexslt</tt> directory of the libxslt port,
+as we are not using EXLST (an initiative to provide extensions to
+XSLT) in this project. In order to compile the program we have to make
+sure that all necessary header files are included. When using the
+Microsoft compiler this translates to adding the required
+<tt class="option">/I</tt> switches in the command line. If using a Visual
+Studio product the same effect is attained by specifying additional
+include directories in the compilation options. In the end, if the
+headers have been copied in <tt class="filename">C:\include</tt> the command line must contain
+<tt class="option">/I"C:\include" /I"C:\include\libslt"
+/I"C:\include\libxml"</tt>.</p><p>This being a C program, it needs to be compiled against an
+implementation of the C libraries. Microsoft provides various
+implementations. The ports, however, have been compiled against the
+<tt class="filename">msvcrt.dll</tt> implementation, so it is wise to use
+the same runtime in our project, lest we wish to come against
+unexpected runtime crashes. The <tt class="filename">msvcrt.dll</tt> is a
+multi-threaded implementation and is specified by giving
+<tt class="option">/MD</tt> as a compiler option. Unfortunately, the
+correspondence between the <tt class="option">/MD</tt> switch and
+<tt class="filename">msvcrt.dll</tt> breaks after version 6 of the
+Microsoft compiler. In version 7 and later (i.e., Visual Studio .NET),
+<tt class="option">/MD</tt> links against a different DLL; in version 7.1
+this is <tt class="filename">msvcrt71.dll</tt>. The end result of this bit
+of esoterica is that if you try to dynamically link your application
+with a compiler whose version is greater than 6, your program is
+likely to crash unexpectedly. Alternatively, you may wish to compile
+all iconv, zlib, libxml and libxslt yourself, using the new runtime
+library. This is not a tall order, and some details are given
+<a href="#windows-ports-build" title="Building the Ports in
+MS-Windows">below</a>.</p><p>There are three kinds of libraries in MS-Windows. Dynamically
+Linked Libraries (DLLs), like <tt class="filename">msvcrt.dll</tt> we met
+above, are used for dynamic linking; an application links to them at
+runtime, so the application does not include the code contained in
+them. Static libraries are used for static linking; an application
+adds the libraries' code to its own code at link time. Import
+libraries are used when building an application that uses DLLs. For
+the application to be built, the linker must somehow find the
+definitions of the functions that will be provided in runtime by the
+DLLs, otherwise it will complain about unresolved references. Import
+libraries contain function stubs that, for each DLL function we want
+to call, know where to look for it in the DLL. In essence, in order to
+use a DLL we must link against its corresponding import library. DLLs
+have a <tt class="filename">.dll</tt> suffix; static and import libraries
+both have a <tt class="filename">.lib</tt> suffix. In the MS-Windows ports
+of libxml and libxslt static libraries are distinguished by their name
+ending in <tt class="filename">_a.lib</tt>, while in the zlib port the
+import library is <tt class="filename">zdll.lib</tt> and the static library
+is <tt class="filename">zlib.lib</tt>. In what follows we assume we have a
+<tt class="filename">lib</tt> directory in our filesystem
+where we place the libraries we need for linking.</p><p>If we want to link dynamically we must make sure the <tt class="filename">lib</tt> directory contains
+<tt class="filename">iconv.lib</tt>, <tt class="filename">libxslt.lib</tt>,
+<tt class="filename">libxml2.lib</tt>, and
+<tt class="filename">zdll.lib</tt>. When using the Microsoft linker this
+translates to adding the required <tt class="option">/LIBPATH</tt>
+switch and the necessary libraries in the command line. In Visual
+Studio we must specify an additional library directory for <tt class="filename">lib</tt> and put the necessary libraries in
+the additional dependencies. In the end, the command line must include
+<tt class="option">/LIBPATH:"C:\lib" "lib\iconv.lib" "lib\libxslt.lib"
+"lib\libxml2.lib" "lib\zdll.lib"</tt>, provided the libraries'
+directory is <tt class="filename">C:\lib</tt>. In order
+for the resulting executable to run, the ports DLLs must be present;
+one way is to place all DLLs contained in the ports in the home
+directory of our application, and make sure they are distributed
+together.</p><p>If we want to link statically we must make sure the <tt class="filename">lib</tt> directory contains
+<tt class="filename">iconv_a.lib</tt>, <tt class="filename">libxslt_a.lib</tt>,
+<tt class="filename">libxml2_a.lib</tt>, and
+<tt class="filename">zlib.lib</tt>. Adding <tt class="filename">lib</tt> as a library directory and putting
+the necessary libraries in the additional dependencies, we get a
+command line that should include <tt class="option">/LIBPATH:"C:\lib"
+"lib\iconv_a.lib" "lib\libxslt_a.lib" "lib\libxml2_a.lib"
+"lib\zlib.lib"</tt>. The resulting executable is much bigger
+than if we linked dynamically; it is, however, self-contained and can
+be distributed more easily, in theory at least. In practice, however,
+the executable is not completely static. We saw that the ports are
+compiled against <tt class="filename">msvcrt.dll</tt>, so the program does
+require that DLL at runtime. Moreover, since when using a version of
+Microsoft developer tools with a version number greater than 6, we are
+no longer using <tt class="filename">msvcrt.dll</tt>, but another runtime
+like <tt class="filename">msvcrt71.dll</tt>, and we then need that DLL. In
+contrast to <tt class="filename">msvcrt.dll</tt> it may not be present on
+the target computer, so we may have to copy it along.</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="windows-ports-build"></a>Building the Ports in
+MS-Windows</h3></div></div></div><p>The source code of the ports is readily available on the web,
+one has to check the ports sites. Each port can be built without
+problems in an MS-Windows environment using Microsoft development
+tools. The necessary command line tools (compiler, linker,
+<span><b class="command">nmake</b></span>) must be available. This means running a
+batch file called <span><b class="command">vcvars32.bat</b></span> that comes with
+Visual Studio (its exact location in the directory tree may vary
+depending on the version of Visual Studio, but a file search will find
+it anyway). Makefiles for the Microsoft tools are found in all
+ports. They are distinguished by their suffix, e.g.,
+<tt class="filename">Makefile.msvc</tt> or
+<tt class="filename">Makefile.msc</tt>. To build zlib it suffices to run
+<span><b class="command">nmake</b></span> against <tt class="filename">Makefile.msc</tt>
+(i.e., with the <tt class="option">/F</tt> option); similarly, to build
+<tt class="filename">iconv</tt> it suffices to run <span><b class="command">nmake</b></span>
+against <tt class="filename">Makefile.msvc</tt>. Building libxml and
+libxslt requires an extra configuration step; we must run the
+<tt class="filename">configure.js</tt> configuration script with the
+<span><b class="command">cscript</b></span> command. <tt class="filename">configure.js</tt>
+is found in the <tt class="filename">win32</tt> directory
+in the distributions. It is written in JScript, Microsoft's
+implementation of the ECMA 262 language specification (ECMAScript
+Edition 3), a JavaScript offspring. The configuration string takes a
+number of parameters detailing our environment and needs;
+<b class="userinput"><tt>cscript configure.js help</tt></b> documents
+them.</p><p>It is wise to read all documentation files in the source
+distributions before starting; moreover, pay attention to the
+dependencies between the ports. If we configure libxml and libxslt to
+use iconv and zlib we must build these two first and make sure their
+headers and libraries can be found by the compiler and the
+linker when building libxml and libxslt.</p></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2839739"></a>zlib, iconv and All That</h2></div></div></div><p>We saw that libxml and libxslt depend on various other
+libraries, for instance zlib, iconv, and so forth. Taking a look into
+them gives us clues on the capabilities of libxml and libxslt.</p><p><a href="http://www.zlib.org" target="_top">zlib</a> is a free general
+purpose lossless data compression library. It is a venerable
+workhorse; more than <a href="http://www.gzip.org/zlib/apps.html" target="_top">500 applications</a>
+(both commercial and open source) seem to use the library. libxml uses
+zlib so that it can read from or write to compressed files
+directly. The <tt class="function">xmlParseFile</tt> function can
+transparently parse a compressed document to produce an
+<span class="structname">xmlDoc</span>. If we want to create a compressed
+document with libxml we can use an
+<span class="structname">xmlTextWriterPtr</span> (obtained through
+<tt class="function">xmlNewTextWriterDoc</tt>), or another related
+structure from <tt class="filename">libxml/xmlwriter.h</tt>, with
+compression enabled.</p><p>XML allows documents to use a variety of different character
+encodings. <a href="http://www.gnu.org/software/libiconv" target="_top">iconv</a> is a free
+library for converting between different character encodings. libxml
+provides a set of default converters for some encodings: UTF-8, UTF-16
+(little endian and big endian), ISO-8859-1, ASCII, and HTML (a
+specific handler for the conversion of UTF-8 to ASCII with HTML
+predefined entities like &amp;copy; for the copyright sign). However,
+when compiled with iconv support, libxml and libxslt can handle the
+full range of encodings provided by iconv; these should cover most
+needs.</p><p>libxml and libxslt can be used in multi-threaded
+applications. In MS-Windows they are linked against
+<tt class="filename">MSVCRT.DLL</tt> (or one of its descendants, as we saw
+<a href="#windows-build" title="MS-Windows Compiling and
+Linking">above</a>). In *NIX the pthreads
+(POSIX threads) library is used.</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2839841"></a>The Complete Program</h2></div></div></div><p>
+The complete program listing is given below. The program is also
+<a href="libxslt_pipes.c" target="_top">available online</a>.
+</p><p>
+</p><pre class="programlisting">
+/*
+ * libxslt_pipes.c: a program for performing a series of XSLT
+ * transformations
+ *
+ * Writen by Panos Louridas, based on libxslt_tutorial.c by John Fleck.
+ *
+ * See the file Copyright for the status of this software.
+ *
+ */
+
+#include &lt;stdio.h&gt;
+#include &lt;string.h&gt;
+#include &lt;stdlib.h&gt;
+
+#include &lt;libxslt/transform.h&gt;
+#include &lt;libxslt/xsltutils.h&gt;
+
+extern int xmlLoadExtDtdDefaultValue;
+
+static void usage(const char *name) {
+ printf("Usage: %s [options] stylesheet [stylesheet ...] file [file ...]\n",
+ name);
+ printf(" --out file: send output to file\n");
+ printf(" --param name value: pass a (parameter,value) pair\n");
+}
+
+int main(int argc, char **argv) {
+ int arg_indx;
+ const char *params[16 + 1];
+ int params_indx = 0;
+ int stylesheet_indx = 0;
+ int file_indx = 0;
+ int i, j, k;
+ FILE *output_file = stdout;
+ xsltStylesheetPtr *stylesheets =
+ (xsltStylesheetPtr *) calloc(argc, sizeof(xsltStylesheetPtr));
+ xmlDocPtr *files = (xmlDocPtr *) calloc(argc, sizeof(xmlDocPtr));
+ xmlDocPtr doc, res;
+ int return_value = 0;
+
+ if (argc &lt;= 1) {
+ usage(argv[0]);
+ return_value = 1;
+ goto finish;
+ }
+
+ /* Collect arguments */
+ for (arg_indx = 1; arg_indx &lt; argc; arg_indx++) {
+ if (argv[arg_indx][0] != '-')
+ break;
+ if ((!strcmp(argv[arg_indx], "-param"))
+ || (!strcmp(argv[arg_indx], "--param"))) {
+ arg_indx++;
+ params[params_indx++] = argv[arg_indx++];
+ params[params_indx++] = argv[arg_indx];
+ if (params_indx &gt;= 16) {
+ fprintf(stderr, "too many params\n");
+ return_value = 1;
+ goto finish;
+ }
+ } else if ((!strcmp(argv[arg_indx], "-o"))
+ || (!strcmp(argv[arg_indx], "--out"))) {
+ arg_indx++;
+ output_file = fopen(argv[arg_indx], "w");
+ } else {
+ fprintf(stderr, "Unknown option %s\n", argv[arg_indx]);
+ usage(argv[0]);
+ return_value = 1;
+ goto finish;
+ }
+ }
+ params[params_indx] = 0;
+
+ /* Collect and parse stylesheets and files to be transformed */
+ for (; arg_indx &lt; argc; arg_indx++) {
+ char *argument =
+ (char *) malloc(sizeof(char) * (strlen(argv[arg_indx]) + 1));
+ strcpy(argument, argv[arg_indx]);
+ if (strtok(argument, ".")) {
+ char *suffix = strtok(0, ".");
+ if (suffix &amp;&amp; !strcmp(suffix, "xsl")) {
+ stylesheets[stylesheet_indx++] =
+ xsltParseStylesheetFile((const xmlChar *)argv[arg_indx]);;
+ } else {
+ files[file_indx++] = xmlParseFile(argv[arg_indx]);
+ }
+ } else {
+ files[file_indx++] = xmlParseFile(argv[arg_indx]);
+ }
+ free(argument);
+ }
+
+ xmlSubstituteEntitiesDefault(1);
+ xmlLoadExtDtdDefaultValue = 1;
+
+ /* Process files */
+ for (i = 0; files[i]; i++) {
+ doc = files[i];
+ res = doc;
+ for (j = 0; stylesheets[j]; j++) {
+ res = xsltApplyStylesheet(stylesheets[j], doc, params);
+ xmlFreeDoc(doc);
+ doc = res;
+ }
+
+ if (stylesheets[0]) {
+ xsltSaveResultToFile(output_file, res, stylesheets[j-1]);
+ } else {
+ xmlDocDump(output_file, res);
+ }
+ xmlFreeDoc(res);
+ }
+
+ fclose(output_file);
+
+ for (k = 0; stylesheets[k]; k++) {
+ xsltFreeStylesheet(stylesheets[k]);
+ }
+
+ xsltCleanupGlobals();
+ xmlCleanupParser();
+
+ finish:
+ free(stylesheets);
+ free(files);
+ return(return_value);
+}
+
+</pre><p>
+</p></div></div></body></html>
diff --git a/libxslt/doc/tutorial2/libxslt_pipes.xml b/libxslt/doc/tutorial2/libxslt_pipes.xml
new file mode 100644
index 0000000..9a672a9
--- /dev/null
+++ b/libxslt/doc/tutorial2/libxslt_pipes.xml
@@ -0,0 +1,661 @@
+<?xml version="1.0" encoding="iso-8859-2"?>
+<!DOCTYPE article
+SYSTEM "file:///usr/share/docbook/docbook-xml-4.3/docbookx.dtd">
+
+<article id="libxslt">
+<articleinfo>
+ <author><firstname>Panos</firstname><surname>Louridas</surname></author>
+ <copyright>
+ <year>2004</year>
+ <holder>Panagiotis Louridas</holder>
+ </copyright>
+ <legalnotice>
+ <para>Permission is hereby granted, free of charge, to
+ any person obtaining a copy of this software and associated
+ documentation files (the "Software"), to deal in the Software
+ without restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software
+ is furnished to do so, subject to the following conditions:
+ </para>
+
+ <para>The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ </para>
+
+ <para>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</para>
+
+ </legalnotice>
+</articleinfo>
+
+<title>libxslt: An Extended Tutorial</title>
+
+<sect1><title>Introduction</title>
+
+<para>The Extensible Stylesheet Language Transformations (XSLT)
+specification defines an XML template language for transforming XML
+documents. An XSLT engine reads an XSLT file and an XML document and
+transforms the document accordingly.</para>
+
+<para>We want to perform a series of XSLT transformations to a series
+of documents. An obvious solution is to use the operating system's
+pipe mechanism and start a series of transformation processes, each
+one taking as input the output of the previous transformation. It
+would be interesting, though, and perhaps more efficient if we could
+do our job within a single process.</para>
+
+<para>libxslt is a library for doing XSLT transformations. It is built
+on libxml, which is a library for handling XML documents. libxml and
+libxslt are used by the GNOME project. Although developed in the
+*NIX world, both libxml and libxslt have been
+ported to the MS-Windows platform. In principle an application using
+libxslt should be easily portable between the two systems. In
+practice, however, there arise various wrinkles. These do not have
+anything to do with libxml or libxslt per se, but rather with the
+different compilation and linking procedures of each system.</para>
+
+<para>The presented solution is an extension of <ulink
+url="http://xmlsoft.org/XSLT/tutorial/libxslttutorial.html">John
+Fleck's libxslt tutorial</ulink>, but the present tutorial tries to be
+self-contained. It develops a minimal libxslt application
+(libxslt_pipes) that can perform a series of transformations to a
+series of files in a pipe-like manner. An invocation might be:</para>
+
+<para>
+ <userinput>
+ libxslt_pipes --out results.xml foo.xsl bar.xsl doc1.xml doc2.xml
+ </userinput>
+</para>
+
+<para>The <filename>foo.xsl</filename> stylesheet will be applied to
+<filename> doc1.xml</filename> and the <filename>bar.xsl</filename>
+stylesheet will be applied to the resulting document; then the two
+stylesheets will be applied in the same sequence to
+<filename>bar.xsl</filename>. The results are sent to
+<filename>results.xml</filename> (if no output is specified they are
+sent to standard output).</para>
+
+<para>The application is compiled in both *NIX
+systems and MS-Windows, where by *NIX systems we
+mean Linux, BSD, and other members of the
+family. The gcc suite is used in the *NIX platform
+and the Microsoft compiler and linker are used in the
+MS-Windows platform.</para>
+
+</sect1>
+
+<sect1><title>Setting the Scene</title>
+
+<para>
+We need to include the necessary libraries:
+
+<programlisting>
+ <![CDATA[
+ #include <stdio.h>
+ #include <string.h>
+ #include <stdlib.h>
+
+ #include <libxslt/transform.h>
+ #include <libxslt/xsltutils.h>
+ ]]>
+</programlisting>
+</para>
+
+<para>The first group of include directives includes general C
+libraries. The libraries we need to make libxslt work are in the
+second group. The <filename>transform.h</filename> header file
+declares the API that does the bulk of the actual processing. The
+<filename>xsltutils.h</filename> header file declares the API for some
+generic utility functions of the XSLT engine; among other things,
+saving to a file, which is what we need it for.</para>
+
+<para>
+If our input files contain entities through external subsets, we need
+to tell libxslt to load them. The global variable
+<function>xmlLoadExtDtdDefaultValue</function>, defined in
+<filename>libxml/globals.h</filename>, is responsible for that. As the
+variable is defined outside our program we must specify external
+linkage:
+ <programlisting>
+ extern int xmlLoadExtDtdDefaultValue;
+ </programlisting>
+</para>
+
+<para>
+The program is called from the command line. We anticipate that the
+user may not call it the right way, so we define a function for
+describing its usage:
+<programlisting>
+ static void usage(const char *name) {
+ printf("Usage: %s [options] stylesheet [stylesheet ...] file [file ...]\n",
+ name);
+ printf(" --out file: send output to file\n");
+ printf(" --param name value: pass a (parameter,value) pair\n");
+ }
+</programlisting>
+</para>
+</sect1>
+
+<sect1><title>Program Start</title>
+
+<para>We need to define a few variables that are used throughout the
+program:
+<programlisting>
+ int main(int argc, char **argv) {
+ int arg_indx;
+ const char *params[16 + 1];
+ int params_indx = 0;
+ int stylesheet_indx = 0;
+ int file_indx = 0;
+ int i, j, k;
+ FILE *output_file = stdout;
+ xsltStylesheetPtr *stylesheets =
+ (xsltStylesheetPtr *) calloc(argc, sizeof(xsltStylesheetPtr));
+ xmlDocPtr *files = (xmlDocPtr *) calloc(argc, sizeof(xmlDocPtr));
+ int return_value = 0;
+</programlisting>
+</para>
+
+<para>The <varname>arg_indx</varname> integer is an index used to
+iterate over the program arguments. The <varname>params</varname>
+string array is used to collect the XSLT parameters. In XSLT,
+additional information may be passed to the processor via
+parameters. The user of the program specifies these in key-value pairs
+in the command line following the <userinput>--param</userinput>
+command line argument. We accept up to 8 such key-value pairs, which
+we track with the <varname>params_indx</varname> integer. libxslt
+expects the parameters array to be null-terminated, so we have to
+allocate one extra place (16 + 1) for it. The
+<varname>file_indx</varname> is an index to iterate over the files to
+be processed. The <varname>i</varname>, <varname>j</varname>,
+<varname>k</varname> integers are additional indices for iteration
+purposes, and <varname>return_value</varname> is the value the program
+returns to the operating system. We expect the result of the
+transformation to be the standard output in most cases, but the user
+may wish otherwise via the <option>--out</option> command line
+option, so we need to keep track of the situation with the
+<varname>output_file</varname> file pointer.</para>
+
+<para>In libxslt, XSLT stylesheets are internally stored in
+<structname>xsltStylesheet</structname> structures; similarly, in
+libxml XML documents are stored in <structname>xmlDoc</structname>
+structures. <type>xsltStylesheetPtr</type> and <type>xmlDocPtr</type>
+are simply typedefs of pointers to them. The user may specify any
+number of stylesheets that will be applied to the documents one after
+the other. To save time we parse the stylesheets and the documents as
+we read them from the command line and keep the parsed representation
+of them. The parsed results are kept in arrays. These are dynamically
+allocated and sized to the number of arguments; this wastes some
+space, but not much (the size of <type>xmlStyleSheetPtr</type> and
+<type>xmlDocPtr</type> is the size of a pointer) and simplifies code
+later on. The array memory is allocated with
+<function>calloc</function> to ensure contents are initialised to
+zero.
+</para>
+
+</sect1>
+
+<sect1><title>Arguments Collection</title>
+
+<para>If the program gets no arguments at all, we print the usage
+description, set the program return value to 1 and exit. Instead of
+returning directly we go to (literally) to the end of the program text
+where some housekeeping takes place.</para>
+
+<para>
+<programlisting>
+ <![CDATA[
+ if (argc <= 1) {
+ usage(argv[0]);
+ return_value = 1;
+ goto finish;
+ }
+
+ /* Collect arguments */
+ for (arg_indx = 1; arg_indx < argc; arg_indx++) {
+ if (argv[arg_indx][0] != '-')
+ break;
+ if ((!strcmp(argv[arg_indx], "-param"))
+ || (!strcmp(argv[arg_indx], "--param"))) {
+ arg_indx++;
+ params[params_indx++] = argv[arg_indx++];
+ params[params_indx++] = argv[arg_indx];
+ if (params_indx >= 16) {
+ fprintf(stderr, "too many params\n");
+ return_value = 1;
+ goto finish;
+ }
+ } else if ((!strcmp(argv[arg_indx], "-o"))
+ || (!strcmp(argv[arg_indx], "--out"))) {
+ arg_indx++;
+ output_file = fopen(argv[arg_indx], "w");
+ } else {
+ fprintf(stderr, "Unknown option %s\n", argv[arg_indx]);
+ usage(argv[0]);
+ return_value = 1;
+ goto finish;
+ }
+ }
+ params[params_indx] = 0;
+ ]]>
+</programlisting>
+</para>
+
+<para>If the user passes arguments we have to collect them. This is a
+matter of iterating over the program argument list while we encounter
+arguments starting with a dash. The XSLT parameters are put into the
+<varname>params</varname> array and the <varname>output_file</varname>
+is set to the user request, if any. After processing all the parameter
+key-value pairs we set the last element of the <varname>params</varname>
+array to null.
+</para>
+</sect1>
+
+<sect1><title>Parsing</title>
+
+<para>The rest of the argument list is taken to be stylesheets and
+files to be transformed. Stylesheets are identified by their suffix,
+which is expected to be xsl (case sensitive). All other files are
+assumed to be XML documents, regardless of suffix.</para>
+
+<para>
+<programlisting>
+ <![CDATA[
+ /* Collect and parse stylesheets and files to be transformed */
+ for (; arg_indx < argc; arg_indx++) {
+ char *argument =
+ (char *) malloc(sizeof(char) * (strlen(argv[arg_indx]) + 1));
+ strcpy(argument, argv[arg_indx]);
+ if (strtok(argument, ".")) {
+ char *suffix = strtok(0, ".");
+ if (suffix && !strcmp(suffix, "xsl")) {
+ stylesheets[stylesheet_indx++] =
+ xsltParseStylesheetFile((const xmlChar *)argv[arg_indx]);;
+ } else {
+ files[file_indx++] = xmlParseFile(argv[arg_indx]);
+ }
+ } else {
+ files[file_indx++] = xmlParseFile(argv[arg_indx]);
+ }
+ free(argument);
+ }
+ ]]>
+</programlisting>
+</para>
+
+<para>Stylesheets are parsed using the
+<function>xsltParseStylesheetFile</function>
+function. <function>xsltParseStylesheetFile</function> takes as
+argument a pointer to an <type>xmlChar</type>, a typedef of an
+unsigned char; in effect, the filename of the stylesheet. The
+resulting <type>xsltStylesheetPtr</type> is placed in the
+<varname>stylesheets</varname> array. In the same vein, XML files are
+parsed using the <function>xmlParseFile</function> function that takes
+as argument the file's name; the resulting <type>xmlDocPtr</type> is
+placed in the <varname>files</varname> array.
+</para>
+
+</sect1>
+
+<sect1><title>File Processing</title>
+
+<para>All stylesheets are applied to each file one after the
+other. Stylesheets are applied with the
+<function>xsltApplyStylesheet</function> function that takes as
+argument the stylesheet to be applied, the file to be transformed and
+any parameters we have collected. The in-memory representation of an
+XML document takes space, which we free using the
+<function>xmlFreeDoc</function> function. The file is then saved to the
+specified output.</para>
+
+<para>
+<programlisting>
+ <![CDATA[
+ /* Process files */
+ for (i = 0; files[i]; i++) {
+ doc = files[i];
+ res = doc;
+ for (j = 0; stylesheets[j]; j++) {
+ res = xsltApplyStylesheet(stylesheets[j], doc, params);
+ xmlFreeDoc(doc);
+ doc = res;
+ }
+
+ if (stylesheets[0]) {
+ xsltSaveResultToFile(output_file, res, stylesheets[j-1]);
+ } else {
+ xmlDocDump(output_file, res);
+ }
+ xmlFreeDoc(res);
+ }
+
+ fclose(output_file);
+
+ for (k = 0; stylesheets[k]; k++) {
+ xsltFreeStylesheet(stylesheets[k]);
+ }
+
+ xsltCleanupGlobals();
+ xmlCleanupParser();
+
+ finish:
+ free(stylesheets);
+ free(files);
+ return(return_value);
+ ]]>
+</programlisting>
+</para>
+
+<para>To output an XML document we have in memory we use the
+<function>xlstSaveResultToFile</function> function, where we specify
+the destination, the document and the stylesheet that has been applied
+to it. The stylesheet is required so that output-related information
+contained in the stylesheet, such as the encoding to be used, is used
+in output. If no transformation has taken place, which will happen
+when the user specifies no stylesheets at all in the command line, we
+use the <function>xmlDocDump</function> libxml function that saves the
+source document to the file without further ado.</para>
+
+<para>As parsed stylesheets take up space in memory, we take care to
+free that memory after use with a call to
+<function>xmlFreeStyleSheet</function>. When all work is done, we
+clean up all global variables used by the XSLT library using
+<function>xsltCleanupGlobals</function>. Likewise, all global memory
+allocated for the XML parser is reclaimed by a call to
+<function>xmlCleanupParser</function>. Before returning we deallocate
+the memory allocated for the holding the pointers to the XML documents
+and stylesheets.</para>
+
+</sect1>
+
+<sect1><title>*NIX Compiling and Linking</title>
+
+<para>Compiling and linking in a *NIX environment
+is easy, as the required libraries are almost certain to be already in
+place (remember that libxml and libxslt are used by the GNOME project,
+so they are present in most installations). The program can be
+dynamically linked so that its footprint is minimized, or statically
+linked, so that it stands by itself, carrying all required code.</para>
+
+<para>For dynamic linking the following one liner will do:</para>
+
+<para>
+<userinput>gcc -o libxslt_pipes -Wall -I/usr/include/libxml2 -lxslt
+-lxml2 -L/usr/lib libxslt_pipes.c</userinput>
+</para>
+
+<para>We assume that the necessary header files are in <filename
+class="directory">/usr/include/libxml2</filename> and that the
+required libraries (<filename>libxslt.so</filename>,
+<filename>libxml2.so</filename>) are in <filename
+class="directory">/usr/lib</filename>.</para>
+
+<para>In general, a program may need to link to additional libraries,
+depending on the processing it actually performs. A good way to start
+is to use the <command>xslt-config</command> script. The
+<option>--help</option> option displays usage
+information. Running</para>
+
+<para>
+ <userinput>
+ xslt-config --cflags
+ </userinput>
+</para>
+
+<para>we get compile flags, while running</para>
+
+<para>
+ <userinput>
+ xslt-config --libs
+ </userinput>
+</para>
+
+<para>we get the library settings for the linker.</para>
+
+<para>For static linking we must list more libraries than we did for
+dynamic linking, as the libraries on which the libxsl and libxslt
+libraries depend are also needed. Using <command>xslt-config</command>
+on a particular installation we create the following one-liner:</para>
+
+<para>
+<userinput>
+gcc -o libxslt_pipes -Wall -I/usr/include/libxml2 libxslt_pipes.c
+-static -L/usr/lib -lxslt -lxml2 -lz -lpthread -lm
+</userinput>
+</para>
+
+<para>If we get warnings to the effect that some function in
+statically linked applications requires at runtime the shared
+libraries used from the glibc version used for linking, that means
+that the binary is not completely static. Although we statically
+linked against the GNU C runtime library glibc, glibc uses external
+libraries to perform some of its functions. Same version libraries
+must be present on the system we want the application to run. One way
+to avoid this it to use an alternative C runtime, for example <ulink
+url="http://www.uclibc.org">uClibc</ulink>, which requires obtaining
+and building a uClibc toolchain first (if the reason for trying to get
+a statically linked version of the program is to embed it somewhere,
+using uClibc might be a good idea anyway).
+</para>
+
+</sect1>
+
+<sect1 id="windows-build"><title>MS-Windows Compiling and
+Linking</title>
+
+<para>Compiling and linking in MS-Windows requires
+some attention. First, the MS-Windows ports must be
+downloaded and installed in the programming workstation. The ports are
+available in <ulink url="http://www.zlatkovic.com/libxml.en.html">Igor
+Zlatkoviæ's site</ulink>. We need the ports for iconv, zlib, libxml,
+and libxslt. In contrast to *NIX environments, we
+cannot assume that the libraries needed will be present in other
+computers where the program will be used. One solution is to
+distribute the program along with the necessary dynamic
+libraries. Another solution is to statically link the program so that
+only a single executable file will have to be distributed.</para>
+
+<para>We assume that we have decompressed the downloaded ports and
+have placed the required contents of their <filename
+class="directory">include</filename> directories in an <filename
+class="directory">include</filename> directory in our file system. The
+required contents include everything apart from the <filename
+class="directory">libexslt</filename> directory of the libxslt port,
+as we are not using EXLST (an initiative to provide extensions to
+XSLT) in this project. In order to compile the program we have to make
+sure that all necessary header files are included. When using the
+Microsoft compiler this translates to adding the required
+<option>/I</option> switches in the command line. If using a Visual
+Studio product the same effect is attained by specifying additional
+include directories in the compilation options. In the end, if the
+headers have been copied in <filename
+class="directory">C:\include</filename> the command line must contain
+<option>/I"C:\include" /I"C:\include\libslt"
+/I"C:\include\libxml"</option>.</para>
+
+<para>This being a C program, it needs to be compiled against an
+implementation of the C libraries. Microsoft provides various
+implementations. The ports, however, have been compiled against the
+<filename>msvcrt.dll</filename> implementation, so it is wise to use
+the same runtime in our project, lest we wish to come against
+unexpected runtime crashes. The <filename>msvcrt.dll</filename> is a
+multi-threaded implementation and is specified by giving
+<option>/MD</option> as a compiler option. Unfortunately, the
+correspondence between the <option>/MD</option> switch and
+<filename>msvcrt.dll</filename> breaks after version 6 of the
+Microsoft compiler. In version 7 and later (i.e., Visual Studio .NET),
+<option>/MD</option> links against a different DLL; in version 7.1
+this is <filename>msvcrt71.dll</filename>. The end result of this bit
+of esoterica is that if you try to dynamically link your application
+with a compiler whose version is greater than 6, your program is
+likely to crash unexpectedly. Alternatively, you may wish to compile
+all iconv, zlib, libxml and libxslt yourself, using the new runtime
+library. This is not a tall order, and some details are given
+<link linkend="windows-ports-build">below</link>.</para>
+
+<para>There are three kinds of libraries in MS-Windows. Dynamically
+Linked Libraries (DLLs), like <filename>msvcrt.dll</filename> we met
+above, are used for dynamic linking; an application links to them at
+runtime, so the application does not include the code contained in
+them. Static libraries are used for static linking; an application
+adds the libraries' code to its own code at link time. Import
+libraries are used when building an application that uses DLLs. For
+the application to be built, the linker must somehow find the
+definitions of the functions that will be provided in runtime by the
+DLLs, otherwise it will complain about unresolved references. Import
+libraries contain function stubs that, for each DLL function we want
+to call, know where to look for it in the DLL. In essence, in order to
+use a DLL we must link against its corresponding import library. DLLs
+have a <filename>.dll</filename> suffix; static and import libraries
+both have a <filename>.lib</filename> suffix. In the MS-Windows ports
+of libxml and libxslt static libraries are distinguished by their name
+ending in <filename>_a.lib</filename>, while in the zlib port the
+import library is <filename>zdll.lib</filename> and the static library
+is <filename>zlib.lib</filename>. In what follows we assume we have a
+<filename class="directory">lib</filename> directory in our filesystem
+where we place the libraries we need for linking.</para>
+
+<para>If we want to link dynamically we must make sure the <filename
+class="directory">lib</filename> directory contains
+<filename>iconv.lib</filename>, <filename>libxslt.lib</filename>,
+<filename>libxml2.lib</filename>, and
+<filename>zdll.lib</filename>. When using the Microsoft linker this
+translates to adding the required <option>/LIBPATH</option>
+switch and the necessary libraries in the command line. In Visual
+Studio we must specify an additional library directory for <filename
+class="directory">lib</filename> and put the necessary libraries in
+the additional dependencies. In the end, the command line must include
+<option>/LIBPATH:"C:\lib" "lib\iconv.lib" "lib\libxslt.lib"
+"lib\libxml2.lib" "lib\zdll.lib"</option>, provided the libraries'
+directory is <filename class="directory">C:\lib</filename>. In order
+for the resulting executable to run, the ports DLLs must be present;
+one way is to place all DLLs contained in the ports in the home
+directory of our application, and make sure they are distributed
+together.</para>
+
+<para>If we want to link statically we must make sure the <filename
+class="directory">lib</filename> directory contains
+<filename>iconv_a.lib</filename>, <filename>libxslt_a.lib</filename>,
+<filename>libxml2_a.lib</filename>, and
+<filename>zlib.lib</filename>. Adding <filename
+class="directory">lib</filename> as a library directory and putting
+the necessary libraries in the additional dependencies, we get a
+command line that should include <option>/LIBPATH:"C:\lib"
+"lib\iconv_a.lib" "lib\libxslt_a.lib" "lib\libxml2_a.lib"
+"lib\zlib.lib"</option>. The resulting executable is much bigger
+than if we linked dynamically; it is, however, self-contained and can
+be distributed more easily, in theory at least. In practice, however,
+the executable is not completely static. We saw that the ports are
+compiled against <filename>msvcrt.dll</filename>, so the program does
+require that DLL at runtime. Moreover, since when using a version of
+Microsoft developer tools with a version number greater than 6, we are
+no longer using <filename>msvcrt.dll</filename>, but another runtime
+like <filename>msvcrt71.dll</filename>, and we then need that DLL. In
+contrast to <filename>msvcrt.dll</filename> it may not be present on
+the target computer, so we may have to copy it along.</para>
+
+<sect2 id="windows-ports-build"><title>Building the Ports in
+MS-Windows</title>
+
+<para>The source code of the ports is readily available on the web,
+one has to check the ports sites. Each port can be built without
+problems in an MS-Windows environment using Microsoft development
+tools. The necessary command line tools (compiler, linker,
+<command>nmake</command>) must be available. This means running a
+batch file called <command>vcvars32.bat</command> that comes with
+Visual Studio (its exact location in the directory tree may vary
+depending on the version of Visual Studio, but a file search will find
+it anyway). Makefiles for the Microsoft tools are found in all
+ports. They are distinguished by their suffix, e.g.,
+<filename>Makefile.msvc</filename> or
+<filename>Makefile.msc</filename>. To build zlib it suffices to run
+<command>nmake</command> against <filename>Makefile.msc</filename>
+(i.e., with the <option>/F</option> option); similarly, to build
+<filename>iconv</filename> it suffices to run <command>nmake</command>
+against <filename>Makefile.msvc</filename>. Building libxml and
+libxslt requires an extra configuration step; we must run the
+<filename>configure.js</filename> configuration script with the
+<command>cscript</command> command. <filename>configure.js</filename>
+is found in the <filename class="directory">win32</filename> directory
+in the distributions. It is written in JScript, Microsoft's
+implementation of the ECMA 262 language specification (ECMAScript
+Edition 3), a JavaScript offspring. The configuration string takes a
+number of parameters detailing our environment and needs;
+<userinput>cscript configure.js help</userinput> documents
+them.</para>
+
+<para>It is wise to read all documentation files in the source
+distributions before starting; moreover, pay attention to the
+dependencies between the ports. If we configure libxml and libxslt to
+use iconv and zlib we must build these two first and make sure their
+headers and libraries can be found by the compiler and the
+linker when building libxml and libxslt.</para>
+
+</sect2>
+
+</sect1>
+
+<sect1><title>zlib, iconv and All That</title>
+
+<para>We saw that libxml and libxslt depend on various other
+libraries, for instance zlib, iconv, and so forth. Taking a look into
+them gives us clues on the capabilities of libxml and libxslt.</para>
+
+<para><ulink url="http://www.zlib.org">zlib</ulink> is a free general
+purpose lossless data compression library. It is a venerable
+workhorse; more than <ulink
+url="http://www.gzip.org/zlib/apps.html">500 applications</ulink>
+(both commercial and open source) seem to use the library. libxml uses
+zlib so that it can read from or write to compressed files
+directly. The <function>xmlParseFile</function> function can
+transparently parse a compressed document to produce an
+<structname>xmlDoc</structname>. If we want to create a compressed
+document with libxml we can use an
+<structname>xmlTextWriterPtr</structname> (obtained through
+<function>xmlNewTextWriterDoc</function>), or another related
+structure from <filename>libxml/xmlwriter.h</filename>, with
+compression enabled.</para>
+
+<para>XML allows documents to use a variety of different character
+encodings. <ulink
+url="http://www.gnu.org/software/libiconv">iconv</ulink> is a free
+library for converting between different character encodings. libxml
+provides a set of default converters for some encodings: UTF-8, UTF-16
+(little endian and big endian), ISO-8859-1, ASCII, and HTML (a
+specific handler for the conversion of UTF-8 to ASCII with HTML
+predefined entities like &amp;copy; for the copyright sign). However,
+when compiled with iconv support, libxml and libxslt can handle the
+full range of encodings provided by iconv; these should cover most
+needs.</para>
+
+<para>libxml and libxslt can be used in multi-threaded
+applications. In MS-Windows they are linked against
+<filename>MSVCRT.DLL</filename> (or one of its descendants, as we saw
+<link linkend="windows-build">above</link>). In *NIX the pthreads
+(POSIX threads) library is used.</para>
+
+</sect1>
+
+<sect1><title>The Complete Program</title>
+
+<para>
+The complete program listing is given below. The program is also
+<ulink url="libxslt_pipes.c">available online</ulink>.
+</para>
+
+<para>
+<programlisting>
+<xi:include href="libxslt_pipes.c" parse="text"
+ xmlns:xi="http://www.w3.org/2003/XInclude"/>
+</programlisting>
+</para>
+
+</sect1>
+
+</article>
diff --git a/libxslt/doc/w3c.png b/libxslt/doc/w3c.png
new file mode 100644
index 0000000..c541c20
--- /dev/null
+++ b/libxslt/doc/w3c.png
Binary files differ
diff --git a/libxslt/doc/xsa.xsl b/libxslt/doc/xsa.xsl
new file mode 100644
index 0000000..343ef34
--- /dev/null
+++ b/libxslt/doc/xsa.xsl
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<!--
+ Stylesheet generating the XSA entry for libxslt based on the
+ latest News entry.
+ See http://www.garshol.priv.no/download/xsa/ for a description of XSA
+ -->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
+ xmlns:xhtml="http://www.w3.org/1999/xhtml" exclude-result-prefixes="xhtml">
+ <xsl:output method="xml"
+ doctype-public="-//LM Garshol//DTD XML Software Autoupdate 1.0//EN//XML"
+ doctype-system="http://www.garshol.priv.no/download/xsa/xsa.dtd"
+ indent="yes"/>
+
+ <xsl:template match="/">
+<xsa>
+ <vendor>
+ <name>Daniel Veillard</name>
+ <email>daniel@veillard.com</email>
+ <url>http://veillard.com/</url>
+ </vendor>
+ <product id="libxslt">
+ <name>libxslt</name>
+ <version><xsl:value-of select="substring-before(//xhtml:h3[2], ':')"/></version>
+ <last-release><xsl:value-of select="substring-after(//xhtml:h3[2], ':')"/></last-release>
+ <info-url>http://xmlsoft.org/XSLT/</info-url>
+ <changes>
+ <xsl:apply-templates select="//xhtml:h3[2]/following-sibling::*[1]"/>
+ </changes>
+ </product>
+</xsa>
+ </xsl:template>
+ <xsl:template match="xhtml:h3">
+ </xsl:template>
+ <xsl:template match="xhtml:ul">
+ <xsl:apply-templates select=".//xhtml:li"/>
+ <xsl:text>
+</xsl:text>
+ </xsl:template>
+ <xsl:template match="xhtml:li">
+ <xsl:text> - </xsl:text>
+ <xsl:value-of select="."/>
+ <xsl:text>
+</xsl:text>
+ </xsl:template>
+ <xsl:template match="xhtml:a">
+ <xsl:value-of select="."/>
+ <xsl:text> at
+</xsl:text>
+ <xsl:value-of select="@href"/>
+ <xsl:text>
+</xsl:text>
+ </xsl:template>
+</xsl:stylesheet>
+
diff --git a/libxslt/doc/xslt.html b/libxslt/doc/xslt.html
new file mode 100644
index 0000000..e1139cd
--- /dev/null
+++ b/libxslt/doc/xslt.html
@@ -0,0 +1,2771 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+ <title>The XSLT C library for GNOME</title>
+ <meta http-equiv="Content-Type" content="text/html">
+</head>
+
+<body bgcolor="#ffffff">
+<h1 align="center">The XSLT C library for GNOME</h1>
+
+<h1 style="text-align: center">libxslt</h1>
+
+<p>Libxslt is the <a href="http://www.w3.org/TR/xslt">XSLT</a> C library
+developed for the GNOME project. XSLT itself is a an XML language to define
+transformation for XML. Libxslt is based on <a
+href="http://xmlsoft.org/">libxml2</a> the XML C library developed for the
+GNOME project. It also implements most of the <a
+href="http://www.exslt.org/">EXSLT</a> set of processor-portable extensions
+functions and some of Saxon's evaluate and expressions extensions.</p>
+
+<p>People can either embed the library in their application or use xsltproc
+the command line processing tool. This library is free software and can be
+reused in commercial applications (see the <a href="intro.html">intro</a>)</p>
+
+<p>External documents:</p>
+<ul>
+ <li>John Fleck wrote <a href="tutorial/libxslttutorial.html">a tutorial for
+ libxslt</a></li>
+ <li><a href="xsltproc.html">xsltproc user manual</a></li>
+ <li><a href="http://xmlsoft.org/">the libxml documentation</a></li>
+</ul>
+
+<p></p>
+
+<p>Logo designed by <a href="mailto:liyanage@access.ch">Marc Liyanage</a>.</p>
+
+<h2><a name="Introducti">Introduction</a></h2>
+
+<p>This document describes <a href="http://xmlsoft.org/XSLT/">libxslt</a>,
+the <a href="http://www.w3.org/TR/xslt">XSLT</a> C library developed for the
+<a href="http://www.gnome.org/">GNOME</a> project.</p>
+
+<p>Here are some key points about libxslt:</p>
+<ul>
+ <li>Libxslt is a C implementation</li>
+ <li>Libxslt is based on libxml for XML parsing, tree manipulation and XPath
+ support</li>
+ <li>It is written in plain C, making as few assumptions as possible, and
+ sticking closely to ANSI C/POSIX for easy embedding. Should works on
+ Linux/Unix/Windows.</li>
+ <li>This library is released under the <a
+ href="http://www.opensource.org/licenses/mit-license.html">MIT
+ Licence</a></li>
+ <li>Though not designed primarily with performances in mind, libxslt seems
+ to be a relatively fast processor.</li>
+</ul>
+
+<h2><a name="Documentat">Documentation</a></h2>
+
+<p>There are some on-line resources about using libxslt:</p>
+<ol>
+ <li>Check the <a href="html/libxslt-lib.html#LIBXSLT-LIB">API
+ documentation</a> automatically extracted from code comments (using the
+ program apibuild.py, developed for libxml, together with the xsl script
+ 'newapi.xsl' and the libxslt xsltproc program).</li>
+ <li>Look at the <a href="http://mail.gnome.org/archives/xslt/">mailing-list
+ archive</a>.</li>
+ <li>Of course since libxslt is based on libxml, it's a good idea to at
+ least read <a href="http://xmlsoft.org/">libxml description</a></li>
+</ol>
+
+<h2><a name="Reporting">Reporting bugs and getting help</a></h2>
+
+<p>If you need help with the XSLT language itself, here are a number of
+useful resources:</p>
+<ul>
+ <li>I strongly suggest to subscribe to <a
+ href="http://www.mulberrytech.com/xsl/xsl-list">XSL-list</a>, check <a
+ href="http://www.biglist.com/lists/xsl-list/archives/">the XSL-list
+ archives</a></li>
+ <li>The <a href="http://www.dpawson.co.uk/xsl/xslfaq.html">XSL FAQ</a>.</li>
+ <li>The <a
+ href="http://www.nwalsh.com/docs/tutorials/xsl/xsl/slides.html">tutorial</a>
+ written by Paul Grosso and Norman Walsh is a very good on-line
+ introdution to the language.</li>
+ <li>The <a
+ href="http://www.zvon.org/xxl/XSLTutorial/Books/Book1/index.html">only
+ Zvon XSLT tutorial</a> details a lot of constructs with examples.</li>
+ <li><a href="http://www.jenitennison.com/xslt/index.html">Jeni Tennison's
+ XSLT</a> pages provide links to a lot of answers</li>
+ <li>the <a href="http://incrementaldevelopment.com/xsltrick/">Gallery of
+ XSLT Tricks</a> provides non-standard use case of XSLT</li>
+ <li>And I suggest to buy Michael Kay "XSLT Programmer's Reference" book
+ published by <a href="http://www.wrox.com/">Wrox</a> if you plan to work
+ seriously with XSLT in the future.</li>
+</ul>
+
+<p>Well, bugs or missing features are always possible, and I will make a
+point of fixing them in a timely fashion. The best way to report a bug is to
+use the <a
+href="http://bugzilla.gnome.org/enter_bug.cgi?product=libxslt">GNOME bug
+tracking database</a> (make sure to use the "libxslt" module name). Before
+filing a bug, check the <a
+href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">list of existing
+libxslt bugs</a> to make sure it hasn't already been filed. I look at reports
+there regularly and it's good to have a reminder when a bug is still open. Be
+sure to specify that the bug is for the package libxslt.</p>
+
+<p>For small problems you can try to get help on IRC, the #xml channel on
+irc.gnome.org (port 6667) usually have a few person subscribed which may help
+(but there is no guarantee and if a real issue is raised it should go on the
+mailing-list for archival).</p>
+
+<p>There is also a mailing-list <a
+href="mailto:xslt@gnome.org">xslt@gnome.org</a> for libxslt, with an <a
+href="http://mail.gnome.org/archives/xslt/">on-line archive</a>. To subscribe
+to this list, please visit the <a
+href="http://mail.gnome.org/mailman/listinfo/xslt">associated Web</a> page
+and follow the instructions.</p>
+
+<p>Alternatively, you can just send the bug to the <a
+href="mailto:xslt@gnome.org">xslt@gnome.org</a> list, if it's really libxslt
+related I will approve it.. Please do not send me mail directly especially
+for portability problem, it makes things really harder to track and in some
+cases I'm not the best person to answer a given question, ask the list
+instead. <strong>Do not send code, I won't debug it</strong> (but patches are
+really appreciated!).</p>
+
+<p>Please note that with the current amount of virus and SPAM, sending mail
+to the list without being subscribed won't work. There is *far too many
+bounces* (in the order of a thousand a day !) I cannot approve them manually
+anymore. If your mail to the list bounced waiting for administrator approval,
+it is LOST ! Repost it and fix the problem triggering the error. Also please
+note that <span style="color: #FF0000; background-color: #FFFFFF">emails with
+a legal warning asking to not copy or redistribute freely the information
+they contain</span> are <strong>NOT</strong> acceptable for the mailing-list,
+such mail will as much as possible be discarded automatically, and are less
+likely to be answered if they made it to the list, <strong>DO NOT</strong>
+post to the list from an email address where such legal requirements are
+automatically added, get private paying support if you can't share
+information.</p>
+
+<p>Check the following too <span style="color: #E50000">before
+posting</span>:</p>
+<ul>
+ <li><a href="search.php">use the search engine</a> to get information
+ related to your problem.</li>
+ <li>make sure you are <a href="ftp://xmlsoft.org/libxslt/">using a recent
+ version</a>, and that the problem still shows up in those</li>
+ <li>check the <a href="http://mail.gnome.org/archives/xslt/">list
+ archives</a> to see if the problem was reported already, in this case
+ there is probably a fix available, similarly check the <a
+ href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">registered
+ open bugs</a></li>
+ <li>make sure you can reproduce the bug with xsltproc, a very useful thing
+ to do is run the transformation with -v argument and redirect the
+ standard error to a file, then search in this file for the transformation
+ logs just preceding the possible problem</li>
+ <li>Please send the command showing the error as well as the input and
+ stylesheet (as an attachment)</li>
+</ul>
+
+<p>Then send the bug with associated information to reproduce it to the <a
+href="mailto:xslt@gnome.org">xslt@gnome.org</a> list; if it's really libxslt
+related I will approve it. Please do not send mail to me directly, it makes
+things really hard to track and in some cases I am not the best person to
+answer a given question, ask on the list.</p>
+
+<p>To <span style="color: #E50000">be really clear about support</span>:</p>
+<ul>
+ <li>Support or help <span style="color: #E50000">request MUST be sent to
+ the list or on bugzilla</span> in case of problems, so that the Question
+ and Answers can be shared publicly. Failing to do so carries the implicit
+ message "I want free support but I don't want to share the benefits with
+ others" and is not welcome. I will automatically Carbon-Copy the
+ xslt@gnome.org mailing list for any technical reply made about libxml2 or
+ libxslt.</li>
+ <li>There is <span style="color: #E50000">no guarantee for support</span>,
+ if your question remains unanswered after a week, repost it, making sure
+ you gave all the detail needed and the information requested.</li>
+ <li>Failing to provide information as requested or double checking first
+ for prior feedback also carries the implicit message "the time of the
+ library maintainers is less valuable than my time" and might not be
+ welcome.</li>
+</ul>
+
+<p>Of course, bugs reports with a suggested patch for fixing them will
+probably be processed faster.</p>
+
+<p>If you're looking for help, a quick look at <a
+href="http://mail.gnome.org/archives/xslt/">the list archive</a> may actually
+provide the answer, I usually send source samples when answering libxslt
+usage questions. The <a
+href="html/libxslt-lib.html#LIBXSLT-LIB">auto-generated documentation</a> is
+not as polished as I would like (I need to learn more about Docbook), but
+it's a good starting point.</p>
+
+<h2><a name="help">How to help</a></h2>
+
+<p>You can help the project in various ways, the best thing to do first is to
+subscribe to the mailing-list as explained before, check the <a
+href="http://mail.gnome.org/archives/xslt/">archives </a>and the <a
+href="http://bugzilla.gnome.org/buglist.cgi?product=libxslt">GNOME bug
+database:</a>:</p>
+<ol>
+ <li>provide patches when you find problems</li>
+ <li>provide the diffs when you port libxslt to a new platform. They may not
+ be integrated in all cases but help pinpointing portability problems
+ and</li>
+ <li>provide documentation fixes (either as patches to the code comments or
+ as HTML diffs).</li>
+ <li>provide new documentations pieces (translations, examples, etc ...)</li>
+ <li>Check the TODO file and try to close one of the items</li>
+ <li>take one of the points raised in the archive or the bug database and
+ provide a fix. <a href="mailto:daniel@veillard.com">Get in touch with me
+ </a>before to avoid synchronization problems and check that the suggested
+ fix will fit in nicely :-)</li>
+</ol>
+
+<h2><a name="Downloads">Downloads</a></h2>
+
+<p>The latest versions of libxslt can be found on the <a
+href="ftp://xmlsoft.org/libxslt/">xmlsoft.org</a> server. (NOTE that
+you need the <a href="http://rpmfind.net/linux/RPM/libxml2.html">libxml2</a>,
+<a href="http://rpmfind.net/linux/RPM/libxml2-devel.html">libxml2-devel</a>,
+<a href="http://rpmfind.net/linux/RPM/libxslt.html">libxslt</a> and <a
+href="http://rpmfind.net/linux/RPM/libxslt-devel.html">libxslt-devel</a>
+packages installed to compile applications using libxslt.) <a
+href="mailto:igor@zlatkovic.com">Igor Zlatkovic</a> is now the maintainer of
+the Windows port, <a
+href="http://www.zlatkovic.com/projects/libxml/index.html">he provides
+binaries</a>. <a href="http://opencsw.org/">CSW</a> provides
+<a href="http://opencsw.org/packages/libxslt">Solaris binaries</a>, and
+<a href="mailto:Steve.Ball@explain.com.au">Steve Ball</a> provides <a
+href="http://www.explain.com.au/oss/libxml2xslt.html">Mac Os X
+binaries</a>.</p>
+
+<p><a name="Snapshot">Snapshot:</a></p>
+<ul>
+ <li>Code from the GNOME GIT base libxslt module, updated hourly <a
+ href="ftp://xmlsoft.org/libxml2/libxslt-git-snapshot.tar.gz">libxslt-git-snapshot.tar.gz</a>.</li>
+</ul>
+
+<p><a name="Contribs">Contribs:</a></p>
+
+<p>I do accept external contributions, especially if compiling on another
+platform, get in touch with me to upload the package. I will keep them in the
+<a href="ftp://xmlsoft.org/libxml2/contribs/">contrib directory</a></p>
+
+<p>Libxslt is also available from GIT:</p>
+<ul>
+ <li><p>See <a href="http://git.gnome.org/browse/libxslt/">libxslt Git web</a>.
+ To checkout a local tree use:</p>
+ <pre>git clone git://git.gnome.org/libxslt</pre>
+ </li>
+ <li>The <strong>libxml2</strong> module is also present
+ <a href="http://git.gnome.org/browse/libxml2/">there</a></li>
+</ul>
+
+
+<h2><a name="FAQ">FAQ</a></h2>
+<ol>
+ <li><em>Troubles compiling or linking programs using libxslt</em>
+ <p>Usually the problem comes from the fact that the compiler doesn't get
+ the right compilation or linking flags. There is a small shell script
+ <code>xslt-config</code> which is installed as part of libxslt usual
+ install process which provides those flags. Use</p>
+ <p><code>xslt-config --cflags</code></p>
+ <p>to get the compilation flags and</p>
+ <p><code>xslt-config --libs</code></p>
+ <p>to get the linker flags. Usually this is done directly from the
+ Makefile as:</p>
+ <p><code>CFLAGS=`xslt-config --cflags`</code></p>
+ <p><code>LIBS=`xslt-config --libs`</code></p>
+ <p>Note also that if you use the EXSLT extensions from the program then
+ you should prepend <code>-lexslt</code> to the LIBS options</p>
+ </li>
+ <li><em>passing parameters on the xsltproc command line doesn't work</em>
+ <p><em>xsltproc --param test alpha foo.xsl foo.xml</em></p>
+ <p><em>the param does not get passed and ends up as ""</em></p>
+ <p>In a nutshell do a double escaping at the shell prompt:</p>
+ <p>xsltproc --param test "'alpha'" foo.xsl foo.xml</p>
+ <p>i.e. the string value is surrounded by " and ' then terminated by '
+ and ". Libxslt interpret the parameter values as XPath expressions, so
+ the string -&gt;<code>alpha</code>&lt;- is intepreted as the node set
+ matching this string. You really want -&gt;<code>'alpha'</code>&lt;- to
+ be passed to the processor. And to allow this you need to escape the
+ quotes at the shell level using -&gt;<code>"'alpha'"</code>&lt;- .</p>
+ <p>or use</p>
+ <p>xsltproc --stringparam test alpha foo.xsl foo.xml</p>
+ </li>
+ <li><em>Is there C++ bindings ?</em>
+ <p>Yes for example <a
+ href="http://pmade.org/pjones/software/xmlwrapp/">xmlwrapp</a> , see <a
+ href="python.html">the related pages about bindings</a></p>
+ </li>
+</ol>
+
+<h2><a name="News">News</a></h2>
+
+<p>See the <a href="http://git.gnome.org/browse/libxslt/">git page</a>
+to get a description of the recent commits.</p>
+
+<p>Those are the public releases made:</p>
+
+<h3>1.1.29: May 24 2016</h3>
+<ul>
+ <li>Security:<br/>
+ CVE-2015-7995 Fix for type confusion in preprocessing attributes (Daniel Veillard)<br/>
+ </li>
+
+ <li>Documentation:<br/>
+ </li>
+
+ <li>Portability:<br/>
+ Fix a portibility problem with previous commit (Eduard Sanou),<br/>
+ Fix MingW build (Nick Wellnhofer),<br/>
+ Correctly emulate snprintf on older MSVC versions (Nick Wellnhofer),<br/>
+ Add Python script to run some tests on Windows (Nick Wellnhofer),<br/>
+ Remove /OPT:NOWIN98 option (Nick Wellnhofer),<br/>
+ Visual Studio 14 CTP defines snprintf() (Daniel Veillard),<br/>
+ Use AC_PATH_TOOL to find libgcrypt-config and xml2-config (Micha¿ Górny),<br/>
+ Use $libdir for LIBXSLT_DEFAULT_PLUGINS_PATH (larryhaja),<br/>
+ Use mkdir macro also in case if mingw32. (Lars Kanis),<br/>
+ Add math library to executable link flags (Nick Wellnhofer),<br/>
+ Fix quoting of xlocale test program in configure.in (Nick Wellnhofer)<br/>
+ </li>
+
+ <li>Bug Fixes:<br/>
+ Fix OOB heap read in xsltExtModuleRegisterDynamic (Nick Wellnhofer),<br/>
+ Remove CDATA markup from libxslt_tutorial.c (Nick Wellnhofer),<br/>
+ Remove generated headers from dist tarball (Nick Wellnhofer),<br/>
+ Mark XML file argument as repeatable (Nick Wellnhofer),<br/>
+ Keep timezone in date:add (Nick Wellnhofer),<br/>
+ Fix buffer overflow in exsltDateFormat (Nick Wellnhofer),<br/>
+ Fix saxon:line-number with namespace nodes (Nick Wellnhofer),<br/>
+ Fix dyn:map with namespace nodes (Nick Wellnhofer),<br/>
+ Fix error handling in Saxon extension functions (Nick Wellnhofer),<br/>
+ Fix double free in libexslt hash functions (Nick Wellnhofer),<br/>
+ Fix libxslt format warnings (David Kilzer),<br/>
+ Fix xsltNumberFormatGetMultipleLevel (Nick Wellnhofer),<br/>
+ Fix use-after-free in xsltDocumentFunctionLoadDocument (Nick Wellnhofer),<br/>
+ Always initialize EXSLT month and day to 1 (Nick Wellnhofer),<br/>
+ Fix possible NULL pointer deref in transform.c (mahendra.n),<br/>
+ Fix possible NULL pointer deref in xsltCopyTextString (Nick Wellnhofer),<br/>
+ Fix possible NULL pointer deref in libexslt/functions.c (Nick Wellnhofer),<br/>
+ Fix possible NULL pointer deref in xsltproc.c (mahendra.n),<br/>
+ Fix possible NULL pointer deref in preproc.c (mahendra.n),<br/>
+ Fix LIBXSLT_DEFAULT_PLUGINS_PATH in xsltconfig.h (Nick Wellnhofer),<br/>
+ Fix memory leak in xsltNumberFormat (Albert Astals Cid),<br/>
+ Error in doc/Makefile.am (Brice De Bruyne),<br/>
+ Detect attribute sets recursions in more cases (Daniel Veillard),<br/>
+ Check name vales for attribute-set elements (Daniel Veillard),<br/>
+ Fix hang with namespace-alias, fixes #700689 (Shaun McCance),<br/>
+ Fix str:align with UTF-8 strings (Nick Wellnhofer),<br/>
+ Fix for compiled XPath helpers (Nick Wellnhofer),<br/>
+ Check return value of exsltFuncNewFunctionData (Nick Wellnhofer),<br/>
+ Fix return value of xsltRegisterExtModuleElement (Nick Wellnhofer),<br/>
+ Call xmlNodeGetSpacePreserve with element node (Nick Wellnhofer),<br/>
+ Set namespaces before evaluating xsl:number (Nick Wellnhofer),<br/>
+ Make --maxvars option work (Per Hedeland),<br/>
+ Set correct context node when initializing xsl:keys (Nick Wellnhofer),<br/>
+ Fix for bug 436589 (Imran Azeezullah),<br/>
+ Memory leak in xsltCompileIdKeyPattern error path (Nick Wellnhofer),<br/>
+ Fix handling of UTF-8 strings in EXSLT crypto module (Nick Wellnhofer),<br/>
+ Fix certain patterns with predicates (Nick Wellnhofer),<br/>
+ Fix direct pattern matching (Nick Wellnhofer),<br/>
+ Fix str:padding to work with UTF-8 strings (Nick Wellnhofer),<br/>
+ EXSLT function str:replace() is broken as-is (Nick Wellnhofer),<br/>
+ Fix a couple of places where (f)printf parameters were broken (Daniel Veillard)<br/>
+ </li>
+
+ <li>Improvements:<br/>
+ Add support timestamps from environment (Daniel Veillard),<br/>
+ Add missing tests to dist tarball (Nick Wellnhofer),<br/>
+ Improve error message in xsltAddTemplate and fix test (Nick Wellnhofer),<br/>
+ Allow REC tests with empty stdout (Nick Wellnhofer),<br/>
+ Fix GPL license in HTML files as well (Nick Wellnhofer),<br/>
+ Fix status message in EXSLT dynamic tests (Nick Wellnhofer),<br/>
+ Add public function macros to xsltlocale.h (Nick Wellnhofer),<br/>
+ Make valgrind tests work with libtool (Nick Wellnhofer),<br/>
+ Add a couple of xsl:number tests (Nick Wellnhofer),<br/>
+ Lower and upper bound for format token "i" (Nick Wellnhofer),<br/>
+ Lower bound for format token "a" (Nick Wellnhofer),<br/>
+ Handle negative xsl:number values (Nick Wellnhofer),<br/>
+ Round xsl:number values to nearest integer (Nick Wellnhofer),<br/>
+ Allow {URI}NCName syntax for user parameters (Nick Wellnhofer),<br/>
+ Fix endTimer parameter type (Nick Wellnhofer),<br/>
+ Fix error messages for unsupported methods (Nick Wellnhofer),<br/>
+ Replace sprintf with snprintf (David Kilzer),<br/>
+ Enforce two digit exponent under MSVC (Nick Wellnhofer),<br/>
+ Rework xsltNumberFormat to fix warning (Nick Wellnhofer),<br/>
+ Fix a couple of GPL licences found in the documentation (Daniel Veillard),<br/>
+ Use hash table to lookup named templates (Christian Ceelen),<br/>
+ Fix to reg tests post 737840 fix (Daniel Veillard),<br/>
+ Don't fail build the man page if xsltproc is not present (Daniel Veillard),<br/>
+ Re-adding xsltproc.1 (Daniel Veillard),<br/>
+ Fix time type in xsltSaveProfiling (Nick Wellnhofer),<br/>
+ Remove unused parameters (Nick Wellnhofer),<br/>
+ Suppress unused variable warning. (Nick Wellnhofer),<br/>
+ Remove unused variable in xsltGenerateIdFunction (Nick Wellnhofer),<br/>
+ Add test case for XPath function args in error case (Nick Wellnhofer),<br/>
+ Add comment about known-to-fail test (Nick Wellnhofer),<br/>
+ Adjust expected test output (Nick Wellnhofer),<br/>
+ Helper functions to evaluate compiled XPath expressions (Nick Wellnhofer),<br/>
+ Add tests for crypto:rc4 (Nick Wellnhofer),<br/>
+ Add first test case for EXSLT crypto module (Nick Wellnhofer),<br/>
+ Separate function for predicate matching in patterns (Nick Wellnhofer),<br/>
+ Initialize pseudo random number generator with current time or optional command line parameter (Nils Werner),<br/>
+ Adding doc update related to 1.1.28 (Daniel Veillard)<br/>
+ </li>
+
+ <li>Cleanups:<br/>
+ Remove bogus test file (Nick Wellnhofer),<br/>
+ Add warning message to expected test output (Nick Wellnhofer)<br/>
+ </li>
+</ul>
+<h3>1.1.28: Nov 21 2012</h3>
+<ul>
+ <li> Portability:<br/>
+ Fix python build by using libxsltmod_la_CPPFLAGS instead of AM_CPPFLAGS (Alexandre Rostovtsev),<br/>
+ configure should be more careful with linker script (Igor Pashev),<br/>
+ add gcrypt library in LIBADD, not LDFLAGS, as recommended (Roumen Petrov)<br/>
+ </li>
+
+ <li> Bug fixes:<br/>
+ Fix generate-id() to avoid generating the same ID (Stewart Brodie),<br/>
+ Fix crash with empty xsl:key/@match attribute (Nick Wellnhofer),<br/>
+ Crash when passing an uninitialized variable to document() (Nick Wellnhofer),<br/>
+ Add missing test docs to EXTRA_DIST (Nick Wellnhofer),<br/>
+ Fix regression: Default namespace not correctly used (Nick Wellnhofer)<br/>
+ </li>
+
+ <li> Cleanups:<br/>
+ Remove xsltTransStorageAdd and xsltTransStorageRemove from symbols.xml (Daniel Veillard),<br/>
+ autogen.sh cleanup (Daniel Richard),<br/>
+ consistent use of xslt processor (Roumen Petrov),<br/>
+ Add object files in tests/plugins to .gitignore (Nick Wellnhofer),<br/>
+ Fix error on bug-165 regression test (Daniel Veillard),<br/>
+ Remove xsltTransStorageAdd and xsltTransStorageRemove (Daniel Veillard),<br/>
+ </li>
+</ul>
+<h3>1.1.27: Sep 12 2012</h3>
+<ul>
+ <li> Portability:<br/>
+ xincludestyle wasn't protected with LIBXML_XINCLUDE_ENABLED (Michael Bonfils),<br/>
+ Portability fix for testThreads.c (IlyaS),<br/>
+ FreeBSD portability fixes (Pedro F. Giffuni),<br/>
+ check for gmtime - on mingw* hosts will enable date-time function (Roumen Petrov),<br/>
+ use only native crypto-API for mingw* hosts (Roumen Petrov),<br/>
+ autogen: Only check for libtoolize (Colin Walters),<br/>
+ minimal mingw support (Roumen Petrov),<br/>
+ configure: acconfig.h is deprecated since autoconf-2.50 (Stefan Kost),<br/>
+ Fix a small out of tree compilation issue (Hao Hu),<br/>
+ Fix python generator to not use deprecated xmllib (Daniel Veillard),<br/>
+ link python module with python library (Frederic Crozat)<br/>
+ </li>
+
+ <li> Documentation:<br/>
+ Tiny doc improvement (Daniel Veillard),<br/>
+ Various documentation fixes for docs on internals (C. M. Sperberg-McQueen)<br/>
+ </li>
+
+ <li> Bug fixes:<br/>
+ Report errors on variable use in key (Daniel Veillard),<br/>
+ The XSLT namespace string is a constant one (Daniel Veillard),<br/>
+ Fix handling of names in xsl:attribute (Nick Wellnhofer),<br/>
+ Reserved namespaces in xsl:element and xsl:attribute (Nick Wellnhofer),<br/>
+ Null-terminate result string of cry:rc4_decrypt (Nick Wellnhofer),<br/>
+ EXSLT date normalization fix (James Muscat),<br/>
+ Exit after compilation of invalid func:result (Nick Wellnhofer),<br/>
+ Fix for EXSLT func:function (Nick Wellnhofer),<br/>
+ Rewrite EXSLT string:replace to be conformant (Nick Wellnhofer),<br/>
+ Avoid a heap use after free error (Chris Evans),<br/>
+ Fix a dictionary string usage (Chris Evans),<br/>
+ Output should not include extraneous newlines when indent is off (Laurence Rowe),<br/>
+ document('') fails to return stylesheets parsed from memory (Jason Viers),<br/>
+ xsltproc should return an error code if xinclude fails (Malcolm Purvis),<br/>
+ Forwards-compatible processing of unknown top level elements (Nick Wellnhofer),<br/>
+ Fix system-property with unknown namespace (Nick Wellnhofer),<br/>
+ Hardening of code checking node types in EXSLT (Daniel Veillard),<br/>
+ Hardening of code checking node types in various entry point (Daniel Veillard),<br/>
+ Cleanup of the pattern compilation code (Daniel Veillard),<br/>
+ Fix default template processing on namespace nodes (Daniel Veillard),<br/>
+ Fix a bug in selecting XSLT elements (Daniel Veillard),<br/>
+ Fixed bug #616839 (Daniel Mustieles),<br/>
+ Fix some case of pattern parsing errors (Abhishek Arya),<br/>
+ preproc: fix the build (Stefan Kost),<br/>
+ Fix a memory leak with xsl:number (Daniel Veillard),<br/>
+ Fix a problem with ESXLT date:add() with January (money_seshu Dronamraju),<br/>
+ Fix a memory leak if compiled with Windows locale support (Daniel Veillard),<br/>
+ Fix generate-id() to not expose object addresses (Daniel Veillard),<br/>
+ Fix curlies support in literals for non-compiled AVTs (Nick Wellnhofer),<br/>
+ Allow whitespace in xsl:variable with select (Nick Wellnhofer),<br/>
+ Small fixes to locale code (Nick Wellnhofer),<br/>
+ Fix bug 602515 (Nick Wellnhofer),<br/>
+ Fix popping of vars in xsltCompilerNodePop (Nick Wellnhofer),<br/>
+ Fix direct pattern matching bug (Nick Wellnhofer)<br/>
+ </li>
+
+ <li> Improvements:<br/>
+ Add the saxon:systemId extension (Mike Hommey),<br/>
+ Add an append mode to document output (Daniel Veillard),<br/>
+ Add new tests to EXTRA_DIST (Nick Wellnhofer),<br/>
+ Test for bug #680920 (Nick Wellnhofer),<br/>
+ fix regresson in Various "make distcheck" and other fixes (Roumen Petrov),<br/>
+ Various "make distcheck" and other fixes (Daniel Richard G),<br/>
+ Fix portability to upcoming libxml2-2.9.0 (Daniel Veillard),<br/>
+ Adding --system flag support to autogen.sh (Daniel Veillard),<br/>
+ Allow per-context override of xsltMaxDepth, introduce xsltMaxVars (Jérôme Carretero),<br/>
+ autogen.sh: Honor NOCONFIGURE environment variable (Colin Walters),<br/>
+ configure: support silent automake rules if possible (Stefan Kost),<br/>
+ Precompile patterns in xsl:number (Nick Wellnhofer),<br/>
+ Fix some warnings in the refactored code (Nick Wellnhofer),<br/>
+ Adding new generated files (Daniel Veillard),<br/>
+ profiling: add callgraph report (Stefan Kost)<br/>
+ </li>
+
+ <li> Cleanups:<br/>
+ Big space and tabs cleanup (Daniel Veillard),<br/>
+ Fix authors list (Daniel Veillard),<br/>
+ Cleanups some of the test makefiles (Daniel Richard),<br/>
+ Remove .cvsignore files which are not needed anymore (Daniel Veillard),<br/>
+ Cleanup some misplaced spaces and tabs (Daniel Veillard),<br/>
+ Augment list of ignored files (Daniel Veillard),<br/>
+ configure: remove checks for isinf and isnan as those are not used anyway (Stefan Kost),<br/>
+ Point to GIT for source code and a bit of cleanup (Daniel Veillard),<br/>
+ Get rid of specific build setup and STATIC_BINARIES (Daniel Veillard)<br/>
+ </li>
+</ul>
+<h3>1.1.26: Sep 24 2009</h3>
+<ul>
+ <li> Improvement:
+ Add xsltProcessOneNode to exported symbols for lxml (Daniel Veillard)
+ </li>
+ <li> Bug fixes:
+ Fix an idness generation problem (Daniel Veillard),
+ 595612 Try to fix some locking problems (Daniel Veillard),
+ Fix a crash on misformed imported stylesheets (Daniel Veillard)
+ </li>
+</ul>
+<h3>1.1.25: Sep 17 2009</h3>
+<ul>
+ <li> Features:
+ Add API versioning and various cleanups (Daniel Veillard),
+ xsl:sort lang support using the locale (Nick Wellnhofer and Roumen Petrov)
+ </li>
+ <li> Documentation:
+ Fix the download links for Solaris (Daniel Veillard),
+ Fix makefile and spec file to include doc in rpm (Daniel Veillard)
+ </li>
+ <li> Portability:
+ Make sure testThreads is linked with pthreads (Daniel Veillard),
+ Fix potential crash on debug of extensions Solaris (Ben Walton),
+ applied patch from Roumen Petrov for mingw cross compilation problems (Roumen Petrov),
+ patch from Richard Jones to build shared libs with MinGW cross-compiler (Richard Jones),
+ fix include path when compiling with MinGW (Roumen Petrov),
+ portability fixes ( Nick Wellnhofer and Roumen Petrov)
+ </li>
+ <li> Bug fixes:
+ Big fixes of pattern compilations (Nick Wellnhofer),
+ Fix uses of xmlAddChild for error handling (Daniel Veillard),
+ Detect deep recusion on function calls (Daniel Veillard),
+ Avoid an error in namespace generation (Martin),
+ Fix importing of encoding from included stylesheets (Nick Wellnhofer),
+ Fix problems with embedded stylesheets and namespaces (Martin),
+ QName parsing fix for patterns (Martin),
+ Crash compiling stylesheet with DTD (Martin),
+ Fix xsl:strip-space with namespace and wildcard (Nick Wellnhofer),
+ Fix a mutex deadlock on unregistered extensions (Nix),
+ 567192 xsltproc --output option ignore --xinclude (Joachim Breitner),
+ Fix redundant headers in list (Daniel Veillard),
+ 134754 Configure's --with-html-dir related fixes (Julio M. Merino Vidal),
+ 305913 a serious problem in extensions reentrancy (Daniel Veillard),
+ Fix an idness issue when building the tree (Daniel Veillard),
+ Fixed indexing error reported by Ron Burk on the mailing list. (William M. Brack),
+ prevent some unchecked pointer accesses (Jake Goulding),
+ fix for CVE-2008-2935 libexslt RC4 encryption/decryption functions Daniel (Daniel Veillard),
+ avoid a quadratic behaviour when hitting duplicates (Daniel Veillard),
+ 544829 fixed option --with-debugger (Arun Ragnavan),
+ 541965 fixed incorrect argument popping in exsltMathAtan2Function (William M. Brack),
+ fix problem with string check for element-available (Ron Burk),
+ 539741 added code to handle literal within an AVT (William M. Brack)
+ </li>
+ <li> Improvements:
+ Allow use of EXSLT outside XSLT (Martin),
+ Support Esperanto locale (Nick Wellnhofer),
+ Change how attributes are copied for id and speed (Daniel Veillard),
+ Add API versioning and various cleanups (Daniel Veillard),
+ Adding a test program to check thread reentrancy (Daniel Veillard),
+ big patch from finishing xsl:sort lang support (Roumen Petrov),
+ add xsl:sort lang support using the locale (Nick Wellnhofer)
+ </li>
+ <li> Cleanups:
+ Label xsltProcessOneNode as static (Daniel Veillard),
+ git setup (Daniel Veillard),
+ fixed typo detected by new libxml2 code (William M. Brack),
+ xsltExtFunctionLookup was defined but never implemented (Ralf Junker)
+ </li>
+</ul>
+<h3>1.1.24: May 13 2008</h3>
+<ul>
+ <li>Documentation: man page fix (Vincent Lefevre).</li>
+ <li>Bug fixes: pattern bug fix, key initialization problems, exclusion of
+ unknown namespaced element on top of stylesheets, python generator
+ syntactic cleanup (Martin)</li>
+</ul>
+<h3>1.1.23: Apr 8 2008</h3>
+<ul>
+ <li>Documentation: fix links for Cygwin DocBook setup (Philippe Bourcier),
+ xsltParseStylesheetDoc doc fix (Jason Viers), fix manpage default
+ maxdepth value </li>
+ <li>Bug fixes: python segfault (Daniel Gryniewicz), week-in-year bug fix
+ (Maurice van der Pot), fix python iterator problem (William Brack),
+ avoid garbage collection problems on str:tokenize and str:split
+ and function results (William Brack and Peter Pawlowski)
+ superfluous re-generation of keys (William Brack), remove superfluous
+ code in xsltExtInitTest (Tony Graham), func:result segfault fix
+ (William Brack), timezone offset problem (Peter Pawlowski),</li>
+ <li>Portability fixes: old gcrypt support fix (Brent Cowgill), Python
+ portability patch (Stephane Bidoul), VS 2008 fix (Rob Richard) </li>
+</ul>
+<h3>1.1.22: Aug 23 2007</h3>
+<ul>
+ <li>Bug fixes: RVT cleanup problems (William Brack), exclude-result-prefix
+ bug (William Brack), stylesheet compilation error handling (Rob Richards).
+ </li>
+ <li>Portability fixes: improve build with VS2005 (Rob Richards),
+ fixing build on AIX (Bjorn Wiberg), fix the security file checks on
+ Windows (Roland Schwarz and Rob Richards). </li>
+ <li>Improvement: add an --encoding option to xsltproc (Drazen Kacar). </li>
+</ul>
+<h3>1.1.21: Jun 12 2007</h3>
+<ul>
+ <li>Bug fixes: out of memory allocation errors (William Brack),
+ namespace problem on compound predicates (William Brack),
+ python space/tab inconsistencies (Andreas Hanke), hook xsl:message
+ to per transformation error callbacks (Shaun McCance),
+ cached RVT problem (William Brack), XPath context maintainance
+ on choose (William Brack), memory leaks in the math module (William
+ Brack), exclude-result-prefix induced namespace problem (William
+ Brack)</li>
+ <li>Build: configure setup for TRIO_REPLACE_STDIO (William Brack)
+ <li>Documentation: updated after change from CVs to SVN (William Brack)</li>
+</ul>
+<h3>1.1.20: Jan 17 2007</h3>
+<ul>
+ <li>Portability fixes: strict aliasing fix (Marcus Meissner), BSD portability
+ patches (Roland Illig)</li>
+ <li>Bug fixes: Result Value Tree handling fix (William Brack), function
+ parameters fix (William), uninitialized variable (Kjartan Maraas),
+ empty text node handling (William), plugin support and test fixes (William),
+ fragment support fixes (William)</li>
+ <li>Improvements: python stylesheet compare and transform context
+ access (Nic Ferrier), EXSLT string replace support (Joel Reed),
+ xsltproc better low level error handling (Mike Hommey and William)</li>
+</ul>
+<h3>1.1.19: Nov 29 2006</h3>
+<ul>
+ <li>Bug fixes: entities within attributes (William Brack), Python detection
+ problem (Joseph Sacco), in-scope namespace bug (Mike Hommey), Result
+ value tree caching bug (William Brack)</li>
+</ul>
+<h3>1.1.18: Oct 26 2006</h3>
+<ul>
+ <li>portability and build fixes: DESTDIR problem, build paths in python
+ shared lib, compile when libxml2 doesn't support XInclude (Gary Coady).</li>
+ <li>bug fixes: a number of namespace related bugs (Kasimier Buchcik),
+ parameters bugs (Kasimier Buchcik), proximity position in predicates
+ of match patterns (Kasimier), exslt-node-set troubles with strings
+ (Kasimier), CDATA serialization, Python floats and booleans XPath
+ conversions, XInclude support fixes, RVT cleanup problem (William Brack
+ and Kasimier), attribute checking in stylesheets (Kasimier), xsltForEach
+ context problem (Kasimier), security check should pass full URLs (Shane
+ Corgatelli), security cleanup patch (Mikhail Zabaluev), some python
+ accessor for stylesheet were broken, memory errors when compiling
+ stylesheets (Mike Hommey), EXSLT current date end-of-month problem
+ (William Brack).</li>
+ <li>improvements: refactoring of namespace handling, value-of impleemntation
+ and template internal processing (Kasimier Buchcik), new xsltproc
+ flag to apply Xinclude to stylesheets.</li>
+ <li>documentation: xsltproc man pages (Daniel Leidert), tests updates
+ (William Brack), various typo fixes (Daniel Leidert), comments on
+ versions macros (Peter Breitenlohner).</li>
+</ul>
+<h3>1.1.17: Jun 6 2006</h3>
+<ul>
+ <li>portability fixes: python detection</li>
+ <li>bug fixes: some regression tests, attribute/namespaces output (Kasimier
+ Buchcik), problem in mixed xsl:value-of and xsl:text uses (Kasimier)</li>
+ <li>improvements: internal refactoring (Kasimier Buchcik), use of the XPath
+ object cache in libxml2-2.6.25 (Kasimier)</li>
+</ul>
+
+<h3>1.1.16: May 01 2006</h3>
+<ul>
+ <li>portability fixes: EXSLT date/time on Solaris and IRIX (Albert Chin),
+ HP-UX build (Albert Chin),
+ <li>build fixes: Python detection(Joseph Sacco), plugin configurei
+ (Joel Reed)</li>
+ <li>bug fixes: pattern compilation fix(William Brack), EXSLT date/time
+ fix (Thomas Broyer), EXSLT function bug, potential loop on variable
+ eval, startup race (Christopher Palmer), debug statement left in python
+ (Nic Ferrier), various cleanup based on Coverity reports), error on
+ Out of memory condition (Charles Hardin), various namespace prefixes
+ fixes (Kasimier Buchcik), </li>
+ <li>improvement: speed up sortingi, start of internals refactoring (Kasimier
+ Buchcik)</li>
+ <li>documentation: man page fixes and updates (Daniel Leidert)
+</ul>
+
+<h3>1.1.15: Sep 04 2005</h3>
+<ul>
+ <li>build fixes: Windows build cleanups and updates (Igor Zlatkovic),
+ remove jhbuild warnings</li>
+ <li>bug fixes: negative number formatting (William Brack), number
+ formatting per mille definition (William Brack), XInclude default values
+ (William), text copy bugs (William), bug related to xmlXPathContext size,
+ reuse libxml2 memory management for text nodes, dictionary text bug,
+ forbid variables in match (needs libxml2-2.6.21)</li>
+ <li>improvements: EXSLT dyn:map (Mark Vakoc),</li>
+ <li>documentation: EXSLT date and time functions namespace in man (Jonathan
+ Wakely)</li>
+</ul>
+
+<h3>1.1.14: Apr 02 2005</h3>
+<ul>
+ <li>bug fixes: text node on stylesheet document without a dictionary
+ (William Brack), more checking of XSLT syntax, calling xsltInit()
+ multiple times, mode values interning raised by Mark Vakoc, bug in
+ pattern matching with ancestors, bug in patterna matching with cascading
+ select, xinclude and document() problem, build outside of source tree
+ (Mike Castle)</li>
+ <li>improvement: added a --nodict mode to xsltproc to check problems for
+ docuemtns without dictionaries</li>
+</ul>
+
+<h3>1.1.13: Mar 13 2005</h3>
+<ul>
+ <li>build fixes: 64bits cleanup (William Brack), python 2.4 test (William),
+ LIBXSLT_VERSION_EXTRA on Windows (William), Windows makefiles fixes (Joel
+ Reed), libgcrypt-devel requires for RPM spec.</li>
+ <li>bug fixes: exslt day-of-week-in-month (Sal Paradise), xsl:call-template
+ should not change the current template rule (William Brack), evaluation
+ of global variables (William Brack), RVT's in XPath predicates (William),
+ namespace URI on template names (Mark Vakoc), stat() for Windows patch
+ (Aleksey Gurtovoy), pattern expression fixes (William Brack), out of
+ memory detection misses (William), parserOptions propagation (William),
+ exclude-result-prefixes fix (William), // patten fix (William).</li>
+ <li>extensions: module support (Joel Reed), dictionary based speedups
+ trying to get rid of xmlStrEqual as much as possible.</li>
+ <li>documentation: added Wiki (Joel Reed)</li>
+</ul>
+
+<h3>1.1.12: Oct 29 2004</h3>
+<ul>
+ <li>build fixes: warnings removal (William).</li>
+ <li>bug fixes: attribute document pointer fix (Mark Vakoc), exslt date
+ negative periods (William Brack), generated tree structure fixes,
+ namespace lookup fix, use reentrant gmtime_r (William Brack),
+ exslt:funtion namespace fix (William), potential NULL pointer reference
+ (Dennis Dams, William), force string interning on generated
+ documents.</li>
+ <li>documentation: update of the second tutorial (Panagiotis Louridas), add
+ exslt doc in rpm packages, fix the xsltproc man page.</li>
+</ul>
+
+<h3>1.1.11: Sep 29 2004</h3>
+<ul>
+ <li>bug fixes: xsl:include problems (William Brack), UTF8 number pattern
+ (William), date-time validation (William), namespace fix (William),
+ various Exslt date fixes (William), error callback fixes, leak with
+ namespaced global variable, attempt to fix a weird problem #153137</li>
+ <li>improvements: exslt:date-sum tests (Derek Poon)</li>
+ <li>documentation: second tutorial by Panagiotis Lourida</li>
+</ul>
+
+<h3>1.1.10: Aug 31 2004</h3>
+<ul>
+ <li>build fix: NUL in c file blocking compilation on Solaris, Windows build
+ (Igor Zlatkovic)</li>
+ <li>fix: key initialization problem (William Brack)</li>
+ <li>documentation: fixed missing man page description for --path</li>
+</ul>
+
+<h3>1.1.9: Aug 22 2004</h3>
+<ul>
+ <li>build fixes: missing tests (William Brack), Python dependancies, Python
+ on 64bits boxes, --with-crypto flag (Rob Richards),</li>
+ <li>fixes: RVT key handling (William), Python binding (William and Sitsofe
+ Wheeler), key and XPath troubles (William), template priority on imports
+ (William), str:tokenize with empty strings (William), #default namespace
+ alias behaviour (William), doc ordering missing for main document
+ (William), 64bit bug (Andreas Schwab)</li>
+ <li>improvements: EXSLT date:sum added (Joel Reed), hook for document
+ loading for David Hyatt, xsltproc --nodtdattr to avoid defaulting DTD
+ attributes, extend xsltproc --version with CVS stamp (William).</li>
+ <li>Documentation: web page problem reported by Oliver Stoeneberg</li>
+</ul>
+
+<h3>1.1.8: July 5 2004</h3>
+<ul>
+ <li>build fixes: Windows runtime options (Oliver Stoeneberg), Windows
+ binary package layout (Igor Zlatkovic), libgcrypt version test and link
+ (William)</li>
+ <li>documentation: fix libxslt namespace name in doc (William)</li>
+ <li>bug fixes: undefined namespace message (William Brack), search engine
+ (William), multiple namespace fixups (William), namespace fix for key
+ evaluation (William), Python memory debug bindings,</li>
+ <li>improvements: crypto extensions for exslt (Joel Reed, William)</li>
+</ul>
+
+<h3>1.1.7: May 17 2004</h3>
+<ul>
+ <li>build fix: warning about localtime_r on Solaris</li>
+ <li>bug fix: UTF8 string tokenize (William Brack), subtle memory
+ corruption, linefeed after comment at document level (William),
+ disable-output-escaping problem (William), pattern compilation in deep
+ imported stylesheets (William), namespace extension prefix bug,
+ libxslt.m4 bug (Edward Rudd), namespace lookup for attribute, namespaced
+ DOCTYPE name</li>
+</ul>
+
+<h3>1.1.6: Apr 18 2004</h3>
+<ul>
+ <li>2 bug fixes about keys fixed one by Mark Vakoc</li>
+</ul>
+
+<h3>1.1.5: Mar 23 2004</h3>
+<ul>
+ <li>performance: use dictionary lookup for variables</li>
+ <li>remove use of _private from source documents</li>
+ <li>cleanup of "make tests" output</li>
+ <li>bugfixes: AVT in local variables, use localtime_r to avoid thread
+ troubles (William), dictionary handling bug (William), limited number of
+ stubstitutions in AVT (William), tokenize fix for UTF-8 (William),
+ superfluous namespace (William), xsltproc error code on
+ &lt;xsl:message&gt; halt, OpenVMS fix, dictionary reference counting
+ change.</li>
+</ul>
+
+<h3>1.1.4: Feb 23 2004</h3>
+<ul>
+ <li>bugfixes: attributes without doc (Mariano Suárez-Alvarez), problem with
+ Yelp, extension problem</li>
+ <li>display extension modules (Steve Little)</li>
+ <li>Windows compilation patch (Mark Vadoc), Mingw (Mikhail Grushinskiy)</li>
+</ul>
+
+<h3>1.1.3: Feb 16 2004</h3>
+<ul>
+ <li>Rewrote the Attribute Value Template code, new XPath compilation
+ interfaces, dictionary reuses for XSLT with potential for serious
+ performance improvements.</li>
+ <li>bug fixes: portability (William Brack), key() in node-set() results
+ (William), comment before doctype (William), math and node-set() problems
+ (William), cdata element and default namespace (William), behaviour on
+ unknown XSLT elements (Stefan Kost), priority of "//foo" patterns
+ (William), xsl:element and xsl:attribute QName check (William), comments
+ with -- (William), attribute namespace (William), check for ?&gt; in PI
+ (William)</li>
+ <li>Documentations: cleanup (John Fleck and William)</li>
+ <li>Python: patch for OS-X (Gianni Ceccarelli), enums export (Stephane
+ bidoul)</li>
+</ul>
+
+<h3>1.1.2: Dec 24 2003</h3>
+<ul>
+ <li>Documentation fixes (John Fleck, William Brack), EXSLT documentation
+ (William Brack)</li>
+ <li>Windows compilation fixes for MSVC and Mingw (Igor Zlatkovic)</li>
+ <li>Bug fixes: exslt:date returning NULL strings (William Brack),
+ namespaces output (William Brack), key and namespace definition problem,
+ passing options down to the document() parser, xsl:number fixes (William
+ Brack)</li>
+</ul>
+
+<h3>1.1.1: Dec 10 2003</h3>
+<ul>
+ <li>code cleanup (William Brack)</li>
+ <li>Windows: Makefile improvements (Igor Zlatkovic)</li>
+ <li>documentation improvements: William Brack, libexslt man page (Jonathan
+ Wakely)</li>
+ <li>param in EXSLT functions (Shaun McCance)</li>
+ <li>XSLT debugging improvements (Mark Vakoc)</li>
+ <li>bug fixes: number formatting (Bjorn Reese), exslt:tokenize (William
+ Brack), key selector parsing with | reported by Oleg Paraschenko,
+ xsl:element with computed namespaces (William Brack), xslt:import/include
+ recursion detection (William Brack), exslt:function used in keys (William
+ Brack), bug when CDATA_SECTION are foun in the tree (William Brack),
+ entities handling when using XInclude.</li>
+</ul>
+
+<h3>1.1.0: Nov 4 2003</h3>
+<ul>
+ <li>Removed DocBook SGML broken support</li>
+ <li>fix xsl:key to work with PIs</li>
+ <li>Makefile and build improvement (Graham Wilson), build cleanup (William
+ Brack), macro fix (Justin Fletcher), build outside of source tree (Roumen
+ Petrov)</li>
+ <li>xsltproc option display fix (Alexey Efimov), --load-trace (Crutcher
+ Dunnavant)</li>
+ <li>Python: never use stdout for error</li>
+ <li>extension memory error fix (Karl Eichwalder)</li>
+ <li>header path fixes (Steve Ball)</li>
+ <li>added saxon:line-number() to libexslt (Brett Kail)</li>
+ <li>Fix some tortuous template problems when using predicates (William
+ Brack)</li>
+ <li>Debugger status patch (Kasimier Buchcik)</li>
+ <li>Use new libxml2-2.6.x APIs for faster processing</li>
+ <li>Make sure xsl:sort is empty</li>
+ <li>Fixed a bug in default processing of attributes</li>
+ <li>Removes the deprecated breakpoint library</li>
+ <li>detect invalid names on templates (William Brack)</li>
+ <li>fix exslt:document (and similar) base handling problem</li>
+</ul>
+
+<h3>1.0.33: Sep 12 2003</h3>
+
+<p>This is a bugfix only release</p>
+<ul>
+ <li>error message missing argument (William Brack)</li>
+ <li>mode not cascaded in template fallbacks (William Brack)</li>
+ <li>catch redefinition of parameter/variables (William Brack)</li>
+ <li>multiple keys with same namespace name (William Brack)</li>
+ <li>patch for compilation using MingW on Windows (Mikhail Grushinskiy)</li>
+ <li>header export macros for Windows (Igor Zlatkovic)</li>
+ <li>cdata-section-elements handling of namespaced names</li>
+ <li>compilation without libxml2 XPointer support (Mark Vadoc)</li>
+ <li>apply-templates crash (William Brack)</li>
+ <li>bug with imported templates (William Brack)</li>
+ <li>imported attribute-sets merging bug (DocBook) (William Brack)</li>
+</ul>
+
+<h3>1.0.32: Aug 9 2003</h3>
+<ul>
+ <li>bugfixes: xsltSaveResultToFile() python binding (Chris Jaeger), EXSLT
+ function (William Brack), RVT for globals (William Brack), EXSLT date
+ (William Brack),
+ <p>speed of large text output, xsl:copy with attributes, strip-space and
+ namespaces prefix, fix for --path xsltproc option, EXST:tokenize (Shaun
+ McCance), EXSLT:seconds (William Brack), sort with multiple keys (William
+ Brack), checking of { and } for attribute value templates (William
+ Brack)</p>
+ </li>
+ <li>Python bindings for extension elements (Sean Treadway)</li>
+ <li>EXSLT:split added (Shaun McCance)</li>
+ <li>portability fixes for HP-UX/Solaris/IRIX (William Brack)</li>
+ <li>doc cleanup</li>
+</ul>
+
+<h3>1.0.31: Jul 6 2003</h3>
+<ul>
+ <li>bugfixes: xsl:copy on namespace nodes, AVT for xsl:sort order, fix for
+ the debugger (Keith Isdale), output filename limitation, trio.h and
+ triodef.h added (Albert Chin), EXSLT node-set (Peter Breitenlohner),
+ xsltChoose and whitespace (Igor Zlatkovic),
+ <p>stylesheet compilation (Igor Zlatkovic), NaN and sort (William Brack),
+ RVT bug introduced in 1.0.30</p>
+ </li>
+ <li>avoid generating &amp;quot; (fix in libxml2-2.5.8)</li>
+ <li>fix 64bit cleaness problem and compilation troubles introduced in
+ 1.0.30</li>
+ <li>Windows makefile generation (Igor Zlatkovic)</li>
+ <li>HP-UX portability fix</li>
+</ul>
+
+<h3>1.0.30: May 4 2003</h3>
+<ul>
+ <li>Fixes and new APIs to handle Result Value Trees and avoid leaks</li>
+ <li>Fixes for: EXSLT math pow() function (Charles Bozeman), global
+ parameter and global variables mismatch, a segfault on pattern
+ compilation errors, namespace copy in xsl:copy-of, python generator
+ problem, OpenVMS trio update, premature call to xsltFreeStackElem (Igor),
+ current node when templates applies to attributes</li>
+</ul>
+
+<h3>1.0.29: Apr 1 2003</h3>
+<ul>
+ <li>performance improvements especially for large flat documents</li>
+ <li>bug fixes: Result Value Tree handling, XML IDs, keys(), extra namespace
+ declarations with xsl:elements.</li>
+ <li>portability: python and trio fixes (Albert Chin), python on Solaris
+ (Ben Phillips)</li>
+</ul>
+
+<h3>1.0.28: Mar 24 2003</h3>
+<ul>
+ <li>fixed node() in patterns semantic.</li>
+ <li>fixed a memory access problem in format-number()</li>
+ <li>fixed stack overflow in recursive global variable or params</li>
+ <li>cleaned up Result Value Tree handling, and fixed a couple of old bugs
+ in the process</li>
+</ul>
+
+<h3>1.0.27: Feb 24 2003</h3>
+<ul>
+ <li>bug fixes: spurious xmlns:nsX="" generation, serialization bug (in
+ libxml2), a namespace copy problem, errors in the RPM spec prereqs</li>
+ <li>Windows path canonicalization and document cache fix (Igor)</li>
+</ul>
+
+<h3>1.0.26: Feb 10 2003</h3>
+<ul>
+ <li>Fixed 3 serious bugs in document() and stylesheet compilation which
+ could lead to a crash</li>
+</ul>
+
+<h3>1.0.25: Feb 5 2003</h3>
+<ul>
+ <li>Bug fix: double-free for standalone stylesheets introduced in 1.0.24, C
+ syntax pbm, 3 bugs reported by Eric van der Vlist</li>
+ <li>Some XPath and XInclude related problems were actually fixed in
+ libxml2-2.5.2</li>
+ <li>Documentation: emphasize taht --docbook is not for XML docs.</li>
+</ul>
+
+<h3>1.0.24: Jan 14 2003</h3>
+<ul>
+ <li>bug fixes: imported global varables, python bindings (Stéphane Bidoul),
+ EXSLT memory leak (Charles Bozeman), namespace generation on
+ xsl:attribute, space handling with imports (Daniel Stodden),
+ extension-element-prefixes (Josh Parsons), comments within xsl:text (Matt
+ Sergeant), superfluous xmlns generation, XInclude related bug for
+ numbering, EXSLT strings (Alexey Efimov), attribute-sets computation on
+ imports, extension module init and shutdown callbacks not called</li>
+ <li>HP-UX portability (Alexey Efimov), Windows makefiles (Igor and Stephane
+ Bidoul), VMS makefile updates (Craig A. Berry)</li>
+ <li>adds xsltGetProfileInformation() (Michael Rothwell)</li>
+ <li>fix the API generation scripts</li>
+ <li>API to provide the sorting routines (Richard Jinks)</li>
+ <li>added XML description of the EXSLT API</li>
+ <li>added ESXLT URI (un)escaping (Jörg Walter)</li>
+ <li>Some memory leaks have been found and fixed</li>
+ <li>document() now support fragment identifiers in URIs</li>
+</ul>
+
+<h3>1.0.23: Nov 17 2002</h3>
+<ul>
+ <li>Windows build cleanup (Igor)</li>
+ <li>Unix build and RPM packaging cleanup</li>
+ <li>Improvement of the python bindings: extension functions and activating
+ EXSLT</li>
+ <li>various bug fixes: number formatting, portability for bounded string
+ functions, CData nodes, key(), @*[...] patterns</li>
+ <li>Documentation improvements (John Fleck)</li>
+ <li>added libxslt.m4 (Thomas Schraitle)</li>
+</ul>
+
+<h3>1.0.22: Oct 18 2002</h3>
+<ul>
+ <li>Updates on the Windows Makefiles</li>
+ <li>Added a security module, and a related set of new options to
+ xsltproc</li>
+ <li>Allowed per transformation error handler.</li>
+ <li>Fixed a few bugs: node() semantic, URI escaping, media-type, attribute
+ lists</li>
+</ul>
+
+<h3>1.0.21: Sep 26 2002</h3>
+<ul>
+ <li>Bug fixes: match="node()", date:difference() (Igor and Charlie
+ Bozeman), disable-output-escaping</li>
+ <li>Python bindings: style.saveResultToString() from Ralf Mattes</li>
+ <li>Logos from Marc Liyanage</li>
+ <li>Mem leak fix from Nathan Myers</li>
+ <li>Makefile: DESTDIR fix from Christophe Merlet, AMD x86_64 (Mandrake),
+ Windows (Igor), Python detection</li>
+ <li>Documentation improvements: John Fleck</li>
+</ul>
+
+<h3>1.0.20: Aug 23 2002</h3>
+<ul>
+ <li>Windows makefile updates (Igor) and x86-64 (Frederic Crozat)</li>
+ <li>fixed HTML meta tag saving for Mac/IE users</li>
+ <li>possible leak patches from Nathan Myers</li>
+ <li>try to handle document('') as best as possible depending in the
+ cases</li>
+ <li>Fixed the DocBook stylesheets handling problem</li>
+ <li>Fixed a few XSLT reported errors</li>
+</ul>
+
+<h3>1.0.19: July 6 2002</h3>
+<ul>
+ <li>EXSLT: dynamic functions and date support bug fixes (Mark Vakoc)</li>
+ <li>xsl:number fix: Richard Jinks</li>
+ <li>xsl:format-numbers fix: Ken Neighbors</li>
+ <li>document('') fix: bug pointed by Eric van der Vlist</li>
+ <li>xsl:message with terminate="yes" fixes: William Brack</li>
+ <li>xsl:sort order support added: Ken Neighbors</li>
+ <li>a few other bug fixes, some of them requiring the latest version of
+ libxml2</li>
+</ul>
+
+<h3>1.0.18: May 27 2002</h3>
+<ul>
+ <li>a number of bug fixes: attributes, extra namespace declarations
+ (DocBook), xsl:include crash (Igor), documentation (Christian Cornelssen,
+ Charles Bozeman and Geert Kloosterman), element-available (Richard
+ Jinks)</li>
+ <li>xsltproc can now list teh registered extensions thanks to Mark
+ Vakoc</li>
+ <li>there is a new API to save directly to a string
+ xsltSaveResultToString() by Morus Walter</li>
+ <li>specific error registration function for the python API</li>
+</ul>
+
+<h3>1.0.17: April 29 2002</h3>
+<ul>
+ <li>cleanup in code, XSLT debugger support and Makefiles for Windows by
+ Igor</li>
+ <li>a C++ portability fix by Mark Vakoc</li>
+ <li>EXSLT date improvement and regression tests by Charles Bozeman</li>
+ <li>attempt to fix a bug in xsltProcessUserParamInternal</li>
+</ul>
+
+<h3>1.0.16: April 15 2002</h3>
+<ul>
+ <li>Bug fixes: strip-space, URL in HTML output, error when xsltproc can't
+ save</li>
+ <li>portability fixes: OSF/1, IEEE on alphas, Windows, Python bindings</li>
+</ul>
+
+<h3>1.0.15: Mar 25 2002</h3>
+<ul>
+ <li>Bugfixes: XPath, python Makefile, recursive attribute sets, @foo[..]
+ templates</li>
+ <li>Debug of memory alocation with valgind</li>
+ <li>serious profiling leading to significant improvement for DocBook
+ processing</li>
+ <li>revamp of the Windows build</li>
+</ul>
+
+<h3>1.0.14: Mar 18 2002</h3>
+<ul>
+ <li>Improvement in the XPath engine (libxml2-2.4.18)</li>
+ <li>Nasty bug fix related to exslt:node-set</li>
+ <li>Fixed the python Makefiles, cleanup of doc comments, Windows
+ portability fixes</li>
+</ul>
+
+<h3>1.0.13: Mar 8 2002</h3>
+<ul>
+ <li>a number of bug fixes including "namespace node have no parents"</li>
+ <li>Improvement of the Python bindings</li>
+ <li>Charles Bozeman provided fixes and regression tests for exslt date
+ functions.</li>
+</ul>
+
+<h3>1.0.12: Feb 11 2002</h3>
+<ul>
+ <li>Fixed the makefiles especially the python module ones</li>
+ <li>half a dozen bugs fixes including 2 old ones</li>
+</ul>
+
+<h3>1.0.11: Feb 8 2002</h3>
+<ul>
+ <li>Change of Licence to the <a
+ href="http://www.opensource.org/licenses/mit-license.html">MIT
+ Licence</a></li>
+ <li>Added a beta version of the Python bindings, including support to
+ extend the engine with functions written in Python</li>
+ <li>A number of bug fixes</li>
+ <li>Charlie Bozeman provided more EXSLT functions</li>
+ <li>Portability fixes</li>
+</ul>
+
+<h3>1.0.10: Jan 14 2002</h3>
+<ul>
+ <li>Windows fixes for Win32 from Igor</li>
+ <li>Fixed the Solaris compilation trouble (Albert)</li>
+ <li>Documentation changes and updates: John Fleck</li>
+ <li>Added a stringparam option to avoid escaping hell at the shell
+ level</li>
+ <li>A few bug fixes</li>
+</ul>
+
+<h3>1.0.9: Dec 7 2001</h3>
+<ul>
+ <li>Makefile patches from Peter Williams</li>
+ <li>attempt to fix the compilation problem associated to prelinking</li>
+ <li>obsoleted libxsltbreakpoint now deprecated and frozen to 1.0.8 API</li>
+ <li>xsltproc return codes are now significant, John Fleck updated the
+ documentation</li>
+ <li>patch to allow as much as 40 steps in patterns (Marc Tardif), should be
+ made dynamic really</li>
+ <li>fixed a bug raised by Nik Clayton when using doctypes with HTML
+ output</li>
+ <li>patches from Keith Isdale to interface with xsltdebugger</li>
+</ul>
+
+<h3>1.0.8: Nov 26 2001</h3>
+<ul>
+ <li>fixed an annoying header problem, removed a few bugs and some code
+ cleanup</li>
+ <li>patches for Windows and update of Windows Makefiles by Igor</li>
+ <li>OpenVMS port instructions from John A Fotheringham</li>
+ <li>fixed some Makefiles annoyance and libraries prelinking
+ information</li>
+</ul>
+
+<h3>1.0.7: Nov 10 2001</h3>
+<ul>
+ <li>remove a compilation problem with LIBXSLT_PUBLIC</li>
+ <li>Finishing the integration steps for Keith Isdale debugger</li>
+ <li>fixes the handling of indent="no" on HTML output</li>
+ <li>fixes on the configure script and RPM spec file</li>
+</ul>
+
+<h3>1.0.6: Oct 30 2001</h3>
+<ul>
+ <li>bug fixes on number formatting (Thomas), date/time functions (Bruce
+ Miller)</li>
+ <li>update of the Windows Makefiles (Igor)</li>
+ <li>fixed DOCTYPE generation rules for HTML output (me)</li>
+</ul>
+
+<h3>1.0.5: Oct 10 2001</h3>
+<ul>
+ <li>some portability fixes, including Windows makefile updates from
+ Igor</li>
+ <li>fixed a dozen bugs on XSLT and EXSLT (me and Thomas Broyer)</li>
+ <li>support for Saxon's evaluate and expressions extensions added (initial
+ contribution from Darren Graves)</li>
+ <li>better handling of XPath evaluation errors</li>
+</ul>
+
+<h3>1.0.4: Sep 12 2001</h3>
+<ul>
+ <li>Documentation updates from John fleck</li>
+ <li>bug fixes (DocBook FO generation should be fixed) and portability
+ improvements</li>
+ <li>Thomas Broyer improved the existing EXSLT support and added String,
+ Time and Date core functions support</li>
+</ul>
+
+<h3>1.0.3: Aug 23 2001</h3>
+<ul>
+ <li>XML Catalog support see the doc</li>
+ <li>New NaN/Infinity floating point code</li>
+ <li>A few bug fixes</li>
+</ul>
+
+<h3>1.0.2: Aug 15 2001</h3>
+<ul>
+ <li>lot of bug fixes, increased the testsuite</li>
+ <li>a large chunk of EXSLT is implemented</li>
+ <li>improvements on the extension framework</li>
+ <li>documentation improvements</li>
+ <li>Windows MSC projects files should be up-to-date</li>
+ <li>handle attributes inherited from the DTD by default</li>
+</ul>
+
+<h3>1.0.1: July 24 2001</h3>
+<ul>
+ <li>initial EXSLT framework</li>
+ <li>better error reporting</li>
+ <li>fixed the profiler on Windows</li>
+ <li>bug fixes</li>
+</ul>
+
+<h3>1.0.0: July 10 2001</h3>
+<ul>
+ <li>a lot of cleanup, a lot of regression tests added or fixed</li>
+ <li>added a documentation for <a href="extensions.html">writing
+ extensions</a></li>
+ <li>fixed some variable evaluation problems (with William)</li>
+ <li>added profiling of stylesheet execution accessible as the xsltproc
+ --profile option</li>
+ <li>fixed element-available() and the implementation of the various
+ chunking methods present, Norm Walsh provided a lot of feedback</li>
+ <li>exclude-result-prefixes and namespaces output should now work as
+ expected</li>
+ <li>added support of embedded stylesheet as described in section 2.7 of the
+ spec</li>
+</ul>
+
+<h3>0.14.0: July 5 2001</h3>
+<ul>
+ <li>lot of bug fixes, and code cleanup</li>
+ <li>completion of the little XSLT-1.0 features left unimplemented</li>
+ <li>Added and implemented the extension API suggested by Thomas Broyer</li>
+ <li>the Windows MSC environment should be complete</li>
+ <li>tested and optimized with a really large document (DocBook Definitive
+ Guide) libxml/libxslt should really be faster on serious workloads</li>
+</ul>
+
+<h3>0.13.0: June 26 2001</h3>
+<ul>
+ <li>lots of cleanups</li>
+ <li>fixed a C++ compilation problem</li>
+ <li>couple of fixes to xsltSaveTo()</li>
+ <li>try to fix Docbook-xslt-1.4 and chunking, updated the regression test
+ with them</li>
+ <li>fixed pattern compilation and priorities problems</li>
+ <li>Patches for Windows and MSC project mostly contributed by Yon Derek</li>
+ <li>update to the Tutorial by John Fleck</li>
+ <li>William fixed bugs in templates and for-each functions</li>
+ <li>added a new interface xsltRunStylesheet() for a more flexible output
+ (incomplete), added -o option to xsltproc</li>
+</ul>
+
+<h3>0.12.0: June 18 2001</h3>
+<ul>
+ <li>fixed a dozen of bugs reported</li>
+ <li>HTML generation should be quite better (requires libxml-2.3.11 upgrade
+ too)</li>
+ <li>William fixed some problems with document()</li>
+ <li>Fix namespace nodes selection and copy (requires libxml-2.3.11 upgrade
+ too)</li>
+ <li>John Fleck added a<a href="tutorial/libxslttutorial.html">
+ tutorial</a></li>
+ <li>Fixes for namespace handling when evaluating variables</li>
+ <li>XInclude global flag added to process XInclude on document() if
+ requested</li>
+ <li>made xsltproc --version more detailed</li>
+</ul>
+
+<h3>0.11.0: June 1 2001</h3>
+
+<p>Mostly a bug fix release.</p>
+<ul>
+ <li>integration of catalogs from xsltproc</li>
+ <li>added --version to xsltproc for bug reporting</li>
+ <li>fixed errors when handling ID in external parsed entities</li>
+ <li>document() should hopefully work correctly but ...</li>
+ <li>fixed bug with PI and comments processing</li>
+ <li>William fixed the XPath string functions when using unicode</li>
+</ul>
+
+<h3>0.10.0: May 19 2001</h3>
+<ul>
+ <li>cleanups to make stylesheet read-only (not 100% complete)</li>
+ <li>fixed URI resolution in document()</li>
+ <li>force all XPath expression to be compiled at stylesheet parsing time,
+ even if unused ...</li>
+ <li>Fixed HTML default output detection</li>
+ <li>Fixed double attribute generation #54446</li>
+ <li>Fixed {{ handling in attributes #54451</li>
+ <li>More tests and speedups for DocBook document transformations</li>
+ <li>Fixed a really bad race like bug in xsltCopyTreeList()</li>
+ <li>added a documentation on the libxslt internals</li>
+ <li>William Brack and Bjorn Reese improved format-number()</li>
+ <li>Fixed multiple sort, it should really work now</li>
+ <li>added a --docbook option for SGML DocBook input (hackish)</li>
+ <li>a number of other bug fixes and regression test added as people were
+ submitting them</li>
+</ul>
+
+<h3>0.9.0: May 3 2001</h3>
+<ul>
+ <li>lot of various bugfixes, extended the regression suite</li>
+ <li>xsltproc should work with multiple params</li>
+ <li>added an option to use xsltproc with HTML input</li>
+ <li>improved the stylesheet compilation, processing of complex stylesheets
+ should be faster</li>
+ <li>using the same stylesheet for concurrent processing on multithreaded
+ programs should work now</li>
+ <li>fixed another batch of namespace handling problems</li>
+ <li>Implemented multiple level of sorting</li>
+</ul>
+
+<h3>0.8.0: Apr 22 2001</h3>
+<ul>
+ <li>fixed ansidecl.h problem</li>
+ <li>fixed unparsed-entity-uri() and generate-id()</li>
+ <li>sort semantic fixes and priority prob from William M. Brack</li>
+ <li>fixed namespace handling problems in XPath expression computations
+ (requires libxml-2.3.7)</li>
+ <li>fixes to current() and key()</li>
+ <li>other, smaller fixes, lots of testing with N Walsh DocBook HTML
+ stylesheets</li>
+</ul>
+
+<h3>0.7.0: Apr 10 2001</h3>
+<ul>
+ <li>cleanup using stricter compiler flags</li>
+ <li>command line parameter passing</li>
+ <li>fix to xsltApplyTemplates from William M. Brack</li>
+ <li>added the XSLTMark in the regression tests as well as document()</li>
+</ul>
+
+<h3>0.6.0: Mar 22 2001</h3>
+<ul>
+ <li>another beta</li>
+ <li>requires 2.3.5, which provide XPath expression compilation support</li>
+ <li>document() extension should function properly</li>
+ <li>fixed a number or reported bugs</li>
+</ul>
+
+<h3>0.5.0: Mar 10 2001</h3>
+<ul>
+ <li>fifth beta</li>
+ <li>some optimization work, for the moment 2 XSLT transform cannot use the
+ same stylesheet at the same time (to be fixed)</li>
+ <li>fixed problems with handling of tree results</li>
+ <li>fixed a reported strip-spaces problem</li>
+ <li>added more reported/fixed bugs to the test suite</li>
+ <li>incorporated William M. Brack fix for imports and global variables as
+ well as patch for with-param support in apply-templates</li>
+ <li>a bug fix on for-each</li>
+</ul>
+
+<h3>0.4.0: Mar 1 2001</h3>
+<ul>
+ <li>fourth beta test, released at the same time of libxml2-2.3.3</li>
+ <li>bug fixes</li>
+ <li>some optimization</li>
+ <li>started implement extension support, not finished</li>
+ <li>implemented but not tested multiple file output</li>
+</ul>
+
+<h3>0.3.0: Feb 24 2001</h3>
+<ul>
+ <li>third beta test, released at the same time of libxml2-2.3.2</li>
+ <li>lot of bug fixes</li>
+ <li>some optimization</li>
+ <li>added DocBook XSL based testsuite</li>
+</ul>
+
+<h3>0.2.0: Feb 15 2001</h3>
+<ul>
+ <li>second beta version, released at the same time as libxml2-2.3.1</li>
+ <li>getting close to feature completion, lot of bug fixes, some in the HTML
+ and XPath support of libxml</li>
+ <li>start becoming usable for real work. This version can now regenerate
+ the XML 2e HTML from the original XML sources and the associated
+ stylesheets (in <a
+ href="http://www.w3.org/TR/REC-xml#b4d250b6c21">section I of the XML
+ REC</a>)</li>
+ <li>Still misses extension element/function/prefixes support. Support of
+ key() and document() is not complete</li>
+</ul>
+
+<h3>0.1.0: Feb 8 2001</h3>
+<ul>
+ <li>first beta version, released at the same time as libxml2-2.3.0</li>
+ <li>lots of bug fixes, first "testing" version, but incomplete</li>
+</ul>
+
+<h3>0.0.1: Jan 25 2001</h3>
+<ul>
+ <li>first alpha version released at the same time as libxml2-2.2.12</li>
+ <li>Framework in place, should work on simple examples, but far from being
+ feature complete</li>
+</ul>
+
+<h2><a name="xsltproc">The xsltproc tool</a></h2>
+
+<p>This program is the simplest way to use libxslt: from the command line. It
+is also used for doing the regression tests of the library.</p>
+
+<p>It takes as first argument the path or URL to an XSLT stylesheet, the next
+arguments are filenames or URIs of the inputs to be processed. The output of
+the processing is redirected on the standard output. There is actually a few
+more options available:</p>
+<pre>orchis:~ -&gt; xsltproc
+Usage: xsltproc [options] stylesheet file [file ...]
+ Options:
+ --version or -V: show the version of libxml and libxslt used
+ --verbose or -v: show logs of what's happening
+ --output file or -o file: save to a given file
+ --timing: display the time used
+ --repeat: run the transformation 20 times
+ --debug: dump the tree of the result instead
+ --novalid: skip the DTD loading phase
+ --noout: do not dump the result
+ --maxdepth val : increase the maximum depth
+ --html: the input document is(are) an HTML file(s)
+ --docbook: the input document is SGML docbook
+ --param name value : pass a (parameter,value) pair
+ --nonet refuse to fetch DTDs or entities over network
+ --warnnet warn against fetching over the network
+ --catalogs : use the catalogs from $SGML_CATALOG_FILES
+ --xinclude : do XInclude processing on document input
+ --profile or --norman : dump profiling information
+orchis:~ -&gt;</pre>
+
+<h2><a name="DocBook">DocBook</a></h2>
+
+<p><img src="duck.png" align="right" alt="The duck picture"></p>
+
+<p><a href="http://www.oasis-open.org/committees/docbook/">DocBook</a> is an
+XML/SGML vocabulary particularly well suited to books and papers about
+computer hardware and software.</p>
+
+<p>xsltproc and libxslt are not specifically dependant on DocBook, but since
+a lot of people use xsltproc and libxml2 for DocBook formatting, here are a
+few pointers and information which may be helpful:</p>
+<ul>
+ <li>The <a href="http://www.oasis-open.org/committees/docbook/">DocBook
+ homepage at Oasis</a> you should find pointers there on all the lastest
+ versions of the DTDs and XSLT stylesheets</li>
+ <li><a href="http://www.docbook.org/">DocBook: The Definitive Guide</a> is
+ the official reference documentation for DocBook.</li>
+ <li><a
+ href="https://sourceforge.net/docman/index.php?group_id=21935">DocBook
+ Open Repository</a> contains a lot of information about DocBook</li>
+ <li>Bob Stayton provides a <a href="http://www.sagehill.net/">lot of
+ resources</a> and consulting services around DocBook.</li>
+ <li>Here is a <a href="/buildDocBookCatalog">shell script</a> to generate
+ XML Catalogs for DocBook 4.1.2 . If it can write to the /etc/xml/
+ directory, it will set-up /etc/xml/catalog and /etc/xml/docbook based on
+ the resources found on the system. Otherwise it will just create
+ ~/xmlcatalog and ~/dbkxmlcatalog and doing:
+ <p><code>export XMLCATALOG=$HOME/xmlcatalog</code></p>
+ <p>should allow to process DocBook documentations without requiring
+ network accesses for the DTd or stylesheets</p>
+ </li>
+ <li>I have uploaded <a href="ftp://xmlsoft.org/libxml2/test/dbk412catalog.tar.gz">a
+ small tarball</a> containing XML Catalogs for DocBook 4.1.2 which seems
+ to work fine for me too</li>
+ <li>Informations on installing a <a
+ href="http://wiki.docbook.org/topic/CygwinPackages">Windows
+ DocBook processing setup</a> based on Cygwin (using the binaries from the
+ official Windows port should be possible too)</li>
+ <li>Alexander Kirillov's page on <a
+ href="http://www.math.sunysb.edu/~kirillov/dbxml/">Using DocBook XML
+ 4.1.2</a> (RPM packages)</li>
+ <li>Tim Waugh's <a href="http://cyberelk.net/tim/xmlto/">xmlto front-end
+ conversion script</a></li>
+ <li>Linux Documentation Project <a
+ href="http://www.linuxdoc.org/HOWTO/mini/DocBook-Install/">
+ DocBook-Install-mini-HOWTO</a></li>
+ <li>ScrollKeeper the open documentation cataloging project has a <a
+ href="http://scrollkeeper.sourceforge.net/docbook.shtml">DocBook
+ section</a></li>
+ <li>Dan York presentation on <a
+ href="http://www.lodestar2.com/people/dyork/talks/2001/xugo/docbook/index.html">Publishing
+ using DocBook XML</a></li>
+</ul>
+
+<p>Do not use the --docbook option of xsltproc to process XML DocBook
+documents, this option is only intended to provide some (limited) support of
+the SGML version of DocBook.</p>
+
+<p>Points which are not DocBook specific but still worth mentionning
+again:</p>
+<ul>
+ <li>if you think DocBook processing time is too slow, make sure you have
+ XML Catalogs pointing to a local installation of the DTD of DocBook.
+ Check the <a href="http://xmlsoft.org/catalog.html">XML Catalog page</a>
+ to understand more on this subject.</li>
+ <li>before processing a new document, use the command
+ <p><code>xmllint --valid --noout path_to_document</code></p>
+ <p>to make sure that your input is valid DocBook. And fixes the errors
+ before processing further. Note that XSLT processing may work correctly
+ with some forms of validity errors left, but in general it can give
+ troubles on output.</p>
+ </li>
+</ul>
+
+<h2><a name="API">The programming API</a></h2>
+
+<p>Okay this section is clearly incomplete. But integrating libxslt into your
+application should be relatively easy. First check the few steps described
+below, then for more detailed information, look at the<a
+href="html/libxslt-lib.html"> generated pages</a> for the API and the source
+of libxslt/xsltproc.c and the <a
+href="tutorial/libxslttutorial.html">tutorial</a>.</p>
+
+<p>Basically doing an XSLT transformation can be done in a few steps:</p>
+<ol>
+ <li>configure the parser for XSLT:
+ <p>xmlSubstituteEntitiesDefault(1);</p>
+ <p>xmlLoadExtDtdDefaultValue = 1;</p>
+ </li>
+ <li>parse the stylesheet with xsltParseStylesheetFile()</li>
+ <li>parse the document with xmlParseFile()</li>
+ <li>apply the stylesheet using xsltApplyStylesheet()</li>
+ <li>save the result using xsltSaveResultToFile() if needed set
+ xmlIndentTreeOutput to 1</li>
+</ol>
+
+<p>Steps 2,3, and 5 will probably need to be changed depending on you
+processing needs and environment for example if reading/saving from/to
+memory, or if you want to apply XInclude processing to the stylesheet or
+input documents.</p>
+
+<h2><a name="Python">Python and bindings</a></h2>
+
+<p>There is a number of language bindings and wrappers available for libxml2,
+the list below is not exhaustive. Please contact the <a
+href="http://mail.gnome.org/mailman/listinfo/xml-bindings">xml-bindings@gnome.org</a>
+(<a href="http://mail.gnome.org/archives/xml-bindings/">archives</a>) in
+order to get updates to this list or to discuss the specific topic of libxml2
+or libxslt wrappers or bindings:</p>
+<ul>
+ <li><a
+ href="http://mail.gnome.org/archives/xml/2001-March/msg00014.html">Matt
+ Sergeant</a> developped <a href="http://axkit.org/download/">XML::LibXML
+ and XML::LibXSLT</a>, Perl wrappers for libxml2/libxslt as part of the <a
+ href="http://axkit.com/">AxKit XML application server</a></li>
+ <li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a> provides and
+ earlier version of the libxml/libxslt <a
+ href="http://www.rexx.com/~dkuhlman">wrappers for Python</a></li>
+ <li>Petr Kozelka provides <a
+ href="http://sourceforge.net/projects/libxml2-pas">Pascal units to glue
+ libxml2</a> with Kylix, Delphi and other Pascal compilers</li>
+ <li>Wai-Sun "Squidster" Chia provides <a
+ href="http://www.rubycolor.org/arc/redist/">bindings for Ruby</a> and
+ libxml2 bindings are also available in Ruby through the <a
+ href="http://libgdome-ruby.berlios.de/">libgdome-ruby</a> module
+ maintained by Tobias Peters.</li>
+ <li>Steve Ball and contributors maintains <a
+ href="http://tclxml.sourceforge.net/">libxml2 and libxslt bindings for
+ Tcl</a></li>
+ <li><a href="mailto:xmlwrapp@pmade.org">Peter Jones</a> maintains C++
+ bindings for libxslt within <a
+ href="http://pmade.org/pjones/software/xmlwrapp/">xmlwrapp</a></li>
+ <li><a href="phillim2@comcast.net">Mike Phillips</a> provides a module
+ using <a href="http://siasl.dyndns.org/projects/projects.html">libxslt
+ for PHP</a>.</li>
+ <li><a href="http://savannah.gnu.org/projects/classpathx/">LibxmlJ</a> is
+ an effort to create a 100% JAXP-compatible Java wrapper for libxml2 and
+ libxslt as part of GNU ClasspathX project.</li>
+ <li>Patrick McPhee provides Rexx bindings fof libxml2 and libxslt, look for
+ <a href="http://www.interlog.com/~ptjm/software.html">RexxXML</a>.</li>
+ <li><a
+ href="http://www.satimage.fr/software/en/xml_suite.html">Satimage</a>
+ provides <a
+ href="http://www.satimage.fr/software/en/downloads_osaxen.html">XMLLib
+ osax</a>. This is an osax for Mac OS X with a set of commands to
+ implement in AppleScript the XML DOM, XPATH and XSLT.</li>
+</ul>
+
+<p>The libxslt Python module depends on the <a
+href="http://xmlsoft.org/python.html">libxml2 Python</a> module.</p>
+
+<p>The distribution includes a set of Python bindings, which are guaranteed to
+be maintained as part of the library in the future, though the Python
+interface have not yet reached the completeness of the C API.</p>
+
+<p><a href="mailto:stephane.bidoul@softwareag.com">Stéphane Bidoul</a>
+maintains <a href="http://users.skynet.be/sbi/libxml-python/">a Windows port
+of the Python bindings</a>.</p>
+
+<p>Note to people interested in building bindings, the API is formalized as
+<a href="libxslt-api.xml">an XML API description file</a> which allows to
+automate a large part of the Python bindings, this includes function
+descriptions, enums, structures, typedefs, etc... The Python script used to
+build the bindings is python/generator.py in the source distribution.</p>
+
+<p>To install the Python bindings there are 2 options:</p>
+<ul>
+ <li>If you use an RPM based distribution, simply install the <a
+ href="http://rpmfind.net/linux/rpm2html/search.php?query=libxml2-python">libxml2-python
+ RPM</a> and the <a
+ href="http://rpmfind.net/linux/rpm2html/search.php?query=libxslt-python">libxslt-python
+ RPM</a>.</li>
+ <li>Otherwise use the <a href="ftp://xmlsoft.org/libxml2/python/">libxml2-python
+ module distribution</a> corresponding to your installed version of
+ libxml2 and libxslt. Note that to install it you will need both libxml2
+ and libxslt installed and run "python setup.py build install" in the
+ module tree.</li>
+</ul>
+
+<p>The distribution includes a set of examples and regression tests for the
+python bindings in the <code>python/tests</code> directory. Here are some
+excepts from those tests:</p>
+
+<h3>basic.py:</h3>
+
+<p>This is a basic test of XSLT interfaces: loading a stylesheet and a
+document, transforming the document and saving the result.</p>
+<pre>import libxml2
+import libxslt
+
+styledoc = libxml2.parseFile("test.xsl")
+style = libxslt.parseStylesheetDoc(styledoc)
+doc = libxml2.parseFile("test.xml")
+result = style.applyStylesheet(doc, None)
+style.saveResultToFilename("foo", result, 0)
+style.freeStylesheet()
+doc.freeDoc()
+result.freeDoc()</pre>
+
+<p>The Python module is called libxslt, you will also need the libxml2 module
+for the operations on XML trees. Let's have a look at the objects manipulated
+in that example and how is the processing done:</p>
+<ul>
+ <li><code>styledoc</code> : is a libxml2 document tree. It is obtained by
+ parsing the XML file "test.xsl" containing the stylesheet.</li>
+ <li><code>style</code> : this is a precompiled stylesheet ready to be used
+ by the following transformations (note the plural form, multiple
+ transformations can resuse the same stylesheet).</li>
+ <li><code>doc</code> : this is the document to apply the transformation to.
+ In this case it is simply generated by parsing it from a file but any
+ other processing is possible as long as one get a libxml2 Doc. Note that
+ HTML tree are suitable for XSLT processing in libxslt. This is actually
+ how this page is generated !</li>
+ <li><code>result</code> : this is a document generated by applying the
+ stylesheet to the document. Note that some of the stylesheet information
+ may be related to the serialization of that document and as in this
+ example a specific saveResultToFilename() method of the stylesheet should
+ be used to save it to a file (in that case to "foo").</li>
+</ul>
+
+<p>Also note the need to explicitely deallocate documents with freeDoc()
+except for the stylesheet document which is freed when its compiled form is
+garbage collected.</p>
+
+<h3>extfunc.py:</h3>
+
+<p>This one is a far more complex test. It shows how to modify the behaviour
+of an XSLT transformation by passing parameters and how to extend the XSLT
+engine with functions defined in python:</p>
+<pre>import libxml2
+import libxslt
+import string
+
+nodeName = None
+def f(ctx, str):
+ global nodeName
+
+ #
+ # Small check to verify the context is correcly accessed
+ #
+ try:
+ pctxt = libxslt.xpathParserContext(_obj=ctx)
+ ctxt = pctxt.context()
+ tctxt = ctxt.transformContext()
+ nodeName = tctxt.insertNode().name
+ except:
+ pass
+
+ return string.upper(str)
+
+libxslt.registerExtModuleFunction("foo", "http://example.com/foo", f)</pre>
+
+<p>This code defines and register an extension function. Note that the
+function can be bound to any name (foo) and how the binding is also
+associated to a namespace name "http://example.com/foo". From an XSLT point
+of view the function just returns an upper case version of the string passed
+as a parameter. But the first part of the function also read some contextual
+information from the current XSLT processing environement, in that case it
+looks for the current insertion node in the resulting output (either the
+resulting document or the Result Value Tree being generated), and saves it to
+a global variable for checking that the access actually worked.</p>
+
+<p>For more information on the xpathParserContext and transformContext
+objects check the <a href="internals.html">libray internals description</a>.
+The pctxt is actually an object from a class derived from the
+libxml2.xpathParserContext() with just a couple more properties including the
+possibility to look up the XSLT transformation context from the XPath
+context.</p>
+<pre>styledoc = libxml2.parseDoc("""
+&lt;xsl:stylesheet version='1.0'
+ xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
+ xmlns:foo='http://example.com/foo'
+ xsl:exclude-result-prefixes='foo'&gt;
+
+ &lt;xsl:param name='bar'&gt;failure&lt;/xsl:param&gt;
+ &lt;xsl:template match='/'&gt;
+ &lt;article&gt;&lt;xsl:value-of select='foo:foo($bar)'/&gt;&lt;/article&gt;
+ &lt;/xsl:template&gt;
+&lt;/xsl:stylesheet&gt;
+""")</pre>
+
+<p>Here is a simple example of how to read an XML document from a python
+string with libxml2. Note how this stylesheet:</p>
+<ul>
+ <li>Uses a global parameter <code>bar</code></li>
+ <li>Reference the extension function f</li>
+ <li>how the Namespace name "http://example.com/foo" has to be bound to a
+ prefix</li>
+ <li>how that prefix is excluded from the output</li>
+ <li>how the function is called from the select</li>
+</ul>
+<pre>style = libxslt.parseStylesheetDoc(styledoc)
+doc = libxml2.parseDoc("&lt;doc/&gt;")
+result = style.applyStylesheet(doc, { "bar": "'success'" })
+style.freeStylesheet()
+doc.freeDoc()</pre>
+
+<p>that part is identical, to the basic example except that the
+transformation is passed a dictionary of parameters. Note that the string
+passed "success" had to be quoted, otherwise it is interpreted as an XPath
+query for the childs of root named "success".</p>
+<pre>root = result.children
+if root.name != "article":
+ print "Unexpected root node name"
+ sys.exit(1)
+if root.content != "SUCCESS":
+ print "Unexpected root node content, extension function failed"
+ sys.exit(1)
+if nodeName != 'article':
+ print "The function callback failed to access its context"
+ sys.exit(1)
+
+result.freeDoc()</pre>
+
+<p>That part just verifies that the transformation worked, that the parameter
+got properly passed to the engine, that the function f() got called and that
+it properly accessed the context to find the name of the insertion node.</p>
+
+<h3>pyxsltproc.py:</h3>
+
+<p>this module is a bit too long to be described there but it is basically a
+rewrite of the xsltproc command line interface of libxslt in Python. It
+provides nearly all the functionalities of xsltproc and can be used as a base
+module to write Python customized XSLT processors. One of the thing to notice
+are:</p>
+<pre>libxml2.lineNumbersDefault(1)
+libxml2.substituteEntitiesDefault(1)</pre>
+
+<p>those two calls in the main() function are needed to force the libxml2
+processor to generate DOM trees compliant with the XPath data model.</p>
+
+<h2><a name="Internals">Library internals</a></h2>
+
+<h3>Table of contents</h3>
+<ul>
+ <li><a href="internals.html#Introducti">Introduction</a></li>
+ <li><a href="internals.html#Basics">Basics</a></li>
+ <li><a href="internals.html#Keep">Keep it simple stupid</a></li>
+ <li><a href="internals.html#libxml">The libxml nodes</a></li>
+ <li><a href="internals.html#XSLT">The XSLT processing steps</a></li>
+ <li><a href="internals.html#XSLT1">The XSLT stylesheet compilation</a></li>
+ <li><a href="internals.html#XSLT2">The XSLT template compilation</a></li>
+ <li><a href="internals.html#processing">The processing itself</a></li>
+ <li><a href="internals.html#XPath">XPath expressions compilation</a></li>
+ <li><a href="internals.html#XPath1">XPath interpretation</a></li>
+ <li><a href="internals.html#Descriptio">Description of XPath
+ Objects</a></li>
+ <li><a href="internals.html#XPath3">XPath functions</a></li>
+ <li><a href="internals.html#stack">The variables stack frame</a></li>
+ <li><a href="internals.html#Extension">Extension support</a></li>
+ <li><a href="internals.html#Futher">Further reading</a></li>
+ <li><a href="internals.html#TODOs">TODOs</a></li>
+ <li><a href="internals.html#Thanks">Thanks</a></li>
+</ul>
+
+<h3><a name="Introducti2">Introduction</a></h3>
+
+<p>This document describes the processing of <a
+href="http://xmlsoft.org/XSLT/">libxslt</a>, the <a
+href="http://www.w3.org/TR/xslt">XSLT</a> C library developed for the <a
+href="http://www.gnome.org/">GNOME</a> project.</p>
+
+<p>Note: this documentation is by definition incomplete and I am not good at
+spelling, grammar, so patches and suggestions are <a
+href="mailto:veillard@redhat.com">really welcome</a>.</p>
+
+<h3><a name="Basics1">Basics</a></h3>
+
+<p>XSLT is a transformation language. It takes an input document and a
+stylesheet document and generates an output document:</p>
+
+<p align="center"><img src="processing.gif"
+alt="the XSLT processing model"></p>
+
+<p>Libxslt is written in C. It relies on <a
+href="http://www.xmlsoft.org/">libxml</a>, the XML C library for GNOME, for
+the following operations:</p>
+<ul>
+ <li>parsing files</li>
+ <li>building the in-memory DOM structure associated with the documents
+ handled</li>
+ <li>the XPath implementation</li>
+ <li>serializing back the result document to XML and HTML. (Text is handled
+ directly.)</li>
+</ul>
+
+<h3><a name="Keep1">Keep it simple stupid</a></h3>
+
+<p>Libxslt is not very specialized. It is built under the assumption that all
+nodes from the source and output document can fit in the virtual memory of
+the system. There is a big trade-off there. It is fine for reasonably sized
+documents but may not be suitable for large sets of data. The gain is that it
+can be used in a relatively versatile way. The input or output may never be
+serialized, but the size of documents it can handle are limited by the size
+of the memory available.</p>
+
+<p>More specialized memory handling approaches are possible, like building
+the input tree from a serialization progressively as it is consumed,
+factoring repetitive patterns, or even on-the-fly generation of the output as
+the input is parsed but it is possible only for a limited subset of the
+stylesheets. In general the implementation of libxslt follows the following
+pattern:</p>
+<ul>
+ <li>KISS (keep it simple stupid)</li>
+ <li>when there is a clear bottleneck optimize on top of this simple
+ framework and refine only as much as is needed to reach the expected
+ result</li>
+</ul>
+
+<p>The result is not that bad, clearly one can do a better job but more
+specialized too. Most optimization like building the tree on-demand would
+need serious changes to the libxml XPath framework. An easy step would be to
+serialize the output directly (or call a set of SAX-like output handler to
+keep this a flexible interface) and hence avoid the memory consumption of the
+result.</p>
+
+<h3><a name="libxml">The libxml nodes</a></h3>
+
+<p>DOM-like trees, as used and generated by libxml and libxslt, are
+relatively complex. Most node types follow the given structure except a few
+variations depending on the node type:</p>
+
+<p align="center"><img src="node.gif" alt="description of a libxml node"></p>
+
+<p>Nodes carry a <strong>name</strong> and the node <strong>type</strong>
+indicates the kind of node it represents, the most common ones are:</p>
+<ul>
+ <li>document nodes</li>
+ <li>element nodes</li>
+ <li>text nodes</li>
+</ul>
+
+<p>For the XSLT processing, entity nodes should not be generated (i.e. they
+should be replaced by their content). Most nodes also contains the following
+"navigation" information:</p>
+<ul>
+ <li>the containing <strong>doc</strong>ument</li>
+ <li>the <strong>parent</strong> node</li>
+ <li>the first <strong>children</strong> node</li>
+ <li>the <strong>last</strong> children node</li>
+ <li>the <strong>prev</strong>ious sibling</li>
+ <li>the following sibling (<strong>next</strong>)</li>
+</ul>
+
+<p>Elements nodes carries the list of attributes in the properties, an
+attribute itself holds the navigation pointers and the children list (the
+attribute value is not represented as a simple string to allow usage of
+entities references).</p>
+
+<p>The <strong>ns</strong> points to the namespace declaration for the
+namespace associated to the node, <strong>nsDef</strong> is the linked list
+of namespace declaration present on element nodes.</p>
+
+<p>Most nodes also carry an <strong>_private</strong> pointer which can be
+used by the application to hold specific data on this node.</p>
+
+<h3><a name="XSLT">The XSLT processing steps</a></h3>
+
+<p>There are a few steps which are clearly decoupled at the interface
+level:</p>
+<ol>
+ <li>parse the stylesheet and generate a DOM tree</li>
+ <li>take the stylesheet tree and build a compiled version of it (the
+ compilation phase)</li>
+ <li>take the input and generate a DOM tree</li>
+ <li>process the stylesheet against the input tree and generate an output
+ tree</li>
+ <li>serialize the output tree</li>
+</ol>
+
+<p>A few things should be noted here:</p>
+<ul>
+ <li>the steps 1/ 3/ and 5/ are optional: the DOM representing the
+ stylesheet and input can be created by other means, not just by parsing
+ serialized XML documents, and similarly the result tree DOM can be
+ made available to other processeswithout being serialized.
+ <li>the stylesheet obtained at 2/ can be reused by multiple processing 4/
+ (and this should also work in threaded programs)</li>
+ <li>the tree provided in 2/ should never be freed using xmlFreeDoc, but by
+ freeing the stylesheet.</li>
+ <li>the input tree created in step 3/ is not modified except the
+ _private field which may be used for labelling keys if used by the
+ stylesheet. It's not modified at all in step 4/ to allow parallel
+ processing using a shared precompiled stylesheet.</li>
+</ul>
+
+<h3><a name="XSLT1">The XSLT stylesheet compilation</a></h3>
+
+<p>This is the second step described. It takes a stylesheet tree, and
+"compiles" it. This associates to each node a structure stored in the
+_private field and containing information computed in the stylesheet:</p>
+
+<p align="center"><img src="stylesheet.gif"
+alt="a compiled XSLT stylesheet"></p>
+
+<p>One xsltStylesheet structure is generated per document parsed for the
+stylesheet. XSLT documents allow includes and imports of other documents,
+imports are stored in the <strong>imports</strong> list (hence keeping the
+tree hierarchy of includes which is very important for a proper XSLT
+processing model) and includes are stored in the <strong>doclist</strong>
+list. An imported stylesheet has a parent link to allow browsing of the
+tree.</p>
+
+<p>The DOM tree associated to the document is stored in <strong>doc</strong>.
+It is preprocessed to remove ignorable empty nodes and all the nodes in the
+XSLT namespace are subject to precomputing. This usually consist of
+extracting all the context information from the context tree (attributes,
+namespaces, XPath expressions), and storing them in an xsltStylePreComp
+structure associated to the <strong>_private</strong> field of the node.</p>
+
+<p>A couple of notable exceptions to this are XSLT template nodes (more on
+this later) and attribute value templates. If they are actually templates,
+the value cannot be computed at compilation time. (Some preprocessing could
+be done like isolation and preparsing of the XPath subexpressions but it's
+not done, yet.)</p>
+
+<p>The xsltStylePreComp structure also allows storing of the precompiled form
+of an XPath expression that can be associated to an XSLT element (more on
+this later).</p>
+
+<h3><a name="XSLT2">The XSLT template compilation</a></h3>
+
+<p>A proper handling of templates lookup is one of the keys of fast XSLT
+processing. (Given a node in the source document this is the process of
+finding which templates should be applied to this node.) Libxslt follows the
+hint suggested in the <a href="http://www.w3.org/TR/xslt#patterns">5.2
+Patterns</a> section of the XSLT Recommendation, i.e. it doesn't evaluate it
+as an XPath expression but tokenizes it and compiles it as a set of rules to
+be evaluated on a candidate node. There usually is an indication of the node
+name in the last step of this evaluation and this is used as a key check for
+the match. As a result libxslt builds a relatively more complex set of
+structures for the templates:</p>
+
+<p align="center"><img src="templates.gif"
+alt="The templates related structure"></p>
+
+<p>Let's describe a bit more closely what is built. First the xsltStylesheet
+structure holds a pointer to the template hash table. All the XSLT patterns
+compiled in this stylesheet are indexed by the value of the the target
+element (or attribute, pi ...) name, so when a element or an attribute "foo"
+needs to be processed the lookup is done using the name as a key.</p>
+
+<p>Each of the patterns is compiled into an xsltCompMatch
+(i.e. an ''XSLT compiled match') structure. It holds
+the set of rules based on the tokenization of the pattern stored in reverse
+order (matching is easier this way). </p>
+
+<p>The xsltCompMatch are then stored in the hash table, the clash list is
+itself sorted by priority of the template to implement "naturally" the XSLT
+priority rules.</p>
+
+<p>Associated to the compiled pattern is the xsltTemplate itself containing
+the information required for the processing of the pattern including, of
+course, a pointer to the list of elements used for building the pattern
+result.</p>
+
+<p>Last but not least a number of patterns do not fit in the hash table
+because they are not associated to a name, this is the case for patterns
+applying to the root, any element, any attributes, text nodes, pi nodes, keys
+etc. Those are stored independently in the stylesheet structure as separate
+linked lists of xsltCompMatch.</p>
+
+<h3><a name="processing">The processing itself</a></h3>
+
+<p>The processing is defined by the XSLT specification (the basis of the
+algorithm is explained in <a
+href="http://www.w3.org/TR/xslt#section-Introduction">the Introduction</a>
+section). Basically it works by taking the root of the input document
+as the cureent node and applying the following algorithm:</p>
+<ol>
+ <li>Finding the template applying to current node.
+ This is a lookup in the template hash table, walking the hash list until
+ the node satisfies all the steps of the pattern, then checking the
+ appropriate global template(s) (i.e. templates applying to a node type)
+ to see if there isn't a higher priority rule to apply</li>
+ <li>If there is no template, apply the default rule (recurse on the
+ children as the current node)</li>
+ <li>else walk the content list of the selected templates, for each of them:
+ <ul>
+ <li>if the node is in the XSLT namespace then the node has a _private
+ field pointing to the preprocessed values, jump to the specific
+ code</li>
+ <li>if the node is in an extension namespace, look up the associated
+ behavior</li>
+ <li>otherwise copy the node.</li>
+ </ul>
+ <p>The closure is usually done through the XSLT
+ <strong>apply-templates</strong>construct, which invokes this process
+ recursively starting at step 1, to find the appropriate template
+ for the nodes selected by the 'select' attribute of the apply-templates
+ instruction (default: the children of the node currently being
+ processed)</p>
+ </li>
+</ol>
+
+<p>Note that large parts of the input tree may not be processed by a given
+stylesheet and that conversely some may be processed multiple times.
+(This often is the case when a Table of Contents is built).</p>
+
+<p>The module <code>transform.c</code> is the one implementing most of this
+logic. <strong>xsltApplyStylesheet()</strong> is the entry point, it
+allocates an xsltTransformContext containing the following:</p>
+<ul>
+ <li>a pointer to the stylesheet being processed</li>
+ <li>a stack of templates</li>
+ <li>a stack of variables and parameters</li>
+ <li>an XPath context</li>
+ <li>the template mode</li>
+ <li>current document</li>
+ <li>current input node</li>
+ <li>current selected node list</li>
+ <li>the current insertion points in the output document</li>
+ <li>a couple of hash tables for extension elements and functions</li>
+</ul>
+
+<p>Then a new document gets allocated (HTML or XML depending on the type of
+output), the user parameters and global variables and parameters are
+evaluated. Then <strong>xsltProcessOneNode()</strong> which implements the
+1-2-3 algorithm is called on the docuemnt node of the input. Step 1/ is
+implemented by calling <strong>xsltGetTemplate()</strong>, step 2/ is
+implemented by <strong>xsltDefaultProcessOneNode()</strong> and step 3/ is
+implemented by <strong>xsltApplyOneTemplate()</strong>.</p>
+
+<h3><a name="XPath">XPath expression compilation</a></h3>
+
+<p>The XPath support is actually implemented in the libxml module (where it
+is reused by the XPointer implementation). XPath is a relatively classic
+expression language. The only uncommon feature is that it is working on XML
+trees and hence has specific syntax and types to handle them.</p>
+
+<p>XPath expressions are compiled using <strong>xmlXPathCompile()</strong>.
+It will take an expression string in input and generate a structure
+containing the parsed expression tree, for example the expression:</p>
+<pre>/doc/chapter[title='Introduction']</pre>
+
+<p>will be compiled as</p>
+<pre>Compiled Expression : 10 elements
+ SORT
+ COLLECT 'child' 'name' 'node' chapter
+ COLLECT 'child' 'name' 'node' doc
+ ROOT
+ PREDICATE
+ SORT
+ EQUAL =
+ COLLECT 'child' 'name' 'node' title
+ NODE
+ ELEM Object is a string : Introduction
+ COLLECT 'child' 'name' 'node' title
+ NODE</pre>
+
+<p>This can be tested using the <code>testXPath</code> command (in the
+libxml codebase) using the <code>--tree</code> option.</p>
+
+<p>Again, the KISS approach is used. No optimization is done. This could be
+an interesting thing to add. <a
+href="http://www-106.ibm.com/developerworks/library/x-xslt2/?dwzone=x?open&amp;l=132%2ct=gr%2c+p=saxon">Michael
+Kay describes</a> a lot of possible and interesting optimizations done in
+Saxon which would be possible at this level. I'm unsure they would provide
+much gain since the expressions tends to be relatively simple in general and
+stylesheets are still hand generated. Optimizations at the interpretation
+sounds likely to be more efficient.</p>
+
+<h3><a name="XPath1">XPath interpretation</a></h3>
+
+<p>The interpreter is implemented by <strong>xmlXPathCompiledEval()</strong>
+which is the front-end to <strong>xmlXPathCompOpEval()</strong> the function
+implementing the evaluation of the expression tree. This evaluation follows
+the KISS approach again. It's recursive and calls
+<strong>xmlXPathNodeCollectAndTest()</strong> to collect a set of nodes when
+evaluating a <code>COLLECT</code> node.</p>
+
+<p>An evaluation is done within the framework of an XPath context stored in
+an <strong>xmlXPathContext</strong> structure, in the framework of a
+transformation the context is maintained within the XSLT context. Its content
+follows the requirements from the XPath specification:</p>
+<ul>
+ <li>the current document</li>
+ <li>the current node</li>
+ <li>a hash table of defined variables (but not used by XSLT,
+ which uses its own stack frame for variables, described below)</li>
+ <li>a hash table of defined functions</li>
+ <li>the proximity position (the place of the node in the current node
+ list)</li>
+ <li>the context size (the size of the current node list)</li>
+ <li>the array of namespace declarations in scope (there also is a namespace
+ hash table but it is not used in the XSLT transformation).</li>
+</ul>
+
+<p>For the purpose of XSLT an <strong>extra</strong> pointer has been added
+allowing to retrieve the XSLT transformation context. When an XPath
+evaluation is about to be performed, an XPath parser context is allocated
+containing an XPath object stack (this is actually an XPath evaluation
+context, this is a relic of the time where there was no separate parsing and
+evaluation phase in the XPath implementation). Here is an overview of the set
+of contexts associated to an XPath evaluation within an XSLT
+transformation:</p>
+
+<p align="center"><img src="contexts.gif"
+alt="The set of contexts associated "></p>
+
+<p>Clearly this is a bit too complex and confusing and should be refactored
+at the next set of binary incompatible releases of libxml. For example the
+xmlXPathCtxt has a lot of unused parts and should probably be merged with
+xmlXPathParserCtxt.</p>
+
+<h3><a name="Descriptio">Description of XPath Objects</a></h3>
+
+<p>An XPath expression manipulates XPath objects. XPath defines the default
+types boolean, numbers, strings and node sets. XSLT adds the result tree
+fragment type which is basically an unmodifiable node set.</p>
+
+<p>Implementation-wise, libxml follows again a KISS approach, the
+xmlXPathObject is a structure containing a type description and the various
+possibilities. (Using an enum could have gained some bytes.) In the case of
+node sets (or result tree fragments), it points to a separate xmlNodeSet
+object which contains the list of pointers to the document nodes:</p>
+
+<p align="center"><img src="object.gif"
+alt="An Node set object pointing to "></p>
+
+<p>The <a href="http://xmlsoft.org/html/libxml-xpath.html">XPath API</a> (and
+its <a href="http://xmlsoft.org/html/libxml-xpathinternals.html">'internal'
+part</a>) includes a number of functions to create, copy, compare, convert or
+free XPath objects.</p>
+
+<h3><a name="XPath3">XPath functions</a></h3>
+
+<p>All the XPath functions available to the interpreter are registered in the
+function hash table linked from the XPath context. They all share the same
+signature:</p>
+<pre>void xmlXPathFunc (xmlXPathParserContextPtr ctxt, int nargs);</pre>
+
+<p>The first argument is the XPath interpretation context, holding the
+interpretation stack. The second argument defines the number of objects
+passed on the stack for the function to consume (last argument is on top of
+the stack).</p>
+
+<p>Basically an XPath function does the following:</p>
+<ul>
+ <li>check <code>nargs</code> for proper handling of errors or functions
+ with variable numbers of parameters</li>
+ <li>pop the parameters from the stack using <code>obj =
+ valuePop(ctxt);</code></li>
+ <li>do the function specific computation</li>
+ <li>push the result parameter on the stack using <code>valuePush(ctxt,
+ res);</code></li>
+ <li>free up the input parameters with
+ <code>xmlXPathFreeObject(obj);</code></li>
+ <li>return</li>
+</ul>
+
+<p>Sometime the work can be done directly by modifying in-situ the top object
+on the stack <code>ctxt-&gt;value</code>.</p>
+
+<h3><a name="stack">The XSLT variables stack frame</a></h3>
+
+<p>Not to be confused with XPath object stack, this stack holds the XSLT
+variables and parameters as they are defined through the recursive calls of
+call-template, apply-templates and default templates. This is used to define
+the scope of variables being called.</p>
+
+<p>This part seems to be one needing most work , first it is
+done in a very inefficient way since the location of the variables and
+parameters within the stylesheet tree is still done at run time (it really
+should be done statically at compile time), and I am still unsure that my
+understanding of the template variables and parameter scope is actually
+right.</p>
+
+<p>This part of the documentation is still to be written once this part of
+the code will be stable. <span
+style="background-color: #FF0000">TODO</span></p>
+
+<h3><a name="Extension">Extension support</a></h3>
+
+<p>There is a separate document explaining <a href="extensions.html">how the
+extension support works</a>.</p>
+
+<h3><a name="Futher">Further reading</a></h3>
+
+<p>Michael Kay wrote <a
+href="http://www-106.ibm.com/developerworks/library/x-xslt2/?dwzone=x?open&amp;l=132%2ct=gr%2c+p=saxon">a
+really interesting article on Saxon internals</a> and the work he did on
+performance issues. I wish I had read it before starting libxslt design (I
+would probably have avoided a few mistakes and progressed faster). A lot of
+the ideas in his papers should be implemented or at least tried in
+libxslt.</p>
+
+<p>The <a href="http://xmlsoft.org/">libxml documentation</a>, especially <a
+href="http://xmlsoft.org/xmlio.html">the I/O interfaces</a> and the <a
+href="http://xmlsoft.org/xmlmem.html">memory management</a>.</p>
+
+<h3><a name="TODOs">TODOs</a></h3>
+
+<p>redesign the XSLT stack frame handling. Far too much work is done at
+execution time. Similarly for the attribute value templates handling, at
+least the embedded subexpressions ought to be precompiled.</p>
+
+<p>Allow output to be saved to a SAX like output (this notion of SAX like API
+for output should be added directly to libxml).</p>
+
+<p>Implement and test some of the optimization explained by Michael Kay
+especially:</p>
+<ul>
+ <li>static slot allocation on the stack frame</li>
+ <li>specific boolean interpretation of an XPath expression</li>
+ <li>some of the sorting optimization</li>
+ <li>Lazy evaluation of location path. (this may require more changes but
+ sounds really interesting. XT does this too.)</li>
+ <li>Optimization of an expression tree (This could be done as a completely
+ independent module.)</li>
+</ul>
+
+<p></p>
+
+<p>Error reporting, there is a lot of case where the XSLT specification
+specify that a given construct is an error are not checked adequately by
+libxslt. Basically one should do a complete pass on the XSLT spec again and
+add all tests to the stylesheet compilation. Using the DTD provided in the
+appendix and making direct checks using the libxml validation API sounds a
+good idea too (though one should take care of not raising errors for
+elements/attributes in different namespaces).</p>
+
+<p>Double check all the places where the stylesheet compiled form might be
+modified at run time (extra removal of blanks nodes, hint on the
+xsltCompMatch).</p>
+
+<h3><a name="Thanks">Thanks:</a></h3>
+<p>Thanks to <a href="http://cmsmcq.com/">Michael Sperberg-McQueen</a> for
+ various fixes and clarifications on this document!</p>
+
+<p></p>
+
+<h2><a name="Extensions">Writing extensions</a></h2>
+
+<h3>Table of content</h3>
+<ul>
+ <li><a href="extensions.html#Introducti">Introduction</a></li>
+ <li><a href="extensions.html#Basics">Basics</a></li>
+ <li><a href="extensions.html#Keep">Extension modules</a></li>
+ <li><a href="extensions.html#Registerin">Registering a module</a></li>
+ <li><a href="extensions.html#module">Loading a module</a></li>
+ <li><a href="extensions.html#Registerin1">Registering an extension
+ function</a></li>
+ <li><a href="extensions.html#Implementi">Implementing an extension
+ function</a></li>
+ <li><a href="extensions.html#Examples">Examples for extension
+ functions</a></li>
+ <li><a href="extensions.html#Registerin2">Registering an extension
+ element</a></li>
+ <li><a href="extensions.html#Implementi1">Implementing an extension
+ element</a></li>
+ <li><a href="extensions.html#Example">Example for extension
+ elements</a></li>
+ <li><a href="extensions.html#shutdown">The shutdown of a module</a></li>
+ <li><a href="extensions.html#Future">Future work</a></li>
+</ul>
+
+<h3><a name="Introducti1">Introduction</a></h3>
+
+<p>This document describes the work needed to write extensions to the
+standard XSLT library for use with <a
+href="http://xmlsoft.org/XSLT/">libxslt</a>, the <a
+href="http://www.w3.org/TR/xslt">XSLT</a> C library developed for the <a
+href="http://www.gnome.org/">GNOME</a> project.</p>
+
+<p>Before starting reading this document it is highly recommended to get
+familiar with <a href="internals.html">the libxslt internals</a>.</p>
+
+<p>Note: this documentation is by definition incomplete and I am not good at
+spelling, grammar, so patches and suggestions are <a
+href="mailto:veillard@redhat.com">really welcome</a>.</p>
+
+<h3><a name="Basics">Basics</a></h3>
+
+<p>The <a href="http://www.w3.org/TR/xslt">XSLT specification</a> provides
+two <a href="http://www.w3.org/TR/xslt">ways to extend an XSLT engine</a>:</p>
+<ul>
+ <li>providing <a href="http://www.w3.org/TR/xslt">new extension
+ functions</a> which can be called from XPath expressions</li>
+ <li>providing <a href="http://www.w3.org/TR/xslt">new extension
+ elements</a> which can be inserted in stylesheets</li>
+</ul>
+
+<p>In both cases the extensions need to be associated to a new namespace,
+i.e. an URI used as the name for the extension's namespace (there is no need
+to have a resource there for this to work).</p>
+
+<p>libxslt provides a few extensions itself, either in the libxslt namespace
+"http://xmlsoft.org/XSLT/namespace" or in namespaces for other well known
+extensions provided by other XSLT processors like Saxon, Xalan or XT.</p>
+
+<h3><a name="Keep">Extension modules</a></h3>
+
+<p>Since extensions are bound to a namespace name, usually sets of extensions
+coming from a given source are using the same namespace name defining in
+practice a group of extensions providing elements, functions or both. From
+the libxslt point of view those are considered as an "extension module", and
+most of the APIs work at a module point of view.</p>
+
+<p>Registration of new functions or elements are bound to the activation of
+the module. This is currently done by declaring the namespace as an extension
+by using the attribute <code>extension-element-prefixes</code> on the
+<code><a href="http://www.w3.org/TR/xslt">xsl:stylesheet</a></code>
+element.</p>
+
+<p>An extension module is defined by 3 objects:</p>
+<ul>
+ <li>the namespace name associated</li>
+ <li>an initialization function</li>
+ <li>a shutdown function</li>
+</ul>
+
+<h3><a name="Registerin">Registering a module</a></h3>
+
+<p>Currently a libxslt module has to be compiled within the application using
+libxslt. There is no code to load dynamically shared libraries associated to
+a namespace (this may be added but is likely to become a portability
+nightmare).</p>
+
+<p>The current way to register a module is to link the code implementing it
+with the application and to call a registration function:</p>
+<pre>int xsltRegisterExtModule(const xmlChar *URI,
+ xsltExtInitFunction initFunc,
+ xsltExtShutdownFunction shutdownFunc);</pre>
+
+<p>The associated header is read by:</p>
+<pre>#include&lt;libxslt/extensions.h&gt;</pre>
+
+<p>which also defines the type for the initialization and shutdown
+functions</p>
+
+<h3><a name="module">Loading a module</a></h3>
+
+<p>Once the module URI has been registered and if the XSLT processor detects
+that a given stylesheet needs the functionalities of an extended module, this
+one is initialized.</p>
+
+<p>The xsltExtInitFunction type defines the interface for an initialization
+function:</p>
+<pre>/**
+ * xsltExtInitFunction:
+ * @ctxt: an XSLT transformation context
+ * @URI: the namespace URI for the extension
+ *
+ * A function called at initialization time of an XSLT
+ * extension module
+ *
+ * Returns a pointer to the module specific data for this
+ * transformation
+ */
+typedef void *(*xsltExtInitFunction)(xsltTransformContextPtr ctxt,
+ const xmlChar *URI);</pre>
+
+<p>There are 3 things to notice:</p>
+<ul>
+ <li>The function gets passed the namespace name URI as an argument. This
+ allows a single function to provide the initialization for multiple
+ logical modules.</li>
+ <li>It also gets passed a transformation context. The initialization is
+ done at run time before any processing occurs on the stylesheet but it
+ will be invoked separately each time for each transformation.</li>
+ <li>It returns a pointer. This can be used to store module specific
+ information which can be retrieved later when a function or an element
+ from the extension is used. An obvious example is a connection to a
+ database which should be kept and reused along with the transformation.
+ NULL is a perfectly valid return; there is no way to indicate a failure
+ at this level</li>
+</ul>
+
+<p>What this function is expected to do is:</p>
+<ul>
+ <li>prepare the context for this module (like opening the database
+ connection)</li>
+ <li>register the extensions specific to this module</li>
+</ul>
+
+<h3><a name="Registerin1">Registering an extension function</a></h3>
+
+<p>There is a single call to do this registration:</p>
+<pre>int xsltRegisterExtFunction(xsltTransformContextPtr ctxt,
+ const xmlChar *name,
+ const xmlChar *URI,
+ xmlXPathEvalFunc function);</pre>
+
+<p>The registration is bound to a single transformation instance referred by
+ctxt, name is the UTF8 encoded name for the NCName of the function, and URI
+is the namespace name for the extension (no checking is done, a module could
+register functions or elements from a different namespace, but it is not
+recommended).</p>
+
+<h3><a name="Implementi">Implementing an extension function</a></h3>
+
+<p>The implementation of the function must have the signature of a libxml
+XPath function:</p>
+<pre>/**
+ * xmlXPathEvalFunc:
+ * @ctxt: an XPath parser context
+ * @nargs: the number of arguments passed to the function
+ *
+ * an XPath evaluation function, the parameters are on the
+ * XPath context stack
+ */
+
+typedef void (*xmlXPathEvalFunc)(xmlXPathParserContextPtr ctxt,
+ int nargs);</pre>
+
+<p>The context passed to an XPath function is not an XSLT context but an <a
+href="internals.html#XPath1">XPath context</a>. However it is possible to
+find one from the other:</p>
+<ul>
+ <li>The function xsltXPathGetTransformContext provides this lookup facility:
+ <pre>xsltTransformContextPtr
+ xsltXPathGetTransformContext
+ (xmlXPathParserContextPtr ctxt);</pre>
+ </li>
+ <li>The <code>xmlXPathContextPtr</code> associated to an
+ <code>xsltTransformContext</code> is stored in the <code>xpathCtxt</code>
+ field.</li>
+</ul>
+
+<p>The first thing an extension function may want to do is to check the
+arguments passed on the stack, the <code>nargs</code> parameter will tell how
+many of them were provided on the XPath expression. The macro valuePop will
+extract them from the XPath stack:</p>
+<pre>#include &lt;libxml/xpath.h&gt;
+#include &lt;libxml/xpathInternals.h&gt;
+
+xmlXPathObjectPtr obj = valuePop(ctxt); </pre>
+
+<p>Note that <code>ctxt</code> is the XPath context not the XSLT one. It is
+then possible to examine the content of the value. Check <a
+href="internals.html#Descriptio">the description of XPath objects</a> if
+necessary. The following is a common sequence checking whether the argument
+passed is a string and converting it using the built-in XPath
+<code>string()</code> function if this is not the case:</p>
+<pre>if (obj-&gt;type != XPATH_STRING) {
+ valuePush(ctxt, obj);
+ xmlXPathStringFunction(ctxt, 1);
+ obj = valuePop(ctxt);
+}</pre>
+
+<p>Most common XPath functions are available directly at the C level and are
+exported either in <code>&lt;libxml/xpath.h&gt;</code> or in
+<code>&lt;libxml/xpathInternals.h&gt;</code>.</p>
+
+<p>The extension function may also need to retrieve the data associated to
+this module instance (the database connection in the previous example) this
+can be done using the xsltGetExtData:</p>
+<pre>void * xsltGetExtData(xsltTransformContextPtr ctxt,
+ const xmlChar *URI);</pre>
+
+<p>Again the URI to be provided is the one which was used when registering
+the module.</p>
+
+<p>Once the function finishes, don't forget to:</p>
+<ul>
+ <li>push the return value on the stack using <code>valuePush(ctxt,
+ obj)</code></li>
+ <li>deallocate the parameters passed to the function using
+ <code>xmlXPathFreeObject(obj)</code></li>
+</ul>
+
+<h3><a name="Examples">Examples for extension functions</a></h3>
+
+<p>The module libxslt/functions.c contains the sources of the XSLT built-in
+functions, including document(), key(), generate-id(), etc. as well as a full
+example module at the end. Here is the test function implementation for the
+libxslt:test function:</p>
+<pre>/**
+ * xsltExtFunctionTest:
+ * @ctxt: the XPath Parser context
+ * @nargs: the number of arguments
+ *
+ * function libxslt:test() for testing the extensions support.
+ */
+static void
+xsltExtFunctionTest(xmlXPathParserContextPtr ctxt, int nargs)
+{
+ xsltTransformContextPtr tctxt;
+ void *data;
+
+ tctxt = xsltXPathGetTransformContext(ctxt);
+ if (tctxt == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtFunctionTest: failed to get the transformation context\n");
+ return;
+ }
+ data = xsltGetExtData(tctxt, (const xmlChar *) XSLT_DEFAULT_URL);
+ if (data == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtFunctionTest: failed to get module data\n");
+ return;
+ }
+#ifdef WITH_XSLT_DEBUG_FUNCTION
+ xsltGenericDebug(xsltGenericDebugContext,
+ "libxslt:test() called with %d args\n", nargs);
+#endif
+}</pre>
+
+<h3><a name="Registerin2">Registering an extension element</a></h3>
+
+<p>There is a single call to do this registration:</p>
+<pre>int xsltRegisterExtElement(xsltTransformContextPtr ctxt,
+ const xmlChar *name,
+ const xmlChar *URI,
+ xsltTransformFunction function);</pre>
+
+<p>It is similar to the mechanism used to register an extension function,
+except that the signature of an extension element implementation is
+different.</p>
+
+<p>The registration is bound to a single transformation instance referred to
+by ctxt, name is the UTF8 encoded name for the NCName of the element, and URI
+is the namespace name for the extension (no checking is done, a module could
+register elements for a different namespace, but it is not recommended).</p>
+
+<h3><a name="Implementi1">Implementing an extension element</a></h3>
+
+<p>The implementation of the element must have the signature of an XSLT
+transformation function:</p>
+<pre>/**
+ * xsltTransformFunction:
+ * @ctxt: the XSLT transformation context
+ * @node: the input node
+ * @inst: the stylesheet node
+ * @comp: the compiled information from the stylesheet
+ *
+ * signature of the function associated to elements part of the
+ * stylesheet language like xsl:if or xsl:apply-templates.
+ */
+typedef void (*xsltTransformFunction)
+ (xsltTransformContextPtr ctxt,
+ xmlNodePtr node,
+ xmlNodePtr inst,
+ xsltStylePreCompPtr comp);</pre>
+
+<p>The first argument is the XSLT transformation context. The second and
+third arguments are xmlNodePtr i.e. internal memory <a
+href="internals.html#libxml">representation of XML nodes</a>. They are
+respectively <code>node</code> from the the input document being transformed
+by the stylesheet and <code>inst</code> the extension element in the
+stylesheet. The last argument is <code>comp</code> a pointer to a precompiled
+representation of <code>inst</code> but usually for an extension function
+this value is <code>NULL</code> by default (it could be added and associated
+to the instruction in <code>inst-&gt;_private</code>).</p>
+
+<p>The same functions are available from a function implementing an extension
+element as in an extension function, including
+<code>xsltGetExtData()</code>.</p>
+
+<p>The goal of an extension element being usually to enrich the generated
+output, it is expected that they will grow the currently generated output
+tree. This can be done by grabbing ctxt-&gt;insert which is the current
+libxml node being generated (Note this can also be the intermediate value
+tree being built for example to initialize a variable, the processing should
+be similar). The functions for libxml tree manipulation from <a
+href="http://xmlsoft.org/html/libxml-tree.html">&lt;libxml/tree.h&gt;</a> can
+be employed to extend or modify the tree, but it is required to preserve the
+insertion node and its ancestors since there are existing pointers to those
+elements still in use in the XSLT template execution stack.</p>
+
+<h3><a name="Example">Example for extension elements</a></h3>
+
+<p>The module libxslt/transform.c contains the sources of the XSLT built-in
+elements, including xsl:element, xsl:attribute, xsl:if, etc. There is a small
+but full example in functions.c providing the implementation for the
+libxslt:test element, it will output a comment in the result tree:</p>
+<pre>/**
+ * xsltExtElementTest:
+ * @ctxt: an XSLT processing context
+ * @node: The current node
+ * @inst: the instruction in the stylesheet
+ * @comp: precomputed information
+ *
+ * Process a libxslt:test node
+ */
+static void
+xsltExtElementTest(xsltTransformContextPtr ctxt, xmlNodePtr node,
+ xmlNodePtr inst,
+ xsltStylePreCompPtr comp)
+{
+ xmlNodePtr comment;
+
+ if (ctxt == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtElementTest: no transformation context\n");
+ return;
+ }
+ if (node == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtElementTest: no current node\n");
+ return;
+ }
+ if (inst == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtElementTest: no instruction\n");
+ return;
+ }
+ if (ctxt-&gt;insert == NULL) {
+ xsltGenericError(xsltGenericErrorContext,
+ "xsltExtElementTest: no insertion point\n");
+ return;
+ }
+ comment =
+ xmlNewComment((const xmlChar *)
+ "libxslt:test element test worked");
+ xmlAddChild(ctxt-&gt;insert, comment);
+}</pre>
+
+<h3><a name="shutdown">The shutdown of a module</a></h3>
+
+<p>When the XSLT processor ends a transformation, the shutdown function (if
+it exists) for each of the modules initialized is called. The
+xsltExtShutdownFunction type defines the interface for a shutdown
+function:</p>
+<pre>/**
+ * xsltExtShutdownFunction:
+ * @ctxt: an XSLT transformation context
+ * @URI: the namespace URI for the extension
+ * @data: the data associated to this module
+ *
+ * A function called at shutdown time of an XSLT extension module
+ */
+typedef void (*xsltExtShutdownFunction) (xsltTransformContextPtr ctxt,
+ const xmlChar *URI,
+ void *data);</pre>
+
+<p>This is really similar to a module initialization function except a third
+argument is passed, it's the value that was returned by the initialization
+function. This allows the routine to deallocate resources from the module for
+example close the connection to the database to keep the same example.</p>
+
+<h3><a name="Future">Future work</a></h3>
+
+<p>Well, some of the pieces missing:</p>
+<ul>
+ <li>a way to load shared libraries to instantiate new modules</li>
+ <li>a better detection of extension functions usage and their registration
+ without having to use the extension prefix which ought to be reserved to
+ element extensions.</li>
+ <li>more examples</li>
+ <li>implementations of the <a href="http://www.exslt.org/">EXSLT</a> common
+ extension libraries, Thomas Broyer nearly finished implementing them.</li>
+</ul>
+
+<p></p>
+
+<h2><a name="Contributi">Contributions</a></h2>
+<ul>
+ <li>Bjorn Reese is the author of the number support and worked on the
+ XSLTMark support</li>
+ <li>William Brack was an early adopted, contributed a number of patches and
+ spent quite some time debugging non-trivial problems in early versions of
+ libxslt</li>
+ <li><a href="mailto:igor@zlatkovic.com">Igor Zlatkovic</a> is now the
+ maintainer of the Windows port, <a
+ href="http://www.zlatkovic.com/projects/libxml/index.html">he provides
+ binaries</a></li>
+ <li>Thomas Broyer provided a lot of suggestions, and drafted most of the
+ extension API</li>
+ <li>John Fleck maintains <a href="tutorial/libxslttutorial.html">a tutorial
+ for libxslt</a></li>
+ <li><a
+ href="http://mail.gnome.org/archives/xml/2001-March/msg00014.html">Matt
+ Sergeant</a> developed <a
+ href="http://axkit.org/download/">XML::LibXSLT</a>, a perl wrapper for
+ libxml2/libxslt as part of the <a href="http://axkit.com/">AxKit XML
+ application server</a></li>
+ <li>there is a module for <a
+ href="http://acs-misc.sourceforge.net/nsxml.html">libxml/libxslt support
+ in OpenNSD/AOLServer</a></li>
+ <li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a> provides
+ libxml/libxslt <a href="http://www.rexx.com/~dkuhlman">wrappers for
+ Python</a></li>
+ <li><a href="mailto:Steve.Ball@explain.com.au">Steve Ball</a>, and
+ contributors maintain <a href="http://tclxml.sourceforge.net/">tcl
+ bindings for libxml2 and libxslt</a>, as well as <a
+ href="http://tclxml.sf.net/tkxmllint.html">tkxmllint</a> a GUI for
+ xmllint and <a href="http://tclxml.sf.net/tkxsltproc.html">tkxsltproc</a>
+ a GUI for xsltproc.</li>
+ <li>If you want to use libxslt in a Mac OS X/Cocoa or Objective-C
+ framework, Marc Liyanage provides <a
+ href="http://www.entropy.ch/software/macosx/#testxslt">an application
+ TestXSLT for XSLT and XML editing</a> including wrapper classes for the
+ XML parser and XSLT processor.</li>
+</ul>
+
+<p></p>
+
+<p><a href="mailto:daniel@veillard.com">Daniel Veillard</a></p>
+</body>
+</html>
diff --git a/libxslt/doc/xsltproc.1 b/libxslt/doc/xsltproc.1
new file mode 100644
index 0000000..d94e7a2
--- /dev/null
+++ b/libxslt/doc/xsltproc.1
@@ -0,0 +1,361 @@
+.\" Title: xsltproc
+.\" Author: John Fleck <jfleck@inkstain.net>
+.\" Generator: DocBook XSL Stylesheets v1.73.2 <http://docbook.sf.net/>
+.\" Date: $Date: 2008-04-21 16:28:56 +0200 (Mon, 21 Apr 2008) $
+.\" Manual: xsltproc Manual
+.\" Source: libxslt
+.\"
+.TH "XSLTPROC" "1" "$Date: 2008\-04\-21 16:28:56 +0200 (Mon, 21 Apr 2008) $" "libxslt" "xsltproc Manual"
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.SH "NAME"
+xsltproc - command line XSLT processor
+.SH "SYNOPSIS"
+.HP 9
+\fBxsltproc\fR [[\fB\-V\fR | \fB\-\-version\fR] [\fB\-v\fR | \fB\-\-verbose\fR] [{\fB\-o\fR | \fB\-\-output\fR} {\fIFILE\fR | \fIDIRECTORY\fR}] | \fB\-\-timing\fR | \fB\-\-repeat\fR | \fB\-\-debug\fR | \fB\-\-novalid\fR | \fB\-\-noout\fR | \fB\-\-maxdepth\ \fR\fB\fIVALUE\fR\fR | \fB\-\-html\fR | \fB\-\-encoding\ \fR\fB\fIENCODING\fR\fR\fB\ \fR | \fB\-\-param\ \fR\fB\fIPARAMNAME\fR\fR\fB\ \fR\fB\fIPARAMVALUE\fR\fR\fB\ \fR | \fB\-\-stringparam\ \fR\fB\fIPARAMNAME\fR\fR\fB\ \fR\fB\fIPARAMVALUE\fR\fR\fB\ \fR | \fB\-\-nonet\fR | \fB\-\-path\ "\fR\fB\fIPATH(S)\fR\fR\fB"\fR | \fB\-\-load\-trace\fR | \fB\-\-catalogs\fR | \fB\-\-xinclude\fR | [\fB\-\-profile\fR\ |\ \fB\-\-norman\fR] | \fB\-\-dumpextensions\fR | \fB\-\-nowrite\fR | \fB\-\-nomkdir\fR | \fB\-\-writesubtree\ \fR\fB\fIPATH\fR\fR | \fB\-\-nodtdattr\fR] [\fISTYLESHEET\fR] {\fIXML\-FILE\fR | \-}
+.SH "DESCRIPTION"
+.PP
+
+\fBxsltproc\fR
+is a command line tool for applying
+XSLT
+stylesheets to
+XML
+documents\. It is part of
+\fBlibxslt\fR(3), the XSLT C library for GNOME\. While it was developed as part of the GNOME project, it can operate independently of the GNOME desktop\.
+.PP
+
+\fBxsltproc\fR
+is invoked from the command line with the name of the stylesheet to be used followed by the name of the file or files to which the stylesheet is to be applied\. It will use the standard input if a filename provided is
+\fB\-\fR
+\.
+.PP
+If a stylesheet is included in an
+XML
+document with a Stylesheet Processing Instruction, no stylesheet need to be named at the command line\.
+\fBxsltproc\fR
+will automatically detect the included stylesheet and use it\.
+.PP
+By default, output is to
+\fIstdout\fR\. You can specify a file for output using the
+\fB\-o\fR
+or
+\fB\-\-output\fR
+option\.
+.SH "OPTIONS"
+.PP
+
+\fBxsltproc\fR
+accepts the following options (in alphabetical order):
+.PP
+\fB\-\-catalogs\fR
+.RS 4
+Use the
+SGML
+catalog specified in
+\fBSGML_CATALOG_FILES\fR
+to resolve the location of external entities\. By default,
+\fBxsltproc\fR
+looks for the catalog specified in
+\fBXML_CATALOG_FILES\fR\. If that is not specified, it uses
+\fI/etc/xml/catalog\fR\.
+.RE
+.PP
+\fB\-\-debug\fR
+.RS 4
+Output an
+XML
+tree of the transformed document for debugging purposes\.
+.RE
+.PP
+\fB\-\-dumpextensions\fR
+.RS 4
+Dumps the list of all registered extensions on
+\fIstdout\fR\.
+.RE
+.PP
+\fB\-\-html\fR
+.RS 4
+The input document is an
+HTML
+file\.
+.RE
+.PP
+\fB\-\-load\-trace\fR
+.RS 4
+Display all the documents loaded during the processing to
+\fIstderr\fR\.
+.RE
+.PP
+\fB\-\-maxdepth \fR\fB\fIVALUE\fR\fR
+.RS 4
+Adjust the maximum depth of the template stack before
+\fBlibxslt\fR(3)
+concludes it is in an infinite loop\. The default is 3000\.
+.RE
+.PP
+\fB\-\-nodtdattr\fR
+.RS 4
+Do not apply default attributes from the document\'s
+DTD\.
+.RE
+.PP
+\fB\-\-nomkdir\fR
+.RS 4
+Refuses to create directories\.
+.RE
+.PP
+\fB\-\-nonet\fR
+.RS 4
+Do not use the Internet to fetch
+DTDs, entities or documents\.
+.RE
+.PP
+\fB\-\-noout\fR
+.RS 4
+Do not output the result\.
+.RE
+.PP
+\fB\-\-novalid\fR
+.RS 4
+Skip loading the document\'s
+DTD\.
+.RE
+.PP
+\fB\-\-nowrite\fR
+.RS 4
+Refuses to write to any file or resource\.
+.RE
+.PP
+\fB\-o\fR or \fB\-\-output\fR \fIFILE\fR | \fIDIRECTORY\fR
+.RS 4
+Direct output to the given
+\fIFILE\fR\. Using the option with a
+\fIDIRECTORY\fR
+directs the output files to the specified directory\. This can be useful for multiple outputs (also known as "chunking") or manpage processing\.
+.sp
+.it 1 an-trap
+.nr an-no-space-flag 1
+.nr an-break-flag 1
+.br
+Important
+The given directory
+\fBmust\fR
+already exist\.
+.sp
+.it 1 an-trap
+.nr an-no-space-flag 1
+.nr an-break-flag 1
+.br
+Note
+Make sure that
+\fIFILE\fR
+and
+\fIDIRECTORY\fR
+follow the
+\(lqURI reference computation\(rq
+as described in RFC 2396 and laters\. This means, that e\.g\.
+\fB\-o directory\fR
+will maybe not work, but
+\fB\-o directory/\fR
+will\.
+.RE
+.PP
+\fB\-\-encoding \fR\fB\fIENCODING\fR\fR
+.RS 4
+Allow to specify the encoding for the input\.
+.RE
+.PP
+\fB\-\-param \fR\fB\fIPARAMNAME\fR\fR\fB \fR\fB\fIPARAMVALUE\fR\fR
+.RS 4
+Pass a parameter of name
+\fIPARAMNAME\fR
+and value
+\fIPARAMVALUE\fR
+to the stylesheet\. You may pass multiple name/value pairs up to a maximum of 32\. If the value being passed is a string, you can use
+\fB\-\-stringparam\fR
+instead, to avoid additional quote characters that appear in string expressions\. Note: the XPath expression must be UTF\-8 encoded\.
+.RE
+.PP
+\fB\-\-path "\fR\fB\fIPATH(S)\fR\fR\fB"\fR
+.RS 4
+Use the (space\- or colon\-separated) list of filesystem paths specified by
+\fIPATHS\fR
+to load
+DTDs, entities or documents\. Enclose space\-separated lists by quotation marks\.
+.RE
+.PP
+\fB\-\-profile\fR or \fB\-\-norman\fR
+.RS 4
+Output profiling information detailing the amount of time spent in each part of the stylesheet\. This is useful in optimizing stylesheet performance\.
+.RE
+.PP
+\fB\-\-repeat\fR
+.RS 4
+Run the transformation 20 times\. Used for timing tests\.
+.RE
+.PP
+\fB\-\-stringparam \fR\fB\fIPARAMNAME\fR\fR\fB \fR\fB\fIPARAMVALUE\fR\fR
+.RS 4
+Pass a parameter of name
+\fIPARAMNAME\fR
+and value
+\fIPARAMVALUE\fR
+where
+\fIPARAMVALUE\fR
+is a string rather than a node identifier\.
+\fBNote:\fR
+The string must be UTF\-8 encoded\.
+.RE
+.PP
+\fB\-\-timing\fR
+.RS 4
+Display the time used for parsing the stylesheet, parsing the document and applying the stylesheet and saving the result\. Displayed in milliseconds\.
+.RE
+.PP
+\fB\-v\fR or \fB\-\-verbose\fR
+.RS 4
+Output each step taken by
+\fBxsltproc\fR
+in processing the stylesheet and the document\.
+.RE
+.PP
+\fB\-V\fR or \fB\-\-version\fR
+.RS 4
+Show the version of
+\fBlibxml\fR(3)
+and
+\fBlibxslt\fR(3)
+used\.
+.RE
+.PP
+\fB\-\-writesubtree \fR\fB\fIPATH\fR\fR
+.RS 4
+Allow file write only within the
+\fIPATH\fR
+subtree\.
+.RE
+.PP
+\fB\-\-xinclude\fR
+.RS 4
+Process the input document using the XInclude specification\. More details on this can be found in the XInclude specification:
+\fI\%http://www.w3.org/TR/xinclude/\fR
+.RE
+.SH "ENVIRONMENT"
+.PP
+\fBSGML_CATALOG_FILES\fR
+.RS 4
+SGML
+catalog behavior can be changed by redirecting queries to the user\'s own set of catalogs\. This can be done by setting the
+\fBSGML_CATALOG_FILES\fR
+environment variable to a list of catalogs\. An empty one should deactivate loading the default
+\fI/etc/sgml/catalog\fR
+catalog\.
+.RE
+.PP
+\fBXML_CATALOG_FILES\fR
+.RS 4
+XML
+catalog behavior can be changed by redirecting queries to the user\'s own set of catalogs\. This can be done by setting the
+\fBXML_CATALOG_FILES\fR
+environment variable to a list of catalogs\. An empty one should deactivate loading the default
+\fI/etc/xml/catalog\fR
+catalog\.
+.RE
+.SH "DIAGNOSTICS"
+.PP
+
+\fBxsltproc\fR
+return codes provide information that can be used when calling it from scripts\.
+.PP
+\fB0\fR
+.RS 4
+No error (normal operation)
+.RE
+.PP
+\fB1\fR
+.RS 4
+No argument
+.RE
+.PP
+\fB2\fR
+.RS 4
+Too many parameters
+.RE
+.PP
+\fB3\fR
+.RS 4
+Unknown option
+.RE
+.PP
+\fB4\fR
+.RS 4
+Failed to parse the stylesheet
+.RE
+.PP
+\fB5\fR
+.RS 4
+Error in the stylesheet
+.RE
+.PP
+\fB6\fR
+.RS 4
+Error in one of the documents
+.RE
+.PP
+\fB7\fR
+.RS 4
+Unsupported xsl:output method
+.RE
+.PP
+\fB8\fR
+.RS 4
+String parameter contains both quote and double\-quotes
+.RE
+.PP
+\fB9\fR
+.RS 4
+Internal processing error
+.RE
+.PP
+\fB10\fR
+.RS 4
+Processing was stopped by a terminating message
+.RE
+.PP
+\fB11\fR
+.RS 4
+Could not write the result to the output file
+.RE
+.SH "SEE ALSO"
+.PP
+\fBlibxml\fR(3),
+\fBlibxslt\fR(3)
+.PP
+More information can be found at
+.sp
+.RS 4
+\h'-04'\(bu\h'+03'\fBlibxml\fR(3)
+web page
+\fI\%http://www.xmlsoft.org/\fR
+.RE
+.sp
+.RS 4
+\h'-04'\(bu\h'+03'W3C
+XSLT
+page
+\fI\%http://www.w3.org/TR/xslt\fR
+.RE
+.sp
+.RE
+.SH "AUTHOR"
+.PP
+\fBJohn Fleck\fR <\&jfleck@inkstain\.net\&>
+.sp -1n
+.IP "" 4
+Author.
+.SH "COPYRIGHT"
+Copyright \(co 2001, 2002
+.br
diff --git a/libxslt/doc/xsltproc.html b/libxslt/doc/xsltproc.html
new file mode 100644
index 0000000..8d19223
--- /dev/null
+++ b/libxslt/doc/xsltproc.html
@@ -0,0 +1,101 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xsltproc</title><meta name="generator" content="DocBook XSL Stylesheets V1.61.2"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en"><a name="id2685813"></a><div class="titlepage"><div></div><div></div></div><div class="refnamediv"><h2>Name</h2><p>xsltproc &#8212; command line xslt processor</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="cmdsynopsis"><p><tt class="command">xsltproc</tt> [[-V] | [-v] | [-o <i class="replaceable"><tt>file</tt></i>] | [--timing] | [--repeat] | [--debug] | [--novalid] | [--noout] | [--maxdepth <i class="replaceable"><tt>val</tt></i>] | [--html] | [--param <i class="replaceable"><tt>name</tt></i> <i class="replaceable"><tt>value</tt></i>] | [--stringparam <i class="replaceable"><tt>name</tt></i> <i class="replaceable"><tt>value</tt></i>] | [--nonet] | [--path <i class="replaceable"><tt>paths</tt></i>] | [--load-trace] | [--catalogs] | [--xinclude] | [--profile] | [--dumpextensions] | [--nowrite] | [--nomkdir] | [--writesubtree] | [--nodtdattr]] [<tt class="option"><i class="replaceable"><tt>stylesheet</tt></i></tt>] [<i class="replaceable"><tt>file1</tt></i>] [<i class="replaceable"><tt>file2</tt></i>] [<i class="replaceable"><tt>....</tt></i>]</p></div></div><div class="refsect1" lang="en"><a name="introduction"></a><h2>Introduction</h2><p>
+ <span class="application">xsltproc</span> is a command line tool for applying
+ <span class="acronym">XSLT</span> stylesheets to <span class="acronym">XML</span>
+ documents. It is part of <span class="application">libxslt</span>, the XSLT C
+ library for GNOME. While it was developed as part of the GNOME project, it
+ can operate independently of the GNOME desktop.
+ </p><p>
+ <span class="application">xsltproc</span> is invoked from the command line with
+ the name of the stylesheet to be used followed by the name of the file or
+ files to which the stylesheet is to be applied. It will use the standard
+ input if a filename provided is - .
+ </p><p>
+ If a stylesheet is included in an <span class="acronym">XML</span> document with a
+ Stylesheet Processing Instruction, no stylesheet need be named at the
+ command line. <span class="application">xsltproc</span> will automatically
+ detect the included stylesheet and use it.
+ </p><p>
+ By default, output is to stdout. You can specify a file for output using
+ the <tt class="option">-o</tt> option.
+ </p></div><div class="refsect1" lang="en"><a name="options"></a><h2>Command Line Options</h2><div class="variablelist"><dl><dt><span class="term"><tt class="option">-V</tt> or <tt class="option">--version</tt></span></dt><dd>Show the version of
+ <span class="application">libxml</span> and <span class="application">libxslt</span> used.
+ </dd><dt><span class="term">
+ <tt class="option">-v</tt> or <tt class="option">--verbose</tt></span></dt><dd>Output each step taken
+ by <span class="application">xsltproc</span> in processing the stylesheet and the document.
+ </dd><dt><span class="term">
+ <tt class="option">-o</tt> or <tt class="option">--output</tt> <i class="replaceable"><tt>file</tt></i></span></dt><dd>Direct output to the file named
+ <i class="replaceable"><tt>file</tt></i>. For multiple outputs, also known as
+ "chunking", <tt class="option">-o</tt> <tt class="option">directory/</tt> directs the
+ output files to a specified directory. The directory must already exist.
+ </dd><dt><span class="term">
+ <tt class="option">--timing</tt></span></dt><dd>Display the time used for parsing the
+ stylesheet, parsing the document and applying the stylesheet and saving
+ the result. Displayed in milliseconds.
+ </dd><dt><span class="term">
+ <tt class="option">--repeat</tt></span></dt><dd>Run the transformation 20 times. Used for
+ timing tests.
+ </dd><dt><span class="term">
+ <tt class="option">--debug</tt></span></dt><dd>Output an <span class="acronym">XML</span> tree of the
+ transformed document for debugging purposes.
+ </dd><dt><span class="term">
+ <tt class="option">--novalid</tt></span></dt><dd>Skip loading the document's <span class="acronym">DTD</span>.
+ </dd><dt><span class="term">
+ <tt class="option">--noout</tt></span></dt><dd>Do not output the result.
+ </dd><dt><span class="term">
+ <tt class="option">--maxdepth</tt> <i class="replaceable"><tt>value</tt></i></span></dt><dd>Adjust the
+ maximum depth of the template stack before
+ <span class="application">libxslt</span> concludes it is in an infinite
+ loop. The default is 500.
+ </dd><dt><span class="term">
+ <tt class="option">--html</tt></span></dt><dd>The input document is an <span class="acronym">HTML</span>
+ file.
+ </dd><dt><span class="term">
+ <tt class="option">--param</tt> <i class="replaceable"><tt>name</tt></i> <i class="replaceable"><tt>value</tt></i></span></dt><dd>Pass a parameter of name
+ <i class="replaceable"><tt>name</tt></i> and value
+ <i class="replaceable"><tt>value</tt></i> to the stylesheet. You may pass multiple
+ name/value pairs up to a maximum of 32. If the value being passed is a
+ string rather than a node identifier, use
+ <tt class="option">--stringparam</tt> instead.
+ </dd><dt><span class="term">
+ <tt class="option">--stringparam</tt> <i class="replaceable"><tt>name</tt></i> <i class="replaceable"><tt>value</tt></i></span></dt><dd>Pass a paramenter of name <i class="replaceable"><tt>name</tt></i> and
+ value <i class="replaceable"><tt>value</tt></i> where
+ <i class="replaceable"><tt>value</tt></i> is a string rather than a node
+ identifier. (Note: The string must be utf-8.) </dd><dt><span class="term">
+ <tt class="option">--nonet</tt></span></dt><dd>Do not use the Internet to fetch DTD's,
+ entities or documents.
+ </dd><dt><span class="term"> <tt class="option">--path</tt> <i class="replaceable"><tt>paths</tt></i></span></dt><dd>
+ Use the list (separated by space or column) of filesystem paths
+ specified by <i class="replaceable"><tt>paths</tt></i> to load
+ <span class="acronym">DTDs</span>, entities or documents.
+ </dd><dt><span class="term"><tt class="option">--load-trace</tt></span></dt><dd>
+ Display to stderr all the documents loaded during the processing.
+ </dd><dt><span class="term">
+ <tt class="option">--catalogs</tt></span></dt><dd>Use the <span class="acronym">SGML</span> catalog specified in
+ <tt class="envar">SGML_CATALOG_FILES</tt> to resolve the location of
+ external entities. By default, <span class="application">xsltproc</span>
+ looks for the catalog specified in
+ <tt class="envar">XML_CATALOG_FILES</tt>. If that is not specified, it uses
+ <tt class="filename">/etc/xml/catalog</tt>.
+ </dd><dt><span class="term">
+ <tt class="option">--xinclude</tt></span></dt><dd>Process the input document using the
+ Xinclude specification. More details on this can be found in the Xinclude
+ specification: <a href="http://www.w3.org/TR/xinclude/" target="_top">http://www.w3.org/TR/xinclude/</a>
+ </dd><dt><span class="term">
+ <tt class="option">--profile</tt> or <tt class="option">--norman</tt></span></dt><dd>Output profiling
+ information detailing the amount of time spent in each part of the
+ stylesheet. This is useful in optimizing stylesheet performance.
+ </dd><dt><span class="term">
+ <tt class="option">--dumpextensions</tt></span></dt><dd>Dumps the list of all registered extensions on stdout.
+ </dd><dt><span class="term">
+ <tt class="option">--nowrite</tt></span></dt><dd>Refuses to write to any file or resource.
+ </dd><dt><span class="term">
+ <tt class="option">--nomkdir</tt></span></dt><dd>Refuses to create directories.
+ </dd><dt><span class="term">
+ <tt class="option">--writesubtree</tt> <i class="replaceable"><tt>path</tt></i></span></dt><dd>Allow file write only within the
+ <i class="replaceable"><tt>path</tt></i> subtree.
+ </dd><dt><span class="term">
+ <tt class="option">--nodtdattr</tt>
+ </span></dt><dd>Do not apply default attributes from the document's
+ <span class="acronym">DTD</span>.
+ </dd></dl></div></div><div class="refsect1" lang="en"><a name="return"></a><h2>Return values</h2><p><span class="application">xsltproc</span>'s return codes provide information
+ that can be used when calling it from scripts.</p><p>0: normal</p><p>1: no argument</p><p>2: too many parameters</p><p>3: unknown option</p><p>4: failed to parse the stylesheet</p><p>5: error in the stylesheet</p><p>6: error in one of the documents</p><p>7: unsupported xsl:output method</p><p>8: string parameter contains both quote and double-quotes</p><p>9: internal processing error</p><p>10: processing was stopped by a terminating message</p><p>11: could not write the result to the output file</p></div><div class="refsect1" lang="en"><a name="moreinfo"></a><h2>More Information</h2><p><span class="application">libxml web page: </span><a href="http://www.xmlsoft.org/" target="_top">http://www.xmlsoft.org/</a></p><p>W3C <span class="acronym">XSLT page: </span><a href="http://www.w3.org/TR/xslt" target="_top">http://www.w3.org/TR/xslt</a></p></div></div></body></html>
diff --git a/libxslt/doc/xsltproc.xml b/libxslt/doc/xsltproc.xml
new file mode 100644
index 0000000..bd1d79f
--- /dev/null
+++ b/libxslt/doc/xsltproc.xml
@@ -0,0 +1,573 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl"
+ href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
+
+ <!ENTITY xsltproc "<command>xsltproc</command>">
+]>
+
+<refentry>
+
+<refentryinfo>
+ <title>xsltproc Manual</title>
+ <productname>libxslt</productname>
+ <copyright>
+ <year>2001</year>
+ <year>2002</year>
+ </copyright>
+ <author>
+ <firstname>John</firstname>
+ <surname>Fleck</surname>
+ <affiliation>
+ <address>
+ <email>jfleck@inkstain.net</email>
+ </address>
+ </affiliation>
+ </author>
+ <!-- date should be the date of the latest change or the release version -->
+ <date>$Date$</date>
+ <!-- still a bit buggy output, will talk to docbook-xsl upstream to fix this -->
+ <!-- <releaseinfo>This is release 0.4 of the xsltproc Manual.</releaseinfo> -->
+ <!-- <edition>0.4</edition> -->
+</refentryinfo>
+
+<refmeta>
+ <refentrytitle>xsltproc</refentrytitle>
+ <manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+ <refname>xsltproc</refname>
+ <refpurpose>command line XSLT processor</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <cmdsynopsis>
+ <command>xsltproc</command>
+ <group choice="opt">
+ <group choice="opt">
+ <arg choice="plain"><option>-V</option></arg>
+ <arg choice="plain"><option>--version</option></arg>
+ </group>
+ <group choice="opt">
+ <arg choice="plain"><option>-v</option></arg>
+ <arg choice="plain"><option>--verbose</option></arg>
+ </group>
+ <group choice="opt">
+ <group choice="req">
+ <arg choice="plain"><option>-o</option></arg>
+ <arg choice="plain"><option>--output</option></arg>
+ </group>
+ <group choice="req">
+ <arg choice="plain"><replaceable class="option">FILE</replaceable></arg>
+ <arg choice="plain"><replaceable class="option">DIRECTORY</replaceable></arg>
+ </group>
+ </group>
+ <arg choice="plain"><option>--timing</option></arg>
+ <arg choice="plain"><option>--repeat</option></arg>
+ <arg choice="plain"><option>--debug</option></arg>
+ <arg choice="plain"><option>--novalid</option></arg>
+ <arg choice="plain"><option>--noout</option></arg>
+ <arg choice="plain"><option>--maxdepth <replaceable class="option">VALUE</replaceable></option></arg>
+ <arg choice="plain"><option>--html</option></arg>
+ <arg choice="plain"><option>--encoding
+ <replaceable class="option">ENCODING</replaceable>
+ </option></arg>
+ <arg choice="plain"><option>--param
+ <replaceable class="option">PARAMNAME</replaceable>
+ <replaceable class="option">PARAMVALUE</replaceable>
+ </option></arg>
+ <arg choice="plain"><option>--stringparam
+ <replaceable class="option">PARAMNAME</replaceable>
+ <replaceable class="option">PARAMVALUE</replaceable>
+ </option></arg>
+ <arg choice="plain"><option>--nonet</option></arg>
+ <arg choice="plain"><option>--path "<replaceable class="option">PATH(S)</replaceable>"</option></arg>
+ <arg choice="plain"><option>--load-trace</option></arg>
+ <arg choice="plain"><option>--catalogs</option></arg>
+ <arg choice="plain"><option>--xinclude</option></arg>
+ <arg choice="plain">
+ <group choice="opt">
+ <arg choice="plain"><option>--profile</option></arg>
+ <arg choice="plain"><option>--norman</option></arg>
+ </group>
+ </arg>
+ <arg choice="plain"><option>--dumpextensions</option></arg>
+ <arg choice="plain"><option>--nowrite</option></arg>
+ <arg choice="plain"><option>--nomkdir</option></arg>
+ <arg choice="plain"><option>--writesubtree <replaceable>PATH</replaceable></option></arg>
+ <arg choice="plain"><option>--nodtdattr</option></arg>
+ </group>
+ <arg choice="opt"><replaceable>STYLESHEET</replaceable></arg>
+ <group choice="req">
+ <arg choice="plain" rep="repeat"><replaceable>XML-FILE</replaceable></arg>
+ <arg choice="plain" rep="norepeat">-</arg>
+ </group>
+ </cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1 id="description">
+ <title>DESCRIPTION</title>
+ <para>
+ &xsltproc; is a command line tool for applying <acronym>XSLT</acronym>
+ stylesheets to <acronym>XML</acronym> documents. It is part
+ of <citerefentry>
+ <refentrytitle>libxslt</refentrytitle>
+ <manvolnum>3</manvolnum>
+ </citerefentry>, the XSLT C library for GNOME.
+ While it was developed as part of the GNOME project, it can operate
+ independently of the GNOME desktop.
+ </para>
+ <para>
+ &xsltproc; is invoked from the command line with the name of the
+ stylesheet to be used followed by the name of the file or files to which
+ the stylesheet is to be applied. It will use the standard input if a
+ filename provided is <emphasis role="bold">-</emphasis> .
+ </para>
+ <para>
+ If a stylesheet is included in an <acronym>XML</acronym> document with a
+ Stylesheet Processing Instruction, no stylesheet need to be named at the
+ command line. &xsltproc; will automatically detect the included stylesheet
+ and use it.
+ </para>
+ <para>
+ By default, output is to <filename class="devicefile">stdout</filename>.
+ You can specify a file for output using
+ the <option>-o</option> or <option>--output</option> option.
+ </para>
+</refsect1>
+
+<refsect1 id="options">
+ <title>OPTIONS</title>
+ <para>
+ &xsltproc; accepts the following options (in alphabetical order):
+ </para>
+ <variablelist>
+
+ <varlistentry>
+ <term><option>--catalogs</option></term>
+ <listitem>
+ <para>
+ Use the <acronym>SGML</acronym> catalog specified
+ in <envar>SGML_CATALOG_FILES</envar> to resolve the location of
+ external entities. By default, &xsltproc; looks for the catalog
+ specified in <envar>XML_CATALOG_FILES</envar>. If that is not
+ specified, it uses <filename>/etc/xml/catalog</filename>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--debug</option></term>
+ <listitem>
+ <para>
+ Output an <acronym>XML</acronym> tree of the transformed document
+ for debugging purposes.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--dumpextensions</option></term>
+ <listitem>
+ <para>
+ Dumps the list of all registered extensions
+ on <filename class="devicefile">stdout</filename>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--html</option></term>
+ <listitem>
+ <para>The input document is an <acronym>HTML</acronym> file.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--load-trace</option></term>
+ <listitem>
+ <para>
+ Display all the documents loaded during the processing
+ to <filename class="devicefile">stderr</filename>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--maxdepth <replaceable>VALUE</replaceable></option></term>
+ <listitem>
+ <para>
+ Adjust the maximum depth of the template stack
+ before <citerefentry>
+ <refentrytitle>libxslt</refentrytitle>
+ <manvolnum>3</manvolnum>
+ </citerefentry> concludes it is in an infinite loop. The default is 3000.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--nodtdattr</option></term>
+ <listitem>
+ <para>
+ Do not apply default attributes from the
+ document's <acronym>DTD</acronym>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--nomkdir</option></term>
+ <listitem>
+ <para>Refuses to create directories.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--nonet</option></term>
+ <listitem>
+ <para>
+ Do not use the Internet to fetch <acronym>DTD</acronym>s, entities
+ or documents.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--noout</option></term>
+ <listitem>
+ <para>Do not output the result.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--novalid</option></term>
+ <listitem>
+ <para>Skip loading the document's <acronym>DTD</acronym>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--nowrite</option></term>
+ <listitem>
+ <para>Refuses to write to any file or resource.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>-o</option> or <option>--output</option>
+ <replaceable>FILE</replaceable> | <replaceable>DIRECTORY</replaceable>
+ </term>
+ <listitem>
+ <para>
+ Direct output to the given <replaceable>FILE</replaceable>. Using
+ the option with a <replaceable>DIRECTORY</replaceable> directs the
+ output files to the specified directory. This can be
+ useful for multiple outputs (also known as "chunking") or manpage
+ processing.
+ </para>
+ <important>
+ <para>
+ The given directory <emphasis role="bold">must</emphasis> already exist.
+ </para>
+ </important>
+ <note>
+ <para>
+ Make sure that <replaceable>FILE</replaceable>
+ and <replaceable>DIRECTORY</replaceable> follow the <quote>URI reference
+ computation</quote> as described in RFC 2396 and laters. This means, that
+ e.g. <option>-o directory</option> will maybe not work,
+ but <option>-o directory/</option> will.
+ </para>
+ </note>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>--encoding <replaceable>ENCODING</replaceable></option>
+ </term>
+ <listitem>
+ <para>
+ Allow to specify the encoding for the input.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <option>--param <replaceable>PARAMNAME</replaceable> <replaceable>PARAMVALUE</replaceable></option>
+ </term>
+ <listitem>
+ <para>
+Pass a parameter of name <replaceable>PARAMNAME</replaceable> and value
+<replaceable>PARAMVALUE</replaceable> to the stylesheet. You may pass
+multiple name/value pairs up to a maximum of 32. If the value being passed
+is a string, you can use <option>--stringparam</option> instead, to avoid
+additional quote characters that appear in string expressions. Note:
+the XPath expression must be UTF-8 encoded.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--path "<replaceable>PATH(S)</replaceable>"</option></term>
+ <listitem>
+ <para>
+ Use the (space- or colon-separated) list of filesystem paths specified
+ by <replaceable>PATHS</replaceable> to load <acronym>DTD</acronym>s,
+ entities or documents. Enclose space-separated lists by quotation marks.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--profile</option> or <option>--norman</option></term>
+ <listitem>
+ <para>
+ Output profiling information detailing the amount of time spent in
+ each part of the stylesheet. This is useful in optimizing stylesheet
+ performance.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--repeat</option></term>
+ <listitem>
+ <para>Run the transformation 20 times. Used for timing tests.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>--stringparam <replaceable>PARAMNAME</replaceable> <replaceable>PARAMVALUE</replaceable></option>
+ </term>
+ <listitem>
+ <para>
+ Pass a parameter of name <replaceable>PARAMNAME</replaceable> and
+ value <replaceable>PARAMVALUE</replaceable>
+ where <replaceable>PARAMVALUE</replaceable> is a string rather than a
+ node identifier. <emphasis role="bold">Note:</emphasis> The string
+ must be UTF-8 encoded.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--timing</option></term>
+ <listitem>
+ <para>
+ Display the time used for parsing the stylesheet, parsing the document
+ and applying the stylesheet and saving the result. Displayed in
+ milliseconds.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>-v</option> or <option>--verbose</option></term>
+ <listitem>
+ <para>
+ Output each step taken by &xsltproc; in processing the stylesheet
+ and the document.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>-V</option> or <option>--version</option></term>
+ <listitem>
+ <para>
+ Show the version of <citerefentry>
+ <refentrytitle>libxml</refentrytitle>
+ <manvolnum>3</manvolnum>
+ </citerefentry> and <citerefentry>
+ <refentrytitle>libxslt</refentrytitle>
+ <manvolnum>3</manvolnum>
+ </citerefentry> used.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--writesubtree <replaceable>PATH</replaceable></option></term>
+ <listitem>
+ <para>
+ Allow file write only within the <replaceable>PATH</replaceable>
+ subtree.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--xinclude</option></term>
+ <listitem>
+ <para>
+ Process the input document using the XInclude specification. More
+ details on this can be found in the XInclude
+ specification: <ulink url="http://www.w3.org/TR/xinclude/"/>
+ </para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+</refsect1>
+
+<refsect1 id="environment">
+ <title>ENVIRONMENT</title>
+ <variablelist>
+
+ <varlistentry>
+ <term><envar>SGML_CATALOG_FILES</envar></term>
+ <listitem>
+ <para><acronym>SGML</acronym> catalog behavior can be changed by redirecting
+ queries to the user's own set of catalogs. This can be done by setting
+ the <envar>SGML_CATALOG_FILES</envar> environment variable to a list
+ of catalogs. An empty one should deactivate loading the
+ default <filename>/etc/sgml/catalog</filename> catalog.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><envar>XML_CATALOG_FILES</envar></term>
+ <listitem>
+ <para><acronym>XML</acronym> catalog behavior can be changed by redirecting
+ queries to the user's own set of catalogs. This can be done by setting
+ the <envar>XML_CATALOG_FILES</envar> environment variable to a list
+ of catalogs. An empty one should deactivate loading the
+ default <filename>/etc/xml/catalog</filename> catalog.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+</refsect1>
+
+<refsect1 id="diagnostics">
+ <title>DIAGNOSTICS</title>
+ <para>
+ &xsltproc; return codes provide information that can be used when
+ calling it from scripts.
+ </para>
+ <variablelist>
+
+ <varlistentry>
+ <term><errorcode>0</errorcode></term>
+ <listitem>
+ <para>No error (normal operation)</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>1</errorcode></term>
+ <listitem>
+ <para>No argument</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>2</errorcode></term>
+ <listitem>
+ <para>Too many parameters</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>3</errorcode></term>
+ <listitem>
+ <para>Unknown option</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>4</errorcode></term>
+ <listitem>
+ <para>Failed to parse the stylesheet</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>5</errorcode></term>
+ <listitem>
+ <para>Error in the stylesheet</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>6</errorcode></term>
+ <listitem>
+ <para>Error in one of the documents</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>7</errorcode></term>
+ <listitem>
+ <para>Unsupported xsl:output method</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>8</errorcode></term>
+ <listitem>
+ <para>String parameter contains both quote and double-quotes</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>9</errorcode></term>
+ <listitem>
+ <para>Internal processing error</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>10</errorcode></term>
+ <listitem>
+ <para>Processing was stopped by a terminating message</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>11</errorcode></term>
+ <listitem>
+ <para>Could not write the result to the output file</para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+</refsect1>
+
+<refsect1 id="seealso">
+ <title>SEE ALSO</title>
+ <para><citerefentry>
+ <refentrytitle>libxml</refentrytitle>
+ <manvolnum>3</manvolnum>
+ </citerefentry>, <citerefentry>
+ <refentrytitle>libxslt</refentrytitle>
+ <manvolnum>3</manvolnum>
+ </citerefentry>
+ </para>
+ <para>
+ More information can be found at
+ <itemizedlist>
+ <listitem>
+ <para><citerefentry>
+ <refentrytitle>libxml</refentrytitle>
+ <manvolnum>3</manvolnum>
+ </citerefentry> web page <ulink url="http://www.xmlsoft.org/"/>
+ </para>
+ </listitem>
+ <listitem>
+ <para>W3C <acronym>XSLT</acronym> page <ulink url="http://www.w3.org/TR/xslt"/>
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+</refsect1>
+
+</refentry>
diff --git a/libxslt/doc/xsltproc2.html b/libxslt/doc/xsltproc2.html
new file mode 100644
index 0000000..e24e456
--- /dev/null
+++ b/libxslt/doc/xsltproc2.html
@@ -0,0 +1,35 @@
+<?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>The xsltproc tool</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>The xsltproc tool</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>Main 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 href="index.html">Home</a></li><li><a href="intro.html">Introduction</a></li><li><a href="docs.html">Documentation</a></li><li><a href="bugs.html">Reporting bugs and getting help</a></li><li><a href="help.html">How to help</a></li><li><a href="downloads.html">Downloads</a></li><li><a href="FAQ.html">FAQ</a></li><li><a href="news.html">News</a></li><li><a href="xsltproc2.html">The xsltproc tool</a></li><li><a href="docbook.html">DocBook</a></li><li><a href="API.html">The programming API</a></li><li><a href="python.html">Python and bindings</a></li><li><a href="internals.html">Library internals</a></li><li><a href="extensions.html">Writing extensions</a></li><li><a href="contribs.html">Contributions</a></li><li><a href="EXSLT/index.html" style="font-weight:bold">libexslt</a></li><li><a href="xslt.html">flat page</a>, <a href="site.xsl">stylesheet</a></li><li><a href="html/index.html" style="font-weight:bold">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="tutorial/libxslttutorial.html">Tutorial</a>,
+ <a href="tutorial2/libxslt_pipes.html">Tutorial2</a></li><li><a href="xsltproc.html">Man page for xsltproc</a></li><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"><p>This program is the simplest way to use libxslt: from the command line. It
+is also used for doing the regression tests of the library.</p><p>It takes as first argument the path or URL to an XSLT stylesheet, the next
+arguments are filenames or URIs of the inputs to be processed. The output of
+the processing is redirected on the standard output. There is actually a few
+more options available:</p><pre>orchis:~ -&gt; xsltproc
+Usage: xsltproc [options] stylesheet file [file ...]
+ Options:
+ --version or -V: show the version of libxml and libxslt used
+ --verbose or -v: show logs of what's happening
+ --output file or -o file: save to a given file
+ --timing: display the time used
+ --repeat: run the transformation 20 times
+ --debug: dump the tree of the result instead
+ --novalid: skip the DTD loading phase
+ --noout: do not dump the result
+ --maxdepth val : increase the maximum depth
+ --html: the input document is(are) an HTML file(s)
+ --docbook: the input document is SGML docbook
+ --param name value : pass a (parameter,value) pair
+ --nonet refuse to fetch DTDs or entities over network
+ --warnnet warn against fetching over the network
+ --catalogs : use the catalogs from $SGML_CATALOG_FILES
+ --xinclude : do XInclude processing on document input
+ --profile or --norman : dump profiling information
+orchis:~ -&gt;</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>