+Thu May 3 19:02:21 CEST 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
+
+ * TODO configure.in libxslt.spec.in: getting ready for 0.9.0
+ release
+ * doc/html/* doc/xslt.html: updated and regenerated the docs
+
Thu May 3 17:56:55 CEST 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
* xsltutils.[ch] transform.c: implemented multiple levels of
- seems that saving back XSLT stylesheet from a compiled form might
be a bit ugly ...
-Import:
-
-
ID and Key support:
-> done but namespace support in keys is not defined
-> make sure keys are recomputed on new document input
a small API redesign
Sorting:
- -> add support for imbricated sorts
-> add lang and case-order
-> add foreign sorting functions (interfaces ?).
-> optimization by checking their existence at stylesheet parse time.
=> done when building the preproc function
+Sorting:
+ -> add support for imbricated sorts
+ => done but not well tested.
Separate util module:
-> macros, config, verbosity ?
AC_INIT(libxslt/xslt.c)
-VERSION=0.8.0
+LIBXSLT_MAJOR_VERSION=0
+LIBXSLT_MINOR_VERSION=9
+LIBXSLT_MICRO_VERSION=0
PACKAGE=libxslt
+LIBXSLT_VERSION=$LIBXSLT_MAJOR_VERSION.$LIBXSLT_MINOR_VERSION.$LIBXSLT_MICRO_VERSION
+LIBXSLT_VERSION_INFO=`expr $LIBXSLT_MAJOR_VERSION + $LIBXSLT_MINOR_VERSION`:$LIBXSLT_MICRO_VERSION:$LIBXSLT_MINOR_VERSION
+
+LIBXSLT_VERSION_NUMBER=`expr $LIBXSLT_MAJOR_VERSION \* 10000 + $LIBXSLT_MINOR_VERSION \* 100 + $LIBXSLT_MICRO_VERSION`
+
+AC_SUBST(LIBXSLT_MAJOR_VERSION)
+AC_SUBST(LIBXSLT_MINOR_VERSION)
+AC_SUBST(LIBXSLT_MICRO_VERSION)
+AC_SUBST(LIBXSLT_VERSION)
+AC_SUBST(LIBXSLT_VERSION_INFO)
+AC_SUBST(LIBXSLT_VERSION_NUMBER)
+VERSION=${LIBXSLT_VERSION}
+
AM_CONFIG_HEADER(config.h)
AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
AM_MAINTAINER_MODE
dnl find libxml
dnl
XML_CONFIG="xml2-config"
-AC_MSG_CHECKING(for libxml libraries >= 2.3.7)
+AC_MSG_CHECKING(for libxml libraries >= 2.3.8)
if test "x$LIBXML_PREFIX" != "x"
then
if ${LIBXML_PREFIX}/bin/xml2-config --libs print > /dev/null 2>&1
if test "x$XML_CONFIG" != "x"
then
vers=`$XML_CONFIG --version | sed -e 's/libxml //' | awk 'BEGIN { FS = "."; } { printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'`
- if test "$vers" -ge 2003007
+ if test "$vers" -ge 2003008
then
LIBXML_LIBS="`$XML_CONFIG --libs`"
LIBXML_CFLAGS="`$XML_CONFIG --cflags`"
AC_MSG_RESULT(found)
else
- AC_MSG_ERROR(You need at least libxml2 2.3.7 for this version of libxslt)
+ AC_MSG_ERROR(You need at least libxml2 2.3.8 for this version of libxslt)
fi
else
AC_MSG_ERROR(Could not find libxml2 anywhere, check ftp://xmlsoft.org/.)
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2049"
+NAME="AEN2054"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2052"
+NAME="AEN2057"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2065"
+NAME="AEN2070"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2068"
+NAME="AEN2073"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2070"
+NAME="AEN2075"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2091"
+NAME="AEN2096"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2107"
+NAME="AEN2112"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>attributes</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nargs</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nargs</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nargs</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nargs</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nargs</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nargs</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nargs</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nargs</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nargs</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2143"
+NAME="AEN2148"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2146"
+NAME="AEN2151"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2168"
+NAME="AEN2173"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2171"
+NAME="AEN2176"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2173"
+NAME="AEN2178"
></A
><H3
><A
><I
>res</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2195"
+NAME="AEN2200"
></A
><H3
><A
><I
>res</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2217"
+NAME="AEN2222"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2238"
+NAME="AEN2243"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2259"
+NAME="AEN2264"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2280"
+NAME="AEN2285"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2305"
+NAME="AEN2310"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nameURI</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2929"
+NAME="AEN2884"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2932"
+NAME="AEN2887"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2954"
+NAME="AEN2909"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2957"
+NAME="AEN2912"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2959"
+NAME="AEN2914"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nameURI</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>match</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>use</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2999"
+NAME="AEN2954"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nameURI</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>value</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3035"
+NAME="AEN2990"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>doc</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3056"
+NAME="AEN3011"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3072"
+NAME="AEN3027"
></A
><H3
><A
><I
>doc</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2341"
+NAME="AEN2346"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2344"
+NAME="AEN2349"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2370"
+NAME="AEN2375"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2373"
+NAME="AEN2378"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2375"
+NAME="AEN2380"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2396"
+NAME="AEN2401"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ns</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>out</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2432"
+NAME="AEN2437"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>URI</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>prefix</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>out</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2472"
+NAME="AEN2477"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2504"
+NAME="AEN2509"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3537"
+NAME="AEN3498"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3540"
+NAME="AEN3501"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3553"
+NAME="AEN3514"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3556"
+NAME="AEN3517"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3558"
+NAME="AEN3519"
></A
><H3
><A
><I
>Param1</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>Param2</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>Param3</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>Param4</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3593"
+NAME="AEN3554"
></A
><H3
><A
><I
>Param1</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>Param2</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>Param3</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>pattern</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>doc</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>mode</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>modeURI</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>pattern</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
<GTKDOCLINK
HREF="XMLXPATHCOMPEXPRPTR"
>xmlXPathCompExprPtr</GTKDOCLINK
-> comp);
+> comp,
+ <GTKDOCLINK
+HREF="XMLNSPTR"
+>xmlNsPtr</GTKDOCLINK
+> *nsList,
+ int nsNr);
<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
HREF="libxslt-templates.html#XSLTEVALSTATICATTRVALUETEMPLATE"
>xsltEvalStaticAttrValueTemplate</A
> (<A
-HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
->xsltTransformContextPtr</A
-> ctxt,
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+> style,
<GTKDOCLINK
HREF="XMLNODEPTR"
>xmlNodePtr</GTKDOCLINK
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN630"
+NAME="AEN631"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN633"
+NAME="AEN634"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN635"
+NAME="AEN636"
></A
><H3
><A
<GTKDOCLINK
HREF="XMLXPATHCOMPEXPRPTR"
>xmlXPathCompExprPtr</GTKDOCLINK
-> comp);</PRE
+> comp,
+ <GTKDOCLINK
+HREF="XMLNSPTR"
+>xmlNsPtr</GTKDOCLINK
+> *nsList,
+ int nsNr);</PRE
></TD
></TR
></TABLE
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>nsList</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the namespaces in scope
+<TT
+CLASS="PARAMETER"
+><I
+>int</I
+></TT
+> nsNr: the number of namespaces in scope</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>nsNr</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
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN660"
+NAME="AEN671"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>parent</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN691"
+NAME="AEN702"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ns</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN727"
+NAME="AEN738"
></A
><H3
><A
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
>* xsltEvalStaticAttrValueTemplate (<A
-HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
->xsltTransformContextPtr</A
-> ctxt,
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+> style,
<GTKDOCLINK
HREF="XMLNODEPTR"
>xmlNodePtr</GTKDOCLINK
><TT
CLASS="PARAMETER"
><I
->ctxt</I
+>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> the XSLT transformation context</TD
+> the XSLT stylesheet</TD
></TR
><TR
><TD
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ns</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>found</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN767"
+NAME="AEN778"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN793"
+NAME="AEN804"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN819"
+NAME="AEN830"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>target</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN850"
+NAME="AEN861"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>target</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>attr</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN881"
+NAME="AEN892"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>attr</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN912"
+NAME="AEN923"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN915"
+NAME="AEN926"
></A
><H2
>Synopsis</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1011"
+NAME="AEN1022"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1014"
+NAME="AEN1025"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1016"
+NAME="AEN1027"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>doc</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>params</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1046"
+NAME="AEN1057"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>list</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>real</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1076"
+NAME="AEN1087"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1107"
+NAME="AEN1118"
></A
><H3
><A
></TR
></TABLE
><P
->Process the xslt sort node on the source node</P
+>function attached to xslt:sort nodes, but this should not be
+called directly</P
><P
></P
><DIV
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1138"
+NAME="AEN1149"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1169"
+NAME="AEN1180"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1200"
+NAME="AEN1211"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1231"
+NAME="AEN1242"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1262"
+NAME="AEN1273"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1293"
+NAME="AEN1304"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1324"
+NAME="AEN1335"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1355"
+NAME="AEN1366"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1386"
+NAME="AEN1397"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1417"
+NAME="AEN1428"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1448"
+NAME="AEN1459"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1479"
+NAME="AEN1490"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1510"
+NAME="AEN1521"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1541"
+NAME="AEN1552"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1572"
+NAME="AEN1583"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN2525"
+NAME="AEN2530"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN2528"
+NAME="AEN2533"
></A
><H2
>Synopsis</H2
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> *ns_uri);
-int <A
-HREF="libxslt-variables.html#XSLTREGISTERVARIABLE"
->xsltRegisterVariable</A
-> (<A
-HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
->xsltTransformContextPtr</A
-> ctxt,
- const <GTKDOCLINK
-HREF="XMLCHAR"
->xmlChar</GTKDOCLINK
-> *name,
- const <GTKDOCLINK
-HREF="XMLCHAR"
->xmlChar</GTKDOCLINK
-> *ns_uri,
- const <GTKDOCLINK
-HREF="XMLCHAR"
->xmlChar</GTKDOCLINK
-> *select,
- <GTKDOCLINK
-HREF="XMLNODEPTR"
->xmlNodePtr</GTKDOCLINK
-> tree,
- int param);
<GTKDOCLINK
HREF="XMLXPATHOBJECTPTR"
>xmlXPathObjectPtr</GTKDOCLINK
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2576"
+NAME="AEN2575"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN2579"
+NAME="AEN2578"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2581"
+NAME="AEN2580"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2595"
+NAME="AEN2594"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2615"
+NAME="AEN2614"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>params</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2639"
+NAME="AEN2638"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2654"
+NAME="AEN2653"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2669"
+NAME="AEN2668"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2690"
+NAME="AEN2689"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2711"
+NAME="AEN2710"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2732"
+NAME="AEN2731"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2753"
+NAME="AEN2752"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2780"
+NAME="AEN2779"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>elems</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2805"
+NAME="AEN2804"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2820"
+NAME="AEN2819"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ns_uri</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2851"
-></A
-><H3
-><A
-NAME="XSLTREGISTERVARIABLE"
-></A
->xsltRegisterVariable ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int xsltRegisterVariable (<A
-HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
->xsltTransformContextPtr</A
-> ctxt,
- const <GTKDOCLINK
-HREF="XMLCHAR"
->xmlChar</GTKDOCLINK
-> *name,
- const <GTKDOCLINK
-HREF="XMLCHAR"
->xmlChar</GTKDOCLINK
-> *ns_uri,
- const <GTKDOCLINK
-HREF="XMLCHAR"
->xmlChar</GTKDOCLINK
-> *select,
- <GTKDOCLINK
-HREF="XMLNODEPTR"
->xmlNodePtr</GTKDOCLINK
-> tree,
- int param);</PRE
-></TD
-></TR
-></TABLE
-><P
->Computes and register a new variable value.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
-> the XSLT transformation 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 variable 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 variable namespace URI</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->select</I
-></TT
->:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
-> the expression which need to be evaluated to generate a value</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->tree</I
-></TT
->:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
-> the tree if select is NULL</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->param</I
-></TT
->:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
-> this is a parameter actually</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
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2895"
+NAME="AEN2850"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>ns_uri</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN3092"
+NAME="AEN3047"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN3095"
+NAME="AEN3050"
></A
><H2
>Synopsis</H2
CLASS="SYNOPSIS"
>
+#define <A
+HREF="libxslt-xsltinternals.html#XSLT-MAX-SORT-CAPS"
+>XSLT_MAX_SORT</A
+>
enum <A
HREF="libxslt-xsltinternals.html#XSLTELEM"
>xsltElem</A
>xsltDecimalFormat</A
>;
struct <A
-HREF="libxslt-xsltinternals.html#XSLTSTYLESHEET"
->xsltStylesheet</A
->;
-typedef <A
-HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
->xsltStylesheetPtr</A
->;
-struct <A
HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXT"
>xsltTransformContext</A
>;
HREF="libxslt-xsltinternals.html#XSLTSTYLETYPE"
>xsltStyleType</A
>;
+struct <A
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEET"
+>xsltStylesheet</A
+>;
+typedef <A
+HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
+>xsltStylesheetPtr</A
+>;
enum <A
HREF="libxslt-xsltinternals.html#XSLTOUTPUTTYPE"
>xsltOutputType</A
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3157"
+NAME="AEN3113"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN3160"
+NAME="AEN3116"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3162"
+NAME="AEN3118"
+></A
+><H3
+><A
+NAME="XSLT-MAX-SORT-CAPS"
+></A
+>XSLT_MAX_SORT</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>#define XSLT_MAX_SORT 5</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3123"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3167"
+NAME="AEN3128"
></A
><H3
><A
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 */
+ xmlNodePtr tree; /* the tree if no eval string or the location */
xmlXPathObjectPtr value; /* The value if computed */
};</PRE
></TD
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3172"
+NAME="AEN3133"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3177"
+NAME="AEN3138"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3182"
+NAME="AEN3143"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3187"
+NAME="AEN3148"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3192"
+NAME="AEN3153"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3197"
-></A
-><H3
-><A
-NAME="XSLTSTYLESHEET"
-></A
->struct xsltStylesheet</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->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
- preserve space and cdata-section elements */
- int stripAll; /* strip-space * (1) preserve-space * (-1) */
-
- /*
- * 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 */
-};</PRE
-></TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN3202"
-></A
-><H3
-><A
-NAME="XSLTSTYLESHEETPTR"
-></A
->xsltStylesheetPtr</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->typedef xsltStylesheet *xsltStylesheetPtr;</PRE
-></TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN3207"
+NAME="AEN3158"
></A
><H3
><A
xsltStackElemPtr *varsTab; /* the variable list stack */
/*
- * Precomputed blocks
- */
- xsltStylePreCompPtr preComps; /* list of precomputed blocks */
-
- /*
* Extensions
*/
xmlHashTablePtr extFunctions; /* the extension functions */
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3212"
+NAME="AEN3163"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3217"
+NAME="AEN3168"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3222"
+NAME="AEN3173"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3227"
+NAME="AEN3178"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>comp</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3257"
+NAME="AEN3208"
></A
><H3
><A
XSLT_FUNC_CHOOSE,
XSLT_FUNC_IF,
XSLT_FUNC_FOREACH,
- XSLT_FUNC_DOCUMENT
+ XSLT_FUNC_DOCUMENT,
+ XSLT_FUNC_WITHPARAM,
+ XSLT_FUNC_PARAM,
+ XSLT_FUNC_VARIABLE,
+ XSLT_FUNC_WHEN
} xsltStyleType;</PRE
></TD
></TR
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3262"
+NAME="AEN3213"
+></A
+><H3
+><A
+NAME="XSLTSTYLESHEET"
+></A
+>struct xsltStylesheet</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>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
+ preserve space and cdata-section elements */
+ int stripAll; /* strip-space * (1) preserve-space * (-1) */
+
+ /*
+ * 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
+ */
+ xsltStylePreCompPtr preComps; /* list of precomputed blocks */
+ int warnings; /* number of warnings found at compilation */
+ int errors; /* number of errors found at compilation */
+};</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3218"
+></A
+><H3
+><A
+NAME="XSLTSTYLESHEETPTR"
+></A
+>xsltStylesheetPtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xsltStylesheet *xsltStylesheetPtr;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3223"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3267"
+NAME="AEN3228"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3272"
+NAME="AEN3233"
></A
><H3
><A
><TD
><PRE
CLASS="PROGRAMLISTING"
->#define CHECK_STOPPED if (ctxt-state == XSLT_STATE_STOPPED) return;</PRE
+>#define CHECK_STOPPED if (ctxt->state == XSLT_STATE_STOPPED) return;</PRE
></TD
></TR
></TABLE
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3277"
+NAME="AEN3238"
></A
><H3
><A
><TD
><PRE
CLASS="PROGRAMLISTING"
->#define CHECK_STOPPEDE if (ctxt-state == XSLT_STATE_STOPPED) goto error;</PRE
+>#define CHECK_STOPPEDE if (ctxt->state == XSLT_STATE_STOPPED) goto error;</PRE
></TD
></TR
></TABLE
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3282"
+NAME="AEN3243"
></A
><H3
><A
><TD
><PRE
CLASS="PROGRAMLISTING"
->#define CHECK_STOPPED0 if (ctxt-state == XSLT_STATE_STOPPED) return(0);</PRE
+>#define CHECK_STOPPED0 if (ctxt->state == XSLT_STATE_STOPPED) return(0);</PRE
></TD
></TR
></TABLE
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3287"
+NAME="AEN3248"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3303"
+NAME="AEN3264"
></A
><H3
><A
><I
>filename</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3324"
+NAME="AEN3285"
></A
><H3
><A
><I
>sheet</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3341"
+NAME="AEN3302"
></A
><H3
><A
><I
>str</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3361"
+NAME="AEN3322"
></A
><H3
><A
><I
>elem</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3378"
+NAME="AEN3339"
></A
><H3
><A
><I
>sheet</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3404"
+NAME="AEN3365"
></A
><H3
><A
><I
>ret</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>doc</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3430"
+NAME="AEN3391"
></A
><H3
><A
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>cur</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3451"
+NAME="AEN3412"
></A
><H3
><A
><I
>doc</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3472"
+NAME="AEN3433"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>data</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN3497"
+NAME="AEN3458"
></A
><H3
><A
><I
>self</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>format</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>number</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>result</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN1608"
+NAME="AEN1619"
></A
><H2
>Name</H2
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN1611"
+NAME="AEN1622"
></A
><H2
>Synopsis</H2
>xmlNodeSetPtr</GTKDOCLINK
> list);
void <A
-HREF="libxslt-xsltutils.html#XSLTSORTFUNCTION"
->xsltSortFunction</A
-> (<GTKDOCLINK
-HREF="XMLNODESETPTR"
->xmlNodeSetPtr</GTKDOCLINK
-> list,
+HREF="libxslt-xsltutils.html#XSLTDOSORTFUNCTION"
+>xsltDoSortFunction</A
+> (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt,
<GTKDOCLINK
-HREF="XMLXPATHOBJECTPTR"
->xmlXPathObjectPtr</GTKDOCLINK
-> *results,
- int descending,
- int number);
+HREF="XMLNODEPTR"
+>xmlNodePtr</GTKDOCLINK
+> *sorts,
+ int nbsorts);
int <A
HREF="libxslt-xsltutils.html#XSLTSAVERESULTTO"
>xsltSaveResultTo</A
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1657"
+NAME="AEN1668"
></A
><H2
>Description</H2
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN1660"
+NAME="AEN1671"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1662"
+NAME="AEN1673"
></A
><H3
><A
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1681"
+NAME="AEN1692"
></A
><H3
><A
><I
>name</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>prefix</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1706"
+NAME="AEN1717"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>nargs</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1725"
+NAME="AEN1736"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1730"
+NAME="AEN1741"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1735"
+NAME="AEN1746"
></A
><H3
><A
><I
>n</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1749"
+NAME="AEN1760"
></A
><H3
><A
><I
>n</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>val</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1767"
+NAME="AEN1778"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1772"
+NAME="AEN1783"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1777"
+NAME="AEN1788"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1782"
+NAME="AEN1793"
></A
><H3
><A
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1787"
+NAME="AEN1798"
></A
><H3
><A
><I
>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>node</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>inst</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1813"
+NAME="AEN1824"
></A
><H3
><A
><I
>ctx</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>handler</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1838"
+NAME="AEN1849"
></A
><H3
><A
><I
>ctx</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>handler</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1863"
+NAME="AEN1874"
></A
><H3
><A
><I
>list</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1880"
+NAME="AEN1891"
></A
><H3
><A
-NAME="XSLTSORTFUNCTION"
+NAME="XSLTDOSORTFUNCTION"
></A
->xsltSortFunction ()</H3
+>xsltDoSortFunction ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
><TD
><PRE
CLASS="PROGRAMLISTING"
->void xsltSortFunction (<GTKDOCLINK
-HREF="XMLNODESETPTR"
->xmlNodeSetPtr</GTKDOCLINK
-> list,
+>void xsltDoSortFunction (<A
+HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
+>xsltTransformContextPtr</A
+> ctxt,
<GTKDOCLINK
-HREF="XMLXPATHOBJECTPTR"
->xmlXPathObjectPtr</GTKDOCLINK
-> *results,
- int descending,
- int number);</PRE
+HREF="XMLNODEPTR"
+>xmlNodePtr</GTKDOCLINK
+> *sorts,
+ int nbsorts);</PRE
></TD
></TR
></TABLE
><P
->reorder the current node list <TT
-CLASS="PARAMETER"
-><I
->list</I
-></TT
-> accordingly to the values
-present in the array of results <TT
-CLASS="PARAMETER"
-><I
->results</I
-></TT
-></P
+>reorder the current node list accordingly to the set of sorting
+requirement provided by the arry of nodes.</P
><P
></P
><DIV
><TT
CLASS="PARAMETER"
><I
->list</I
-></TT
->:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
-> the node set</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->results</I
+>ctxt</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> the results</TD
+> a XSLT process context</TD
></TR
><TR
><TD
><TT
CLASS="PARAMETER"
><I
->descending</I
+>sorts</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> direction of order</TD
+> array of sort nodes</TD
></TR
><TR
><TD
><TT
CLASS="PARAMETER"
><I
->number</I
+>nbsorts</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> the type of the result</TD
+> the number of sorts in the array</TD
></TR
></TABLE
><P
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1911"
+NAME="AEN1916"
></A
><H3
><A
><I
>buf</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>result</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1944"
+NAME="AEN1949"
></A
><H3
><A
><I
>URI</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>result</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>compression</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN1980"
+NAME="AEN1985"
></A
><H3
><A
><I
>file</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>result</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN2013"
+NAME="AEN2018"
></A
><H3
><A
><I
>fd</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>result</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
><I
>style</I
></TT
->:</TD
+> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
href="http://cvs.gnome.org/lxr/source/libxslt/ChangeLog">Changelog</a> file
for a really accurate description</h3>
+<h3>0.9.0: May 3 2001</h3>
+<ul>
+ <li>lot of various bugfixes, extended the regression suite</li>
+ <li>xsltproc shoudl 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 concurent 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>
Group: Development/Libraries
Source: ftp://xmlsoft.org/XSLT/libxslt-%{ver}.tar.gz
BuildRoot: /var/tmp/libxslt-%{PACKAGE_VERSION}-root
-Requires: libxml2 >= 2.3.3
+Requires: libxml2 >= 2.3.8
URL: http://xmlsoft.org/XSLT/
Docdir: %{prefix}/doc
%description
This C library allows to transform XML files into other XML files
(or HTML, text, ...) using the standard XSLT stylesheet transformation
-mechanism. To use it you need to have a version of libxml2 >= 2.3.3
+mechanism. To use it you need to have a version of libxml2 >= 2.3.8
installed.
%package devel
Summary: Libraries, includes, etc. to develop XML and HTML applications
Group: Development/Libraries
Requires: libxslt = %{version}
-Requires: libxml2-devel >= 2.3.2
+Requires: libxml2-devel >= 2.3.8
%description devel
This C library allows to transform XML files into other XML files
(or HTML, text, ...) using the standard XSLT stylesheet transformation
-mechanism. To use it you need to have a version of libxml2 >= 2.3.3
+mechanism. To use it you need to have a version of libxml2 >= 2.3.8
installed.
%changelog