1
0
mirror of https://gitlab.gnome.org/GNOME/libxslt synced 2025-06-18 09:01:51 +03:00
Files
libxslt/doc/html/libxslt-xsltinternals.html
Daniel Veillard f546bafbd5 - TODO configure.in libxslt.spec.in: getting ready for 0.9.0
release
- doc/html/* doc/xslt.html: updated and regenerated the docs
Daniel
2001-05-03 17:03:52 +00:00

2359 lines
36 KiB
HTML

<HTML
><HEAD
><TITLE
>xsltInternals</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.44"><LINK
REL="HOME"
TITLE="Gnome XSLT Library Reference Manual"
HREF="book1.html"><LINK
REL="UP"
TITLE="Libxslt Library Reference"
HREF="libxslt-lib.html"><LINK
REL="PREVIOUS"
TITLE="keys"
HREF="libxslt-keys.html"><LINK
REL="NEXT"
TITLE="numbersInternals"
HREF="libxslt-numbersinternals.html"></HEAD
><BODY
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TH
COLSPAN="4"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="5"
>Gnome XSLT Library Reference Manual</FONT
></TH
></TR
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="libxslt-keys.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="libxslt-lib.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
><A
HREF="libxslt-numbersinternals.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Next Page &#62;&#62;&#62;</B
></FONT
></A
></TD
></TR
></TABLE
></DIV
><H1
><A
NAME="LIBXSLT-XSLTINTERNALS"
>xsltInternals</A
></H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN3047"
></A
><H2
>Name</H2
>xsltInternals&nbsp;--&nbsp;</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN3050"
></A
><H2
>Synopsis</H2
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="SYNOPSIS"
>&#13;
#define <A
HREF="libxslt-xsltinternals.html#XSLT-MAX-SORT-CAPS"
>XSLT_MAX_SORT</A
>
enum <A
HREF="libxslt-xsltinternals.html#XSLTELEM"
>xsltElem</A
>;
struct <A
HREF="libxslt-xsltinternals.html#XSLTSTACKELEM"
>xsltStackElem</A
>;
typedef <A
HREF="libxslt-xsltinternals.html#XSLTSTACKELEMPTR"
>xsltStackElemPtr</A
>;
#define <A
HREF="libxslt-xsltinternals.html#XSLT-PAT-NO-PRIORITY-CAPS"
>XSLT_PAT_NO_PRIORITY</A
>
struct <A
HREF="libxslt-xsltinternals.html#XSLTTEMPLATE"
>xsltTemplate</A
>;
typedef <A
HREF="libxslt-xsltinternals.html#XSLTTEMPLATEPTR"
>xsltTemplatePtr</A
>;
struct <A
HREF="libxslt-xsltinternals.html#XSLTDECIMALFORMAT"
>xsltDecimalFormat</A
>;
struct <A
HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXT"
>xsltTransformContext</A
>;
typedef <A
HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
>xsltTransformContextPtr</A
>;
struct <A
HREF="libxslt-xsltinternals.html#XSLTSTYLEPRECOMP"
>xsltStylePreComp</A
>;
typedef <A
HREF="libxslt-xsltinternals.html#XSLTSTYLEPRECOMPPTR"
>xsltStylePreCompPtr</A
>;
void (<A
HREF="libxslt-xsltinternals.html#XSLTTRANSFORMFUNCTION"
>*xsltTransformFunction</A
>) (<A
HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
>xsltTransformContextPtr</A
> ctxt,
<GTKDOCLINK
HREF="XMLNODEPTR"
>xmlNodePtr</GTKDOCLINK
> node,
<GTKDOCLINK
HREF="XMLNODEPTR"
>xmlNodePtr</GTKDOCLINK
> inst,
<A
HREF="libxslt-xsltinternals.html#XSLTSTYLEPRECOMPPTR"
>xsltStylePreCompPtr</A
> comp);
enum <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
>;
enum <A
HREF="libxslt-xsltinternals.html#XSLTTRANSFORMSTATE"
>xsltTransformState</A
>;
#define <A
HREF="libxslt-xsltinternals.html#CHECK-STOPPED-CAPS"
>CHECK_STOPPED</A
>
#define <A
HREF="libxslt-xsltinternals.html#CHECK-STOPPEDE-CAPS"
>CHECK_STOPPEDE</A
>
#define <A
HREF="libxslt-xsltinternals.html#CHECK-STOPPED0-CAPS"
>CHECK_STOPPED0</A
>
<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> <A
HREF="libxslt-xsltinternals.html#XSLTNEWSTYLESHEET"
>xsltNewStylesheet</A
> (void);
<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> <A
HREF="libxslt-xsltinternals.html#XSLTPARSESTYLESHEETFILE"
>xsltParseStylesheetFile</A
> (const <GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> *filename);
void <A
HREF="libxslt-xsltinternals.html#XSLTFREESTYLESHEET"
>xsltFreeStylesheet</A
> (<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> sheet);
int <A
HREF="libxslt-xsltinternals.html#XSLTISBLANK"
>xsltIsBlank</A
> (<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> *str);
void <A
HREF="libxslt-xsltinternals.html#XSLTFREESTACKELEMLIST"
>xsltFreeStackElemList</A
> (<A
HREF="libxslt-xsltinternals.html#XSLTSTACKELEMPTR"
>xsltStackElemPtr</A
> elem);
<GTKDOCLINK
HREF="XSLTDECIMALFORMATPTR"
>xsltDecimalFormatPtr</GTKDOCLINK
> <A
HREF="libxslt-xsltinternals.html#XSLTDECIMALFORMATGETBYNAME"
>xsltDecimalFormatGetByName</A
>
(<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> sheet,
<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> *name);
<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> <A
HREF="libxslt-xsltinternals.html#XSLTPARSESTYLESHEETPROCESS"
>xsltParseStylesheetProcess</A
>
(<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> ret,
<GTKDOCLINK
HREF="XMLDOCPTR"
>xmlDocPtr</GTKDOCLINK
> doc);
void <A
HREF="libxslt-xsltinternals.html#XSLTPARSESTYLESHEETOUTPUT"
>xsltParseStylesheetOutput</A
> (<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> style,
<GTKDOCLINK
HREF="XMLNODEPTR"
>xmlNodePtr</GTKDOCLINK
> cur);
<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> <A
HREF="libxslt-xsltinternals.html#XSLTPARSESTYLESHEETDOC"
>xsltParseStylesheetDoc</A
> (<GTKDOCLINK
HREF="XMLDOCPTR"
>xmlDocPtr</GTKDOCLINK
> doc);
void <A
HREF="libxslt-xsltinternals.html#XSLTNUMBERFORMAT"
>xsltNumberFormat</A
> (<A
HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
>xsltTransformContextPtr</A
> ctxt,
<GTKDOCLINK
HREF="XSLTNUMBERDATAPTR"
>xsltNumberDataPtr</GTKDOCLINK
> data,
<GTKDOCLINK
HREF="XMLNODEPTR"
>xmlNodePtr</GTKDOCLINK
> node);
<GTKDOCLINK
HREF="XMLXPATHERROR"
>xmlXPathError</GTKDOCLINK
> <A
HREF="libxslt-xsltinternals.html#XSLTFORMATNUMBERCONVERSION"
>xsltFormatNumberConversion</A
> (<GTKDOCLINK
HREF="XSLTDECIMALFORMATPTR"
>xsltDecimalFormatPtr</GTKDOCLINK
> self,
<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> *format,
<GTKDOCLINK
HREF="DOUBLE"
>double</GTKDOCLINK
> number,
<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> **result);</PRE
></TD
></TR
></TABLE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN3113"
></A
><H2
>Description</H2
><P
></P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN3116"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
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
NAME="XSLTELEM"
></A
>enum xsltElem</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef enum {
XSLT_ELEM_VARIABLE=1,
XSLT_ELEM_PARAM
} xsltElem;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3128"
></A
><H3
><A
NAME="XSLTSTACKELEM"
></A
>struct xsltStackElem</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xsltStackElem {
struct _xsltStackElem *next;/* chained list */
xsltElem type; /* type of the element */
int computed; /* was the evaluation done */
xmlChar *name; /* the local part of the name QName */
xmlChar *nameURI; /* the URI part of the name QName */
xmlChar *select; /* the eval string */
xmlNodePtr tree; /* the tree if no eval string or the location */
xmlXPathObjectPtr value; /* The value if computed */
};</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3133"
></A
><H3
><A
NAME="XSLTSTACKELEMPTR"
></A
>xsltStackElemPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xsltStackElem *xsltStackElemPtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3138"
></A
><H3
><A
NAME="XSLT-PAT-NO-PRIORITY-CAPS"
></A
>XSLT_PAT_NO_PRIORITY</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XSLT_PAT_NO_PRIORITY -12345789</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3143"
></A
><H3
><A
NAME="XSLTTEMPLATE"
></A
>struct xsltTemplate</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xsltTemplate {
struct _xsltTemplate *next;/* chained list sorted by priority */
struct _xsltStylesheet *style;/* the containing stylesheet */
xmlChar *match; /* the matching string */
float priority; /* as given from the stylesheet, not computed */
xmlChar *name; /* the local part of the name QName */
xmlChar *nameURI; /* the URI part of the name QName */
xmlChar *mode; /* the local part of the mode QName */
xmlChar *modeURI; /* the URI part of the mode QName */
xmlNodePtr content; /* the template replacement value */
xmlNodePtr elem; /* the source element */
};</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3148"
></A
><H3
><A
NAME="XSLTTEMPLATEPTR"
></A
>xsltTemplatePtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xsltTemplate *xsltTemplatePtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3153"
></A
><H3
><A
NAME="XSLTDECIMALFORMAT"
></A
>struct xsltDecimalFormat</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xsltDecimalFormat *next; /* chained list */
xmlChar *name;
/* Used for interpretation of pattern */
xmlChar *digit;
xmlChar *patternSeparator;
/* May appear in result */
xmlChar *minusSign;
xmlChar *infinity;
xmlChar *noNumber; /* Not-a-number */
/* Used for interpretation of pattern and may appear in result */
xmlChar *decimalPoint;
xmlChar *grouping;
xmlChar *percent;
xmlChar *permille;
xmlChar *zeroDigit;
} xsltDecimalFormat, *xsltDecimalFormatPtr;
/*
* Data structure associated to a document
*/
typedef struct _xsltDocument xsltDocument;
typedef xsltDocument *xsltDocumentPtr;
struct _xsltDocument {
struct _xsltDocument *next; /* documents are kept in a chained list */
int main; /* is this the main document */
xmlDocPtr doc; /* the parsed document */
void *keys; /* key tables storage */
};</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3158"
></A
><H3
><A
NAME="XSLTTRANSFORMCONTEXT"
></A
>struct xsltTransformContext</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xsltTransformContext {
xsltStylesheetPtr style; /* the stylesheet used */
xsltOutputType type; /* the type of output */
xsltTemplatePtr templ; /* the current template */
int templNr; /* Nb of templates in the stack */
int templMax; /* Size of the templtes stack */
xsltTemplatePtr *templTab; /* the template stack */
xsltStackElemPtr vars; /* the current variable list */
int varsNr; /* Nb of variable list in the stack */
int varsMax; /* Size of the variable list stack */
xsltStackElemPtr *varsTab; /* the variable list stack */
/*
* Extensions
*/
xmlHashTablePtr extFunctions; /* the extension functions */
xmlHashTablePtr extElements; /* the extension elements */
const xmlChar *mode; /* the current mode */
const xmlChar *modeURI; /* the current mode URI */
xsltDocumentPtr docList; /* the document list */
xsltDocumentPtr document; /* the current document */
xmlNodePtr node; /* the current node being processed */
xmlNodeSetPtr nodeList; /* the current node list */
/* xmlNodePtr current; the node */
xmlDocPtr output; /* the resulting document */
xmlNodePtr insert; /* the insertion node */
xmlXPathContextPtr xpathCtxt; /* the XPath context */
xsltTransformState state; /* the current state */
};</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3163"
></A
><H3
><A
NAME="XSLTTRANSFORMCONTEXTPTR"
></A
>xsltTransformContextPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xsltTransformContext *xsltTransformContextPtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3168"
></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 {
struct _xsltStylePreComp *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
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3173"
></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="AEN3178"
></A
><H3
><A
NAME="XSLTTRANSFORMFUNCTION"
></A
>xsltTransformFunction ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void (*xsltTransformFunction) (<A
HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
>xsltTransformContextPtr</A
> ctxt,
<GTKDOCLINK
HREF="XMLNODEPTR"
>xmlNodePtr</GTKDOCLINK
> node,
<GTKDOCLINK
HREF="XMLNODEPTR"
>xmlNodePtr</GTKDOCLINK
> inst,
<A
HREF="libxslt-xsltinternals.html#XSLTSTYLEPRECOMPPTR"
>xsltStylePreCompPtr</A
> comp);</PRE
></TD
></TR
></TABLE
><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
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>inst</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>comp</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&#13;</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3208"
></A
><H3
><A
NAME="XSLTSTYLETYPE"
></A
>enum xsltStyleType</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef enum {
XSLT_FUNC_COPY=1,
XSLT_FUNC_SORT,
XSLT_FUNC_TEXT,
XSLT_FUNC_ELEMENT,
XSLT_FUNC_ATTRIBUTE,
XSLT_FUNC_COMMENT,
XSLT_FUNC_PI,
XSLT_FUNC_COPYOF,
XSLT_FUNC_VALUEOF,
XSLT_FUNC_NUMBER,
XSLT_FUNC_APPLYIMPORTS,
XSLT_FUNC_CALLTEMPLATE,
XSLT_FUNC_APPLYTEMPLATES,
XSLT_FUNC_CHOOSE,
XSLT_FUNC_IF,
XSLT_FUNC_FOREACH,
XSLT_FUNC_DOCUMENT,
XSLT_FUNC_WITHPARAM,
XSLT_FUNC_PARAM,
XSLT_FUNC_VARIABLE,
XSLT_FUNC_WHEN
} xsltStyleType;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
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
NAME="XSLTOUTPUTTYPE"
></A
>enum xsltOutputType</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef enum {
XSLT_OUTPUT_XML = 0,
XSLT_OUTPUT_HTML,
XSLT_OUTPUT_TEXT
} xsltOutputType;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3228"
></A
><H3
><A
NAME="XSLTTRANSFORMSTATE"
></A
>enum xsltTransformState</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef enum {
XSLT_STATE_OK = 0,
XSLT_STATE_ERROR,
XSLT_STATE_STOPPED
} xsltTransformState;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3233"
></A
><H3
><A
NAME="CHECK-STOPPED-CAPS"
></A
>CHECK_STOPPED</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define CHECK_STOPPED if (ctxt-&gt;state == XSLT_STATE_STOPPED) return;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3238"
></A
><H3
><A
NAME="CHECK-STOPPEDE-CAPS"
></A
>CHECK_STOPPEDE</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define CHECK_STOPPEDE if (ctxt-&gt;state == XSLT_STATE_STOPPED) goto error;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3243"
></A
><H3
><A
NAME="CHECK-STOPPED0-CAPS"
></A
>CHECK_STOPPED0</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define CHECK_STOPPED0 if (ctxt-&gt;state == XSLT_STATE_STOPPED) return(0);</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3248"
></A
><H3
><A
NAME="XSLTNEWSTYLESHEET"
></A
>xsltNewStylesheet ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> xsltNewStylesheet (void);</PRE
></TD
></TR
></TABLE
><P
>Create a new XSLT Stylesheet</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"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the newly allocated xsltStylesheetPtr or NULL in case of error</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3264"
></A
><H3
><A
NAME="XSLTPARSESTYLESHEETFILE"
></A
>xsltParseStylesheetFile ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> xsltParseStylesheetFile (const <GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> *filename);</PRE
></TD
></TR
></TABLE
><P
>Load and parse an XSLT stylesheet</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
>filename</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the filename/URL to the stylesheet</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>a new XSLT stylesheet structure.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3285"
></A
><H3
><A
NAME="XSLTFREESTYLESHEET"
></A
>xsltFreeStylesheet ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xsltFreeStylesheet (<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> sheet);</PRE
></TD
></TR
></TABLE
><P
>Free up the memory allocated by <TT
CLASS="PARAMETER"
><I
>sheet</I
></TT
></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
>sheet</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> an XSLT stylesheet</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3302"
></A
><H3
><A
NAME="XSLTISBLANK"
></A
>xsltIsBlank ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int xsltIsBlank (<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> *str);</PRE
></TD
></TR
></TABLE
><P
></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
>str</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a string</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>1 if the string is NULL or made of blanks chars, 0 otherwise</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3322"
></A
><H3
><A
NAME="XSLTFREESTACKELEMLIST"
></A
>xsltFreeStackElemList ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xsltFreeStackElemList (<A
HREF="libxslt-xsltinternals.html#XSLTSTACKELEMPTR"
>xsltStackElemPtr</A
> elem);</PRE
></TD
></TR
></TABLE
><P
>Free up the memory allocated by <TT
CLASS="PARAMETER"
><I
>elem</I
></TT
></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
>elem</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> an XSLT stack element</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3339"
></A
><H3
><A
NAME="XSLTDECIMALFORMATGETBYNAME"
></A
>xsltDecimalFormatGetByName ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="XSLTDECIMALFORMATPTR"
>xsltDecimalFormatPtr</GTKDOCLINK
> xsltDecimalFormatGetByName
(<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> sheet,
<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> *name);</PRE
></TD
></TR
></TABLE
><P
>Find decimal-format by name</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
>sheet</I
></TT
>&nbsp;:</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
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the decimal-format name to find</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&#13;</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3365"
></A
><H3
><A
NAME="XSLTPARSESTYLESHEETPROCESS"
></A
>xsltParseStylesheetProcess ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> xsltParseStylesheetProcess
(<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> ret,
<GTKDOCLINK
HREF="XMLDOCPTR"
>xmlDocPtr</GTKDOCLINK
> doc);</PRE
></TD
></TR
></TABLE
><P
>parse an XSLT stylesheet adding the associated structures</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
>ret</I
></TT
>&nbsp;:</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
>doc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> and xmlDoc parsed XML</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>a new XSLT stylesheet structure.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3391"
></A
><H3
><A
NAME="XSLTPARSESTYLESHEETOUTPUT"
></A
>xsltParseStylesheetOutput ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xsltParseStylesheetOutput (<A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> style,
<GTKDOCLINK
HREF="XMLNODEPTR"
>xmlNodePtr</GTKDOCLINK
> cur);</PRE
></TD
></TR
></TABLE
><P
>parse an XSLT stylesheet output element and record
information related to the stylesheet output</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
>style</I
></TT
>&nbsp;:</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
>cur</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&#13;</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3412"
></A
><H3
><A
NAME="XSLTPARSESTYLESHEETDOC"
></A
>xsltParseStylesheetDoc ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxslt-xsltinternals.html#XSLTSTYLESHEETPTR"
>xsltStylesheetPtr</A
> xsltParseStylesheetDoc (<GTKDOCLINK
HREF="XMLDOCPTR"
>xmlDocPtr</GTKDOCLINK
> doc);</PRE
></TD
></TR
></TABLE
><P
>parse an XSLT stylesheet building the associated structures</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
>doc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> and xmlDoc parsed XML</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>a new XSLT stylesheet structure.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3433"
></A
><H3
><A
NAME="XSLTNUMBERFORMAT"
></A
>xsltNumberFormat ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void xsltNumberFormat (<A
HREF="libxslt-xsltinternals.html#XSLTTRANSFORMCONTEXTPTR"
>xsltTransformContextPtr</A
> ctxt,
<GTKDOCLINK
HREF="XSLTNUMBERDATAPTR"
>xsltNumberDataPtr</GTKDOCLINK
> data,
<GTKDOCLINK
HREF="XMLNODEPTR"
>xmlNodePtr</GTKDOCLINK
> node);</PRE
></TD
></TR
></TABLE
><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
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>data</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>node</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN3458"
></A
><H3
><A
NAME="XSLTFORMATNUMBERCONVERSION"
></A
>xsltFormatNumberConversion ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="XMLXPATHERROR"
>xmlXPathError</GTKDOCLINK
> xsltFormatNumberConversion (<GTKDOCLINK
HREF="XSLTDECIMALFORMATPTR"
>xsltDecimalFormatPtr</GTKDOCLINK
> self,
<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> *format,
<GTKDOCLINK
HREF="DOUBLE"
>double</GTKDOCLINK
> number,
<GTKDOCLINK
HREF="XMLCHAR"
>xmlChar</GTKDOCLINK
> **result);</PRE
></TD
></TR
></TABLE
><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
>self</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>format</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>number</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>result</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><BR
CLEAR="all"><BR><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="libxslt-keys.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="libxslt-lib.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
><A
HREF="libxslt-numbersinternals.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Next Page &#62;&#62;&#62;</B
></FONT
></A
></TD
></TR
><TR
><TD
COLSPAN="2"
ALIGN="left"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>keys</B
></FONT
></TD
><TD
COLSPAN="2"
ALIGN="right"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>numbersInternals</B
></FONT
></TD
></TR
></TABLE
></DIV
></BODY
></HTML
>