Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.11


Typedefs | Functions

XalanCAPI.h File Reference

#include <xalanc/XalanTransformer/XalanTransformerDefinitions.hpp>
Include dependency graph for XalanCAPI.h:

Go to the source code of this file.

Typedefs

Functions


Typedef Documentation

typedef const char* XalanCCharPtr

This is a typedef to work around limitations with the XALAN_TRANSFORMER_EXPORT_FUNCTION macro.

Definition at line 61 of file XalanCAPI.h.

typedef const void* XalanCSSHandle

Handle used to store the address of Compiled Stylesheet instance.

Definition at line 50 of file XalanCAPI.h.

typedef void* XalanHandle

This is a simple C interface for the class XalanTransformer.

It's the user's responsibility to call XalanInitialize() before making any other API calls, and to call XalanTerminate() when finished with the API.

After calling XalanTransformToData or XalanTransformToDataCSS, the user should call XalanFreeData to release the memory allocated by that operation. Handle used to store the address of XalanTransformer instance.

Definition at line 45 of file XalanCAPI.h.

typedef const void* XalanPSHandle

Handle used to store the address of Parsed Source instance.

Definition at line 55 of file XalanCAPI.h.

typedef XMLCh XalanUTF16Char

This is a typedef for characters encoded in UTF-16.

Definition at line 66 of file XalanCAPI.h.


Function Documentation

CreateXalanTransformer (  ) 

Create a XalanTransformer instance.

Returns:
the XalanTransformer handle
DeleteXalanTransformer ( XalanHandle  theXalanHandle  ) 

Delete a XalanTransformer instance.

Parameters:
theXalanHandle The XalanTransformer to destroy.
XalanClearStylesheetParams ( XalanHandle  theXalanHandle  ) 

Clear the top-level stylesheet parameters.

Top-level stylesheet parameters are sticky. When set, they can be used for multiple transformations. Use the XalanClearStylesheetParams function to clear or reset the top-level stylesheet parameters.

Parameters:
theXalanHandle handle of the XalanTransformer instance.
XalanCompileStylesheet ( const char *  theXSLFileName,
XalanHandle  theXalanHandle,
XalanCSSHandle theCSSHandle 
)

Creates a compiled stylesheet.

Parameters:
theXSLFileName The file name of stylesheet source
theXalanHandle The handle of XalanTransformer instance.
theCSSHandle a pointer to a XalanCSSHandle
Returns:
0 for success.
XalanCompileStylesheetFromStream ( const char *  theXSLStream,
unsigned long  theXSLStreamLength,
XalanHandle  theXalanHandle,
XalanCSSHandle theCSSHandle 
)

Creates a compiled stylesheet.

Parameters:
theXSLFileName The stream that contains the stylesheet xml
theXSLStreamLength The length of the stream.
theXalanHandle handle of XalanTransformer instance.
theCSSHandle a pointer to a XalanCSSHandle
Returns:
0 for success.
XalanDestroyCompiledStylesheet ( XalanCSSHandle  theCSSHandle,
XalanHandle  theXalanHandle 
)

Destroys a compiled stylesheet.

Parameters:
theCSSHandle The handle of the compiled stylesheet.
theXalanHandle The handle of XalanTransformer instance.
Returns:
0 for success
XalanDestroyParsedSource ( XalanPSHandle  thePSHandle,
XalanHandle  theXalanHandle 
)

Destroys a parsed source.

a file name, a stream or a root node.

Parameters:
thePSHandle The handle of parsed source
theXalanHandle The handle of XalanTransformer instance.
Returns:
0 for success
XalanFreeData ( char *  theData  ) 

Free memory allocated as a result of calling XalanTransformToData.

Parameters:
theData The address of character data.
XalanGetLastError ( XalanHandle  theXalanHandle  ) 

Returns the last error that occurred as a result of calling transform.

The signature for following function is really: const char* XalanGetLastError(XalanHandle theXalanHandle) const;

Returns:
error message const character pointer.
XalanInitialize ( void   ) 

Initialize Xerces and Xalan.

Should be called only once per process before making any other API calls.

Returns:
0 if successful, -1 if initialization fails.
XalanParseSource ( const char *  theXMLFileName,
XalanHandle  theXalanHandle,
XalanPSHandle thePSHandle 
)

Parse source document.

Parameters:
theXMLFileName The name of the file containing the source document
theXalanHandle The handle of XalanTransformer instance.
thePSHandle A pointer to a XalanPSHandle
Returns:
0 for success.
XalanParseSourceFromStream ( const char *  theXMLStream,
unsigned long  theXMLStreamLength,
XalanHandle  theXalanHandle,
XalanPSHandle thePSHandle 
)

Parse source document from a stream.

Parameters:
theXMLStream The stream that contains the source xml
theXSLStreamLength The length of the stream
theXalanHandle The handle of XalanTransformer instance
thePSHandle A pointer to a XalanPSHandle
Returns:
0 for success.
XalanSetStylesheetParam ( const char *  key,
const char *  expression,
XalanHandle  theXalanHandle 
)

Set a top-level stylesheet parameter.

This value can be evaluated via xsl:param-variable.

Parameters:
key The name of the param
expression The expression that will be evaluated
theXalanHandle The handle of XalanTransformer instance.
XalanSetStylesheetParamNodeset ( const char *  key,
XalanPSHandle  theNodeset,
XalanHandle  theXalanHandle 
)

Set a top-level stylesheet nodeset parameter.

This value can be evaluated via xsl:param-variable. The value is a parsed document.

Parameters:
key name of the param
theNodeset a preparsed document
theXalanHandle handle of the XalanTransformer instance.
XalanSetStylesheetParamNumber ( const char *  key,
double  theNumber,
XalanHandle  theXalanHandle 
)

Set a top-level stylesheet number parameter.

This value can be evaluated via xsl:param-variable. The value is a parsed document.

Parameters:
key name of the param
theNumber a double floating point number
theXalanHandle handle of the XalanTransformer instance.
XalanSetStylesheetParamUTF ( const XalanUTF16Char key,
const XalanUTF16Char expression,
XalanHandle  theXalanHandle 
)

Set a top-level stylesheet parameter.

This value can be evaluated via xsl:param-variable. The key and expression parameters must be encoded in UTF-16.

Parameters:
key name of the param
expression expression that will be evaluated
theXalanHandle handle of XalanTransformer instance.
XalanSetStylesheetParamUTFNodeset ( const XalanUTF16Char key,
XalanPSHandle  theNodeset,
XalanHandle  theXalanHandle 
)

Set a top-level stylesheet nodeset parameter.

This value can be evaluated via xsl:param-variable. The value is a parsed document. The key name is a UTF-16 string.

Parameters:
key name of the param
theNodeset a preparsed document
theXalanHandle handle of the XalanTransformer instance.
XalanSetStylesheetParamUTFNumber ( const XalanUTF16Char key,
double  theNumber,
XalanHandle  theXalanHandle 
)

Set a top-level stylesheet number parameter.

This value can be evaluated via xsl:param-variable. The value is a parsed document. The key name is a UTF-16 string.

Parameters:
key name of the param
theNumber a double floating point number
theXalanHandle handle of the XalanTransformer instance.
XalanTerminate ( int  fCleanUpICU  ) 

Terminate Xalan and Xerces.

Should be called only once per process after deleting all instances of XalanTransformer.

Once a process has called this function, it cannot use the API until another call to XalanInitialize has been made.

Optionally, if the ICU has been integrated, this will call the ICU clean up function. This must only be done if the ICU will no longer be used by the process, since the ICU will no longer be in a usable state. See the ICU documentation for more details.

This is handy when using leak-detection software, as all static data allocated by Xalan (and optionally, the ICU) will be freed.

Parameters:
fCleanUpICU If true, call the ICU clean up function.
XalanTransformToData ( const char *  theXMLFileName,
const char *  theXSLFileName,
char **  theOutput,
XalanHandle  theXalanHandle 
)

Transform the XML source tree to a dynamically allocated buffer.

The processor will apply the stylesheet file to the input file and assign the address of the dynamically allocated result to a user-supplied pointer. The user must call XalanFreeData with this pointer to free the memory.

Parameters:
theXMLFileName The file name of the XML document.
theXSLFileName The file name of the stylesheet XML document.
theOutput a pointer to a char*
theXalanHandle handle of XalanTransformer instance.
Returns:
0 for success
XalanTransformToDataPrebuilt ( XalanPSHandle  theParsedSource,
XalanCSSHandle  theCSSHandle,
char **  theOutput,
XalanHandle  theXalanHandle 
)

Transform the XML source tree to a dynamically-allocated buffer.

The processor will apply the compiled stylesheet to the input file and assign the address of the dynamically allocated result to a user supplied pointer. The user must call XalanFreeData with this pointer to free the memory.

Parameters:
theParsedSource The handle of a parsed source
theCSSHandle The handle of compiled stylesheet
theOutput a pointer to a char*
theXalanHandle handle of XalanTransformer instance.
Returns:
0 for success
XalanTransformToFile ( const char *  theXMLFileName,
const char *  theXSLFileName,
const char *  theOutFileName,
XalanHandle  theXalanHandle 
)

Transform the XML source tree to the given result file.

The processor will apply the stylesheet file to the input file and write the transformation result to a new output file.

Parameters:
theXMLFileName The file name of the XML document.
theXSLFileName The file name of the stylesheet XML document.
theOutFileName The file name for the output.
theXalanHandle The handle of a XalanTransformer instance.
Returns:
0 for success
XalanTransformToFilePrebuilt ( XalanPSHandle  theParsedSource,
XalanCSSHandle  theCSSHandle,
const char *  theOutFileName,
XalanHandle  theXalanHandle 
)

Transform the XML source tree to the given result file.

The processor will apply the compiled stylesheet to the input file and write the transformation result to a new output file.

Parameters:
theParsedSource The handle of a parsed source
theCSSHandle The handle of a compiled stylesheet
theOutFileName The file name for the output.
theXalanHandle The handle of a XalanTransformer instance.
Returns:
0 for success
XalanTransformToHandler ( const char *  theXMLFileName,
const char *  theXSLFileName,
XalanHandle  theXalanHandle,
void *  theOutputHandle,
XalanOutputHandlerType  theOutputHandler,
XalanFlushHandlerType  theFlushHandler 
)

Transform the XML source tree to a callback function.

The processor will apply the stylesheet file to the input file and allocate the transformation result to a callback function in pre-allocated blocks. Once the transformation is complete, a second callback, to flush the buffer, is called. You can pass in NULL if you do not wish to implement a flush callback. Xalan will release any memory allocated upon termination, and data passed to the callback is not guaranteed to be null terminated.

See XalanTransformerDefinitions.hpp for more details.

Parameters:
theXMLFileName The file name of XML input source
theXSLFileName The file name of stylesheet source
theXalanHandle The handle of a XalanTransformer instance.
theOutputHandle A void pointer passed through to callback.
theOutputHandler A user-defined callback function pointer.
theFlushHandler A user-defined callback function pointer, which can be null.
Returns:
0 for success
XalanTransformToHandlerPrebuilt ( XalanPSHandle  thePSHandle,
XalanCSSHandle  theCSSHandle,
XalanHandle  theXalanHandle,
void *  theOutputHandle,
XalanOutputHandlerType  theOutputHandler,
XalanFlushHandlerType  theFlushHandler 
)

Transform the XML source tree to a callback function.

The processor will apply the compiled stylesheet to the input file and allocate the transformation result to a callback function in pre-allocated blocks. Once the transformation is complete, a second callback, to flush the buffer, is called. You can pass in NULL if you do not wish to implement a flush callback. Xalan will release any memory allocated upon termination, and data passed to the callback is not guaranteed to be null terminated.

See XalanTransformerDefinitions.hpp for more details.

Parameters:
thePSHandle The handle of parsed source
theCSSHandle The handle of compiled stylesheet
theXalanHandle The handle of XalanTransformer instance.
theOutputHandle A void pointer passed through to callback.
theOutputHandler A user-defined callback function pointer.
theFlushHandler A user-defined callback function pointer, which can be null.
Returns:
0 for success

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

Xalan-C++ XSLT Processor Version 1.11
Copyright © 1999-2012 The Apache Software Foundation.
All Rights Reserved.

Apache Logo