+Wed Sep 12 21:09:53 CEST 2001 Daniel Veillard <daniel@veillard.com>
+
+ * configure.in: preparing for 1.0.4
+ * doc/xslt.html doc/html/*: updated and regenerated docs
+
Wed Sep 12 18:10:33 CEST 2001 Thomas Broyer <tbroyer@ltgt.net>
* libexslt/date.c: fixed some compile warnings and disabled
dnl
dnl libxslt is the main part of the package
+dnl libexslt is an extension
dnl
LIBXSLT_MAJOR_VERSION=1
LIBXSLT_MINOR_VERSION=0
-LIBXSLT_MICRO_VERSION=3
+LIBXSLT_MICRO_VERSION=4
PACKAGE=libxslt
LIBEXSLT_MAJOR_VERSION=0
-LIBEXSLT_MINOR_VERSION=3
-LIBEXSLT_MICRO_VERSION=1
+LIBEXSLT_MINOR_VERSION=4
+LIBEXSLT_MICRO_VERSION=0
LIBXML_REQUIRED_VERSION=2.4.3
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2304"
+NAME="AEN2504"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2307"
+NAME="AEN2507"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2320"
+NAME="AEN2520"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2323"
+NAME="AEN2523"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2325"
+NAME="AEN2525"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2333"
+NAME="AEN2533"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2346"
+NAME="AEN2546"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2353"
+NAME="AEN2553"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2362"
+NAME="AEN2562"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2372"
+NAME="AEN2572"
></A
><P
></P
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN95"
+NAME="AEN110"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN98"
+NAME="AEN113"
></A
><H2
>Synopsis</H2
CLASS="SYNOPSIS"
>
+#define <A
+HREF="libxslt-functions.html#XSLT-REGISTER-FUNCTION-LOOKUP-CAPS"
+>XSLT_REGISTER_FUNCTION_LOOKUP</A
+> (ctxt)
+<GTKDOCLINK
+HREF="XMLXPATHFUNCTION"
+>xmlXPathFunction</GTKDOCLINK
+> <A
+HREF="libxslt-functions.html#XSLTXPATHFUNCTIONLOOKUP"
+>xsltXPathFunctionLookup</A
+> (<GTKDOCLINK
+HREF="XMLXPATHCONTEXTPTR"
+>xmlXPathContextPtr</GTKDOCLINK
+> ctxt,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *name,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *ns_uri);
void <A
HREF="libxslt-functions.html#XSLTDOCUMENTFUNCTION"
>xsltDocumentFunction</A
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN119"
+NAME="AEN140"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN122"
+NAME="AEN143"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN124"
+NAME="AEN145"
+></A
+><H3
+><A
+NAME="XSLT-REGISTER-FUNCTION-LOOKUP-CAPS"
+></A
+>XSLT_REGISTER_FUNCTION_LOOKUP()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define XSLT_REGISTER_FUNCTION_LOOKUP(ctxt)</PRE
+></TD
+></TR
+></TABLE
+><P
+>registering macro, not general purpose at all but used in different modules</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN151"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN160"
+></A
+><H3
+><A
+NAME="XSLTXPATHFUNCTIONLOOKUP"
+></A
+>xsltXPathFunctionLookup ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><GTKDOCLINK
+HREF="XMLXPATHFUNCTION"
+>xmlXPathFunction</GTKDOCLINK
+> xsltXPathFunctionLookup (<GTKDOCLINK
+HREF="XMLXPATHCONTEXTPTR"
+>xmlXPathContextPtr</GTKDOCLINK
+> ctxt,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *name,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *ns_uri);</PRE
+></TD
+></TR
+></TABLE
+><P
+>This is the entry point when a function is needed by the XPath
+interpretor.</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN170"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> a void * but the XSLT transformation context actually</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the function name</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ns_uri</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the function namespace URI</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the callback function or NULL if not found</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN191"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN132"
+NAME="AEN199"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN145"
+NAME="AEN212"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN153"
+NAME="AEN220"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN166"
+NAME="AEN233"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN174"
+NAME="AEN241"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN187"
+NAME="AEN254"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN195"
+NAME="AEN262"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN208"
+NAME="AEN275"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN216"
+NAME="AEN283"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN229"
+NAME="AEN296"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN237"
+NAME="AEN304"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN250"
+NAME="AEN317"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN258"
+NAME="AEN325"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN271"
+NAME="AEN338"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN279"
+NAME="AEN346"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN292"
+NAME="AEN359"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN299"
+NAME="AEN366"
></A
><P
></P
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2398"
+NAME="AEN2598"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2401"
+NAME="AEN2601"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2423"
+NAME="AEN2623"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2426"
+NAME="AEN2626"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2428"
+NAME="AEN2628"
></A
><H3
><A
></TR
></TABLE
><P
+>a macro to import pointers from the stylesheet cascading order</P
+><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2433"
+NAME="AEN2634"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2450"
+NAME="AEN2651"
></A
><H3
><A
></TR
></TABLE
><P
+>a macro to import intergers from the stylesheet cascading order</P
+><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2455"
+NAME="AEN2657"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2472"
+NAME="AEN2674"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2480"
+NAME="AEN2682"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2493"
+NAME="AEN2695"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2501"
+NAME="AEN2703"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2514"
+NAME="AEN2716"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2522"
+NAME="AEN2724"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2535"
+NAME="AEN2737"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2543"
+NAME="AEN2745"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2560"
+NAME="AEN2762"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2570"
+NAME="AEN2772"
></A
><P
></P
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3140"
+NAME="AEN3454"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3143"
+NAME="AEN3457"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3166"
+NAME="AEN3480"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3169"
+NAME="AEN3483"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3171"
+NAME="AEN3485"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3183"
+NAME="AEN3497"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3216"
+NAME="AEN3530"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3227"
+NAME="AEN3541"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3252"
+NAME="AEN3566"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3260"
+NAME="AEN3574"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3273"
+NAME="AEN3587"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3280"
+NAME="AEN3594"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3289"
+NAME="AEN3603"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3296"
+NAME="AEN3610"
></A
><P
></P
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2596"
+NAME="AEN2798"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2599"
+NAME="AEN2801"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2630"
+NAME="AEN2832"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2633"
+NAME="AEN2835"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2635"
+NAME="AEN2837"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2643"
+NAME="AEN2845"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2656"
+NAME="AEN2858"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2667"
+NAME="AEN2869"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2692"
+NAME="AEN2894"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2704"
+NAME="AEN2906"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2733"
+NAME="AEN2935"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2744"
+NAME="AEN2946"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2765"
+NAME="AEN2967"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2776"
+NAME="AEN2978"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2797"
+NAME="AEN2999"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2804"
+NAME="AEN3006"
></A
><P
></P
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3807"
+NAME="AEN4199"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3810"
+NAME="AEN4202"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3823"
+NAME="AEN4215"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3826"
+NAME="AEN4218"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3828"
+NAME="AEN4220"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3838"
+NAME="AEN4230"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3863"
+NAME="AEN4255"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3871"
+NAME="AEN4263"
></A
><P
></P
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN313"
+NAME="AEN380"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN316"
+NAME="AEN383"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN350"
+NAME="AEN417"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN353"
+NAME="AEN420"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN355"
+NAME="AEN422"
></A
><H3
><A
></TR
></TABLE
><P
+>Data structure used for the implementation of patterns.
+It is kept private (in pattern.c)</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN360"
+NAME="AEN428"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN365"
+NAME="AEN433"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN376"
+NAME="AEN444"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN397"
+NAME="AEN465"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN405"
+NAME="AEN473"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN414"
+NAME="AEN482"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN423"
+NAME="AEN491"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN444"
+NAME="AEN512"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN455"
+NAME="AEN523"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN480"
+NAME="AEN548"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN491"
+NAME="AEN559"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN512"
+NAME="AEN580"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN519"
+NAME="AEN587"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN528"
+NAME="AEN596"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN535"
+NAME="AEN603"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN544"
+NAME="AEN612"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN553"
+NAME="AEN621"
></A
><P
></P
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN579"
+NAME="AEN647"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN582"
+NAME="AEN650"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN628"
+NAME="AEN696"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN631"
+NAME="AEN699"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN633"
+NAME="AEN701"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN642"
+NAME="AEN710"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN667"
+NAME="AEN735"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN677"
+NAME="AEN745"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN698"
+NAME="AEN766"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN709"
+NAME="AEN777"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN734"
+NAME="AEN802"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN745"
+NAME="AEN813"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN774"
+NAME="AEN842"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN783"
+NAME="AEN851"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN800"
+NAME="AEN868"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN809"
+NAME="AEN877"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN826"
+NAME="AEN894"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN836"
+NAME="AEN904"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN857"
+NAME="AEN925"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN867"
+NAME="AEN935"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN888"
+NAME="AEN956"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN897"
+NAME="AEN965"
></A
><P
></P
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN919"
+NAME="AEN987"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN922"
+NAME="AEN990"
></A
><H2
>Synopsis</H2
HREF="libxslt-transform.html#XSLTGETXINCLUDEDEFAULT"
>xsltGetXIncludeDefault</A
> (void);
+<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> <A
+HREF="libxslt-transform.html#XSLTNEWTRANSFORMCONTEXT"
+>xsltNewTransformContext</A
+>
+ (<A
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+> style,
+ <GTKDOCLINK
+HREF="XMLDOCPTR"
+>xmlDocPtr</GTKDOCLINK
+> doc);
+void <A
+HREF="libxslt-transform.html#XSLTFREETRANSFORMCONTEXT"
+>xsltFreeTransformContext</A
+> (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt);
+<GTKDOCLINK
+HREF="XMLDOCPTR"
+>xmlDocPtr</GTKDOCLINK
+> <A
+HREF="libxslt-transform.html#XSLTAPPLYSTYLESHEETUSER"
+>xsltApplyStylesheetUser</A
+> (<A
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+> style,
+ <GTKDOCLINK
+HREF="XMLDOCPTR"
+>xmlDocPtr</GTKDOCLINK
+> doc,
+ const char **params,
+ const char *output,
+ <GTKDOCLINK
+HREF="FILE-CAPS"
+>FILE</GTKDOCLINK
+> *profile,
+ <A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> userCtxt);
+<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMFUNCTION"
+>xsltTransformFunction</A
+> <A
+HREF="libxslt-transform.html#XSLTEXTELEMENTLOOKUP"
+>xsltExtElementLookup</A
+> (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *name,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *URI);
<GTKDOCLINK
HREF="XMLDOCPTR"
>xmlDocPtr</GTKDOCLINK
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1034"
+NAME="AEN1119"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1037"
+NAME="AEN1122"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1039"
+NAME="AEN1124"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1045"
+NAME="AEN1130"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1054"
+NAME="AEN1139"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1060"
+NAME="AEN1145"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1069"
+NAME="AEN1154"
+></A
+><H3
+><A
+NAME="XSLTNEWTRANSFORMCONTEXT"
+></A
+>xsltNewTransformContext ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> xsltNewTransformContext
+ (<A
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+> style,
+ <GTKDOCLINK
+HREF="XMLDOCPTR"
+>xmlDocPtr</GTKDOCLINK
+> doc);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Create a new XSLT TransformContext</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN1163"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>style</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> a parsed XSLT stylesheet</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>doc</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the input document</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the newly allocated xsltTransformContextPtr or NULL in case of error</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN1180"
+></A
+><H3
+><A
+NAME="XSLTFREETRANSFORMCONTEXT"
+></A
+>xsltFreeTransformContext ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>void xsltFreeTransformContext (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Free up the memory allocated by <TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+></P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN1188"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> an XSLT parser context</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN1197"
+></A
+><H3
+><A
+NAME="XSLTAPPLYSTYLESHEETUSER"
+></A
+>xsltApplyStylesheetUser ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><GTKDOCLINK
+HREF="XMLDOCPTR"
+>xmlDocPtr</GTKDOCLINK
+> xsltApplyStylesheetUser (<A
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+> style,
+ <GTKDOCLINK
+HREF="XMLDOCPTR"
+>xmlDocPtr</GTKDOCLINK
+> doc,
+ const char **params,
+ const char *output,
+ <GTKDOCLINK
+HREF="FILE-CAPS"
+>FILE</GTKDOCLINK
+> *profile,
+ <A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> userCtxt);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Apply the stylesheet to the document and allow the user to provide
+its own transformation context.</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN1208"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>style</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> a parsed XSLT stylesheet</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>doc</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> a parsed XML document</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>params</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> a NULL terminated arry of parameters names/values tuples</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>output</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the targetted output</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>profile</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> profile FILE * output or NULL</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>userCtxt</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> user provided transform context</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the result document or NULL in case of error</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN1241"
+></A
+><H3
+><A
+NAME="XSLTEXTELEMENTLOOKUP"
+></A
+>xsltExtElementLookup ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMFUNCTION"
+>xsltTransformFunction</A
+> xsltExtElementLookup (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *name,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *URI);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Looks up an extension element. <TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+> can be NULL to search only in
+module elements.</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN1252"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> an XSLT process context</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the element name</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>URI</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the element namespace URI</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the element callback or NULL if not found</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN1273"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1078"
+NAME="AEN1282"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1099"
+NAME="AEN1303"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1109"
+NAME="AEN1313"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1134"
+NAME="AEN1338"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1150"
+NAME="AEN1354"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1183"
+NAME="AEN1387"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1194"
+NAME="AEN1398"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1219"
+NAME="AEN1423"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1229"
+NAME="AEN1433"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1250"
+NAME="AEN1454"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1260"
+NAME="AEN1464"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1281"
+NAME="AEN1485"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1291"
+NAME="AEN1495"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1312"
+NAME="AEN1516"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1322"
+NAME="AEN1526"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1343"
+NAME="AEN1547"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1353"
+NAME="AEN1557"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1374"
+NAME="AEN1578"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1384"
+NAME="AEN1588"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1405"
+NAME="AEN1609"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1415"
+NAME="AEN1619"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1436"
+NAME="AEN1640"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1446"
+NAME="AEN1650"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1467"
+NAME="AEN1671"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1477"
+NAME="AEN1681"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1498"
+NAME="AEN1702"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1508"
+NAME="AEN1712"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1529"
+NAME="AEN1733"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1539"
+NAME="AEN1743"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1560"
+NAME="AEN1764"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1570"
+NAME="AEN1774"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1591"
+NAME="AEN1795"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1601"
+NAME="AEN1805"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1622"
+NAME="AEN1826"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1632"
+NAME="AEN1836"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1653"
+NAME="AEN1857"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1663"
+NAME="AEN1867"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1684"
+NAME="AEN1888"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1694"
+NAME="AEN1898"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1715"
+NAME="AEN1919"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1725"
+NAME="AEN1929"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1746"
+NAME="AEN1950"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1753"
+NAME="AEN1957"
></A
><P
></P
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2818"
+NAME="AEN3020"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2821"
+NAME="AEN3023"
></A
><H2
>Synopsis</H2
>xsltTransformContextPtr</A
> ctxt,
const char **params);
+int <A
+HREF="libxslt-variables.html#XSLTQUOTEUSERPARAMS"
+>xsltQuoteUserParams</A
+> (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt,
+ const char **params);
+int <A
+HREF="libxslt-variables.html#XSLTEVALONEUSERPARAM"
+>xsltEvalOneUserParam</A
+> (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *name,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *value);
+int <A
+HREF="libxslt-variables.html#XSLTQUOTEONEUSERPARAM"
+>xsltQuoteOneUserParam</A
+> (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *name,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *value);
void <A
HREF="libxslt-variables.html#XSLTPARSEGLOBALVARIABLE"
>xsltParseGlobalVariable</A
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2859"
+NAME="AEN3071"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2862"
+NAME="AEN3074"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2864"
+NAME="AEN3076"
></A
><H3
><A
></TR
></TABLE
><P
+>registering macro, not general purpose at all but used in different modules</P
+><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2869"
+NAME="AEN3082"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2878"
+NAME="AEN3091"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2885"
+NAME="AEN3098"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2898"
+NAME="AEN3111"
></A
><H3
><A
></TR
></TABLE
><P
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+>: the XSLT transformation context
+<TT
+CLASS="PARAMETER"
+><I
+>params</I
+></TT
+>: a NULL terminated array of parameters name/value tuples</P
+><P
>Evaluate the global variables of a stylesheet. This needs to be
-done on parsed stylesheets before starting to apply transformations</P
+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
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2905"
+NAME="AEN3121"
></A
><P
></P
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> the XSLT transformation context</TD
+> </TD
></TR
><TR
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> a NULL terminated arry of parameters names/values tuples</TD
+> </TD
></TR
><TR
><TD
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2922"
+NAME="AEN3138"
+></A
+><H3
+><A
+NAME="XSLTQUOTEUSERPARAMS"
+></A
+>xsltQuoteUserParams ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int xsltQuoteUserParams (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt,
+ const char **params);</PRE
+></TD
+></TR
+></TABLE
+><P
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+>: the XSLT transformation context
+<TT
+CLASS="PARAMETER"
+><I
+>params</I
+></TT
+>: a NULL terminated arry of parameters names/values tuples</P
+><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
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN3148"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>params</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>0 in case of success, -1 in case of error.</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3165"
+></A
+><H3
+><A
+NAME="XSLTEVALONEUSERPARAM"
+></A
+>xsltEvalOneUserParam ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int xsltEvalOneUserParam (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *name,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *value);</PRE
+></TD
+></TR
+></TABLE
+><P
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+>: the XSLT transformation context
+<TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+>: a null terminated string giving the name of the parameter
+<TT
+CLASS="PARAMETER"
+><I
+>value</I
+></TT
+> a null terminated string giving the XPath expression to be evaluated</P
+><P
+>This is normally called from xsltEvalUserParams to process a single
+parameter from a list of parameters. The <TT
+CLASS="PARAMETER"
+><I
+>value</I
+></TT
+> is evaluated as an
+XPath expression and the result is stored in the context's global
+variable/parameter hash table.</P
+><P
+>To have a parameter treated literally (not as an XPath expression)
+use xsltQuoteUserParams (or xsltQuoteOneUserParam). For more
+details see description of xsltProcessOneUserParamInternal.</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN3180"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>value</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>0 in case of success, -1 in case of error.</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3201"
+></A
+><H3
+><A
+NAME="XSLTQUOTEONEUSERPARAM"
+></A
+>xsltQuoteOneUserParam ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int xsltQuoteOneUserParam (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *name,
+ const <GTKDOCLINK
+HREF="XMLCHAR"
+>xmlChar</GTKDOCLINK
+> *value);</PRE
+></TD
+></TR
+></TABLE
+><P
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+>: the XSLT transformation context
+<TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+>: a null terminated string giving the name of the parameter
+<TT
+CLASS="PARAMETER"
+><I
+>value</I
+></TT
+> a null terminated string giving the parameter value</P
+><P
+>This is normally called from xsltQuoteUserParams to process a single
+parameter from a list of parameters. The <TT
+CLASS="PARAMETER"
+><I
+>value</I
+></TT
+> is stored in the
+context's global variable/parameter hash table.</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN3215"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>value</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>0 in case of success, -1 in case of error.</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3236"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2930"
+NAME="AEN3244"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2943"
+NAME="AEN3257"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2951"
+NAME="AEN3265"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2964"
+NAME="AEN3278"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2972"
+NAME="AEN3286"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2985"
+NAME="AEN3299"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2993"
+NAME="AEN3307"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3006"
+NAME="AEN3320"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3016"
+NAME="AEN3330"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3033"
+NAME="AEN3347"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3041"
+NAME="AEN3355"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3058"
+NAME="AEN3372"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3065"
+NAME="AEN3379"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3074"
+NAME="AEN3388"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3084"
+NAME="AEN3398"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3105"
+NAME="AEN3419"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3114"
+NAME="AEN3428"
></A
><P
></P
extern const int <A
HREF="libxslt-xslt.html#XSLTLIBXMLVERSION"
>xsltLibxmlVersion</A
->;</PRE
+>;
+void <A
+HREF="libxslt-xslt.html#XSLTCLEANUPGLOBALS"
+>xsltCleanupGlobals</A
+> (void);</PRE
></TD
></TR
></TABLE
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN45"
+NAME="AEN46"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN48"
+NAME="AEN49"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN50"
+NAME="AEN51"
></A
><H3
><A
></TR
></TABLE
><P
+>The default version of XSLT supported</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN55"
+NAME="AEN57"
></A
><H3
><A
></TR
></TABLE
><P
+>The XSLT "vendor" string for this processor</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN60"
+NAME="AEN63"
></A
><H3
><A
></TR
></TABLE
><P
+>The XSLT "vendor" URL for this processor</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN65"
+NAME="AEN69"
></A
><H3
><A
></TR
></TABLE
><P
+>The XSLT specification namespace</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN70"
+NAME="AEN75"
></A
><H3
><A
></TR
></TABLE
><P
+>This value is used to detect templates loops</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN75"
+NAME="AEN81"
></A
><H3
><A
></TR
></TABLE
><P
+>The version string for libxslt</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN80"
+NAME="AEN87"
></A
><H3
><A
></TR
></TABLE
><P
+>The version of libxslt compiled</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN85"
+NAME="AEN93"
></A
><H3
><A
></TR
></TABLE
><P
+>The version of libxml libxslt was compiled against</P
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN99"
+></A
+><H3
+><A
+NAME="XSLTCLEANUPGLOBALS"
+></A
+>xsltCleanupGlobals ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>void xsltCleanupGlobals (void);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Unregister all global variables set up by the XSLT library</P
+><P
></P
></DIV
></DIV
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3310"
+NAME="AEN3624"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3313"
+NAME="AEN3627"
></A
><H2
>Synopsis</H2
>xsltTransformContextPtr</A
>;
struct <A
-HREF="libxslt-xsltinternals.html#XSLTSTYLEPRECOMP"
->xsltStylePreComp</A
->;
-typedef <A
-HREF="libxslt-xsltinternals.html#XSLTSTYLEPRECOMPPTR"
->xsltStylePreCompPtr</A
+HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMP"
+>xsltElemPreComp</A
>;
+<GTKDOCLINK
+HREF="TYPEDEF"
+>typedef</GTKDOCLINK
+> <A
+HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMPPTR"
+>xsltElemPreCompPtr</A
+> ();
void (<A
HREF="libxslt-xsltinternals.html#XSLTTRANSFORMFUNCTION"
>*xsltTransformFunction</A
>xmlNodePtr</GTKDOCLINK
> inst,
<A
-HREF="libxslt-xsltinternals.html#XSLTSTYLEPRECOMPPTR"
->xsltStylePreCompPtr</A
+HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMPPTR"
+>xsltElemPreCompPtr</A
> comp);
enum <A
HREF="libxslt-xsltinternals.html#XSLTSTYLETYPE"
>xsltStyleType</A
>;
+void (<A
+HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMPDEALLOCATOR"
+>*xsltElemPreCompDeallocator</A
+>) (<A
+HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMPPTR"
+>xsltElemPreCompPtr</A
+> comp);
+struct <A
+HREF="libxslt-xsltinternals.html#XSLTSTYLEPRECOMP"
+>xsltStylePreComp</A
+>;
+typedef <A
+HREF="libxslt-xsltinternals.html#XSLTSTYLEPRECOMPPTR"
+>xsltStylePreCompPtr</A
+>;
struct <A
HREF="libxslt-xsltinternals.html#XSLTSTACKELEM"
>xsltStackElem</A
<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
-> **result);</PRE
+> **result);
+void <A
+HREF="libxslt-xsltinternals.html#XSLTPARSETEMPLATECONTENT"
+>xsltParseTemplateContent</A
+> (<A
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+> style,
+ <GTKDOCLINK
+HREF="XMLNODEPTR"
+>xmlNodePtr</GTKDOCLINK
+> templ);</PRE
></TD
></TR
></TABLE
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3381"
+NAME="AEN3703"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3384"
+NAME="AEN3706"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3386"
+NAME="AEN3708"
></A
><H3
><A
></TR
></TABLE
><P
+>Max number of specified xsl:sort on an element</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3391"
+NAME="AEN3714"
></A
><H3
><A
></TR
></TABLE
><P
+>specific value for pattern without priority expressed</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3396"
+NAME="AEN3720"
></A
><H3
><A
></TR
></TABLE
><P
+>The in-memory structure corresponding to an XSLT Template</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3401"
+NAME="AEN3726"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3406"
+NAME="AEN3731"
></A
><H3
><A
></TR
></TABLE
><P
+>Data structure of decimal-format</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3411"
+NAME="AEN3737"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3416"
+NAME="AEN3742"
></A
><H3
><A
></TR
></TABLE
><P
+>Data structure associated to a parsed document</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3421"
+NAME="AEN3748"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3426"
+NAME="AEN3753"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3431"
+NAME="AEN3758"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3436"
+NAME="AEN3763"
></A
><H3
><A
-NAME="XSLTSTYLEPRECOMP"
+NAME="XSLTELEMPRECOMP"
></A
->struct xsltStylePreComp</H3
+>struct xsltElemPreComp</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
><TD
><PRE
CLASS="PROGRAMLISTING"
->struct xsltStylePreComp {
- struct _xsltStylePreComp *next;/* chained list */
- xsltStyleType type; /* type of the element */
- xsltTransformFunction func; /* handling function */
- xmlNodePtr inst; /* the instruction */
+>struct xsltElemPreComp {
+ 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 *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 */
+ /* end of common part */
+ xsltElemPreCompDeallocator free; /* the deallocator */
};</PRE
></TD
></TR
></TABLE
><P
+>The in-memory structure corresponding to element precomputed data,
+designed to be extended by extension implementors.</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3441"
+NAME="AEN3769"
></A
><H3
><A
-NAME="XSLTSTYLEPRECOMPPTR"
+NAME="XSLTELEMPRECOMPPTR"
></A
->xsltStylePreCompPtr</H3
+>xsltElemPreCompPtr ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
><TD
><PRE
CLASS="PROGRAMLISTING"
->typedef xsltStylePreComp *xsltStylePreCompPtr;</PRE
+><GTKDOCLINK
+HREF="TYPEDEF"
+>typedef</GTKDOCLINK
+> xsltElemPreCompPtr ();</PRE
></TD
></TR
></TABLE
><P
></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN3775"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3446"
+NAME="AEN3784"
></A
><H3
><A
>xmlNodePtr</GTKDOCLINK
> inst,
<A
-HREF="libxslt-xsltinternals.html#XSLTSTYLEPRECOMPPTR"
->xsltStylePreCompPtr</A
+HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMPPTR"
+>xsltElemPreCompPtr</A
> comp);</PRE
></TD
></TR
></TABLE
><P
+>signature of the function associated to elements part of the
+stylesheet language like xsl:if or xsl:apply-templates.</P
+><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3455"
+NAME="AEN3794"
></A
><P
></P
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> the XSLT transformation context</TD
></TR
><TR
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> the input node</TD
></TR
><TR
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> the stylesheet node</TD
></TR
><TR
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> the compiled information from the stylesheet</TD
></TR
></TBODY
></TABLE
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3476"
+NAME="AEN3815"
></A
><H3
><A
XSLT_FUNC_WITHPARAM,
XSLT_FUNC_PARAM,
XSLT_FUNC_VARIABLE,
- XSLT_FUNC_WHEN
+ XSLT_FUNC_WHEN,
+ XSLT_FUNC_EXTENSION
} xsltStyleType;</PRE
></TD
></TR
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3481"
+NAME="AEN3820"
+></A
+><H3
+><A
+NAME="XSLTELEMPRECOMPDEALLOCATOR"
+></A
+>xsltElemPreCompDeallocator ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>void (*xsltElemPreCompDeallocator) (<A
+HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMPPTR"
+>xsltElemPreCompPtr</A
+> comp);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Deallocates an <A
+HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMP"
+>xsltElemPreComp</A
+> structure</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN3828"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>comp</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the <A
+HREF="libxslt-xsltinternals.html#XSLTELEMPRECOMP"
+>xsltElemPreComp</A
+> to free up</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3838"
+></A
+><H3
+><A
+NAME="XSLTSTYLEPRECOMP"
+></A
+>struct xsltStylePreComp</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>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 *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 */
+};</PRE
+></TD
+></TR
+></TABLE
+><P
+>The in-memory structure corresponding to XSLT stylesheet constructs
+precomputed data.</P
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3844"
+></A
+><H3
+><A
+NAME="XSLTSTYLEPRECOMPPTR"
+></A
+>xsltStylePreCompPtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xsltStylePreComp *xsltStylePreCompPtr;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3849"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3486"
+NAME="AEN3854"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3491"
+NAME="AEN3859"
></A
><H3
><A
/*
* Precomputed blocks
*/
- xsltStylePreCompPtr preComps; /* list of precomputed blocks */
+ xsltElemPreCompPtr preComps;/* list of precomputed blocks */
int warnings; /* number of warnings found at compilation */
int errors; /* number of errors found at compilation */
int exclPrefixMax; /* size of the array */
void *_private; /* user defined data */
+
+ /*
+ * Extensions
+ */
+ xmlHashTablePtr extInfos; /* the extension data */
};</PRE
></TD
></TR
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3496"
+NAME="AEN3864"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3501"
+NAME="AEN3869"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3506"
+NAME="AEN3874"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3511"
+NAME="AEN3879"
></A
><H3
><A
></TR
></TABLE
><P
+>Macro to check if the XSLT processing should be stopped
+will return from the function</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3516"
+NAME="AEN3885"
></A
><H3
><A
></TR
></TABLE
><P
+>Macro to check if the XSLT processing should be stopped
+will goto the error: label</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3521"
+NAME="AEN3891"
></A
><H3
><A
></TR
></TABLE
><P
+>Macro to check if the XSLT processing should be stopped
+will return from the function with a 0 value</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3526"
+NAME="AEN3897"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3533"
+NAME="AEN3904"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3542"
+NAME="AEN3913"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3550"
+NAME="AEN3921"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3563"
+NAME="AEN3934"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3571"
+NAME="AEN3942"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3580"
+NAME="AEN3951"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3587"
+NAME="AEN3958"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3600"
+NAME="AEN3971"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3608"
+NAME="AEN3979"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3617"
+NAME="AEN3988"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3626"
+NAME="AEN3997"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3643"
+NAME="AEN4014"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3652"
+NAME="AEN4023"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3669"
+NAME="AEN4040"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3677"
+NAME="AEN4048"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3690"
+NAME="AEN4061"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3698"
+NAME="AEN4069"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3711"
+NAME="AEN4082"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3720"
+NAME="AEN4091"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3733"
+NAME="AEN4104"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3742"
+NAME="AEN4113"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3759"
+NAME="AEN4130"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN3777"
+NAME="AEN4148"
></A
><P
></P
></P
></DIV
></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN4173"
+></A
+><H3
+><A
+NAME="XSLTPARSETEMPLATECONTENT"
+></A
+>xsltParseTemplateContent ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>void xsltParseTemplateContent (<A
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+> style,
+ <GTKDOCLINK
+HREF="XMLNODEPTR"
+>xmlNodePtr</GTKDOCLINK
+> templ);</PRE
+></TD
+></TR
+></TABLE
+><P
+>parse a template content-model
+Clean-up the template content from unwanted ignorable blank nodes
+and process xslt:text</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN4181"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>style</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the XSLT stylesheet</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>templ</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the container node (can be a document for literal results)</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1767"
+NAME="AEN1971"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1770"
+NAME="AEN1974"
></A
><H2
>Synopsis</H2
HREF="libxslt-xsltutils.html#IS-XSLT-NAME-CAPS"
>IS_XSLT_NAME</A
> (n, val)
+#define <A
+HREF="libxslt-xsltutils.html#IS-XSLT-REAL-NODE-CAPS"
+>IS_XSLT_REAL_NODE</A
+> (n)
<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> *nameSpace);
-extern xmlGenericErrorFunc <A
-HREF="libxslt-xsltutils.html#XSLTGENERICERROR"
->xsltGenericError</A
->;
-extern void *<A
-HREF="libxslt-xsltutils.html#XSLTGENERICERRORCONTEXT"
->xsltGenericErrorContext</A
->;
-extern xmlGenericErrorFunc <A
-HREF="libxslt-xsltutils.html#XSLTGENERICDEBUG"
->xsltGenericDebug</A
->;
-extern void *<A
-HREF="libxslt-xsltutils.html#XSLTGENERICDEBUGCONTEXT"
->xsltGenericDebugContext</A
->;
void <A
HREF="libxslt-xsltutils.html#XSLTPRINTERRORCONTEXT"
>xsltPrintErrorContext</A
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1829"
+NAME="AEN2030"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1832"
+NAME="AEN2033"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1834"
+NAME="AEN2035"
></A
><H3
><A
></TR
></TABLE
><P
+>macro to flag unimplemented blocks</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1839"
+NAME="AEN2041"
></A
><H3
><A
></TR
></TABLE
><P
+>macro to flag that a problem was detected internally</P
+><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1844"
+NAME="AEN2047"
></A
><H3
><A
></TR
></TABLE
><P
+>Checks that the element pertains to XSLt namespace</P
+><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1849"
+NAME="AEN2053"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1858"
+NAME="AEN2062"
></A
><H3
><A
></TR
></TABLE
><P
+>Checks the value of an element in XSLT namespace</P
+><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1863"
+NAME="AEN2068"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1876"
+NAME="AEN2081"
+></A
+><H3
+><A
+NAME="IS-XSLT-REAL-NODE-CAPS"
+></A
+>IS_XSLT_REAL_NODE()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define IS_XSLT_REAL_NODE(n)</PRE
+></TD
+></TR
+></TABLE
+><P
+>check that a node is a 'real' one: document, element, text or attribute</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN2087"
+></A
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TBODY
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>n</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> </TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN2096"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1890"
+NAME="AEN2110"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1911"
-></A
-><H3
-><A
-NAME="XSLTGENERICERROR"
-></A
->xsltGenericError</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->extern xmlGenericErrorFunc xsltGenericError;</PRE
-></TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1916"
-></A
-><H3
-><A
-NAME="XSLTGENERICERRORCONTEXT"
-></A
->xsltGenericErrorContext</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->extern void *xsltGenericErrorContext;</PRE
-></TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1921"
-></A
-><H3
-><A
-NAME="XSLTGENERICDEBUG"
-></A
->xsltGenericDebug</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->extern xmlGenericErrorFunc xsltGenericDebug;</PRE
-></TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1926"
-></A
-><H3
-><A
-NAME="XSLTGENERICDEBUGCONTEXT"
-></A
->xsltGenericDebugContext</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->extern void *xsltGenericDebugContext;</PRE
-></TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1931"
+NAME="AEN2131"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1940"
+NAME="AEN2140"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1957"
+NAME="AEN2157"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1966"
+NAME="AEN2166"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1983"
+NAME="AEN2183"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN1995"
+NAME="AEN2195"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2008"
+NAME="AEN2208"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2020"
+NAME="AEN2220"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2033"
+NAME="AEN2233"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2041"
+NAME="AEN2241"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2050"
+NAME="AEN2250"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2058"
+NAME="AEN2258"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2075"
+NAME="AEN2275"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2088"
+NAME="AEN2288"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2106"
+NAME="AEN2306"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2118"
+NAME="AEN2318"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2139"
+NAME="AEN2339"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2150"
+NAME="AEN2350"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2175"
+NAME="AEN2375"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2187"
+NAME="AEN2387"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2208"
+NAME="AEN2408"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2218"
+NAME="AEN2418"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2239"
+NAME="AEN2439"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2248"
+NAME="AEN2448"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2261"
+NAME="AEN2461"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2268"
+NAME="AEN2468"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2277"
+NAME="AEN2477"
></A
><H3
><A
><DIV
CLASS="INFORMALTABLE"
><A
-NAME="AEN2285"
+NAME="AEN2485"
></A
><P
></P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2294"
+NAME="AEN2494"
></A
><H3
><A
href="http://cvs.gnome.org/lxr/source/libxslt/ChangeLog">Changelog</a> file
for a really accurate description</h3>
+<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>
*
* the version string like "1.2.3"
*/
-#define LIBXSLT_DOTTED_VERSION "1.0.3"
+#define LIBXSLT_DOTTED_VERSION "1.0.4"
/**
* LIBXSLT_VERSION:
*
* the version number: 1.2.3 value is 1002003
*/
-#define LIBXSLT_VERSION 10003
+#define LIBXSLT_VERSION 10004
/**
* LIBXSLT_VERSION_STRING:
*
* the version number string, 1.2.3 value is "1002003"
*/
-#define LIBXSLT_VERSION_STRING "10003"
+#define LIBXSLT_VERSION_STRING "10004"
/**
* WITH_XSLT_DEBUG: