# The XSLT C library for Gnome ## Module variables from libxslt

API Menu
Main Menu Developer Menu API Menu ChangeLog
Related links
Mail archive XML libxml2 FTP Windows binaries Solaris binaries MacOsX binaries Bug Tracker XSLT with PHP Apache module Pascal bindings Xsldbg Debugger
API Indexes
Alphabetic Constructors Functions/Types Modules Symbols
interface for the variable matching and lookup. ## Table of Contents
    #define XSLT_REGISTER_VARIABLE_LOOKUP
    int	xsltAddStackElemList		(xsltTransformContextPtr ctxt,
    					 xsltStackElemPtr elems)
    int	xsltEvalGlobalVariables		(xsltTransformContextPtr ctxt)
    int	xsltEvalOneUserParam		(xsltTransformContextPtr ctxt,
    					 const xmlChar * name,
    					 const xmlChar * value)
    int	xsltEvalUserParams		(xsltTransformContextPtr ctxt,
    					 const char ** params)
    void	xsltFreeGlobalVariables		(xsltTransformContextPtr ctxt)
    void	xsltParseGlobalParam		(xsltStylesheetPtr style,
    					 xmlNodePtr cur)
    void	xsltParseGlobalVariable		(xsltStylesheetPtr style,
    					 xmlNodePtr cur)
    xsltStackElemPtr	xsltParseStylesheetCallerParam	(xsltTransformContextPtr ctxt,
    							 xmlNodePtr cur)
    void	xsltParseStylesheetParam	(xsltTransformContextPtr ctxt,
    					 xmlNodePtr cur)
    void	xsltParseStylesheetVariable	(xsltTransformContextPtr ctxt,
    					 xmlNodePtr cur)
    int	xsltQuoteOneUserParam		(xsltTransformContextPtr ctxt,
    					 const xmlChar * name,
    					 const xmlChar * value)
    int	xsltQuoteUserParams		(xsltTransformContextPtr ctxt,
    					 const char ** params)
    xmlXPathObjectPtr	xsltVariableLookup	(xsltTransformContextPtr ctxt,
    						 const xmlChar * name,
    						 const xmlChar * ns_uri)
    xmlXPathObjectPtr	xsltXPathVariableLookup	(void * ctxt,
    						 const xmlChar * name,
    						 const xmlChar * ns_uri)
## Description ### Macro: XSLT_REGISTER_VARIABLE_LOOKUP
    #define XSLT_REGISTER_VARIABLE_LOOKUP
Registering macro, not general purpose at all but used in different modules. ### Function: xsltAddStackElemList
    int	xsltAddStackElemList		(xsltTransformContextPtr ctxt,
    					 xsltStackElemPtr elems)
add the new element list at this level of the stack.
`ctxt`: | xn XSLT transformation context
`elems`: | a stack element list
`Returns`: | 0 in case of success, -1 in case of failure.
### Function: xsltEvalGlobalVariables
    int	xsltEvalGlobalVariables		(xsltTransformContextPtr ctxt)
Evaluate the global variables of a stylesheet. This need to be done on parsed stylesheets before starting to apply transformations
`ctxt`: | the XSLT transformation context
`Returns`: | 0 in case of success, -1 in case of error
### Function: xsltEvalOneUserParam
    int	xsltEvalOneUserParam		(xsltTransformContextPtr ctxt,
    					 const xmlChar * name,
    					 const xmlChar * value)
This is normally called from xsltEvalUserParams to process a single parameter from a list of parameters. The @value is evaluated as an XPath expression and the result is stored in the context's global variable/parameter hash table. To have a parameter treated literally (not as an XPath expression) use xsltQuoteUserParams (or xsltQuoteOneUserParam). For more details see description of xsltProcessOneUserParamInternal.
`ctxt`: | the XSLT transformation context
`name`: | a null terminated string giving the name of the parameter
`value`: | a null terminated string giving the XPath expression to be evaluated
`Returns`: | 0 in case of success, -1 in case of error.
### Function: xsltEvalUserParams
    int	xsltEvalUserParams		(xsltTransformContextPtr ctxt,
    					 const char ** params)
Evaluate the global variables of a stylesheet. This needs to be done on parsed stylesheets before starting to apply transformations. Each of the parameters is evaluated as an XPath expression and stored in the global variables/parameter hash table. If you want your parameter used literally, use xsltQuoteUserParams.
`ctxt`: | the XSLT transformation context
`params`: | a NULL terminated array of parameters name/value tuples
`Returns`: | 0 in case of success, -1 in case of error
### Function: xsltFreeGlobalVariables
    void	xsltFreeGlobalVariables		(xsltTransformContextPtr ctxt)
Free up the data associated to the global variables its value.
`ctxt`: | the XSLT transformation context
### Function: xsltParseGlobalParam
    void	xsltParseGlobalParam		(xsltStylesheetPtr style,
    					 xmlNodePtr cur)
parse an XSLT transformation param declaration and record its value.
`style`: | the XSLT stylesheet
`cur`: | the "param" element
### Function: xsltParseGlobalVariable
    void	xsltParseGlobalVariable		(xsltStylesheetPtr style,
    					 xmlNodePtr cur)
parse an XSLT transformation variable declaration and record its value.
`style`: | the XSLT stylesheet
`cur`: | the "variable" element
### Function: xsltParseStylesheetCallerParam
    xsltStackElemPtr	xsltParseStylesheetCallerParam	(xsltTransformContextPtr ctxt,
    							 xmlNodePtr cur)
parse an XSLT transformation param declaration, compute its value but doesn't record it.
`ctxt`: | the XSLT transformation context
`cur`: | the "param" element
`Returns`: | the new xsltStackElemPtr or NULL
### Function: xsltParseStylesheetParam
    void	xsltParseStylesheetParam	(xsltTransformContextPtr ctxt,
    					 xmlNodePtr cur)
parse an XSLT transformation param declaration and record its value.
`ctxt`: | the XSLT transformation context
`cur`: | the "param" element
### Function: xsltParseStylesheetVariable
    void	xsltParseStylesheetVariable	(xsltTransformContextPtr ctxt,
    					 xmlNodePtr cur)
parse an XSLT transformation variable declaration and record its value.
`ctxt`: | the XSLT transformation context
`cur`: | the "variable" element
### Function: xsltQuoteOneUserParam
    int	xsltQuoteOneUserParam		(xsltTransformContextPtr ctxt,
    					 const xmlChar * name,
    					 const xmlChar * value)
This is normally called from xsltQuoteUserParams to process a single parameter from a list of parameters. The @value is stored in the context's global variable/parameter hash table.
`ctxt`: | the XSLT transformation context
`name`: | a null terminated string giving the name of the parameter
`value`: | a null terminated string giving the parameter value
`Returns`: | 0 in case of success, -1 in case of error.
### Function: xsltQuoteUserParams
    int	xsltQuoteUserParams		(xsltTransformContextPtr ctxt,
    					 const char ** params)
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.
`ctxt`: | the XSLT transformation context
`params`: | a NULL terminated arry of parameters names/values tuples
`Returns`: | 0 in case of success, -1 in case of error.
### Function: xsltVariableLookup
    xmlXPathObjectPtr	xsltVariableLookup	(xsltTransformContextPtr ctxt,
    						 const xmlChar * name,
    						 const xmlChar * ns_uri)
Search in the Variable array of the context for the given variable value.
`ctxt`: | the XSLT transformation context
`name`: | the variable name
`ns_uri`: | the variable namespace URI
`Returns`: | the value or NULL if not found
### Function: xsltXPathVariableLookup
    xmlXPathObjectPtr	xsltXPathVariableLookup	(void * ctxt,
    						 const xmlChar * name,
    						 const xmlChar * ns_uri)
This is the entry point when a varibale is needed by the XPath interpretor.
`ctxt`: | a void * but the the XSLT transformation context actually
`name`: | the variable name
`ns_uri`: | the variable namespace URI
`Returns`: | the value or NULL if not found
Daniel Veillard