Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

Typedefs | Functions
XalanCAPI.h File Reference

Go to the source code of this file.

Typedefs

typedef void * XalanHandle
 This is a simple C interface for the class XalanTransformer. More...
 
typedef const void * XalanCSSHandle
 Handle used to store the address of Compiled Stylesheet instance. More...
 
typedef const void * XalanPSHandle
 Handle used to store the address of Parsed Source instance. More...
 
typedef const char * XalanCCharPtr
 This is a typedef to work around limitations with the XALAN_TRANSFORMER_EXPORT_FUNCTION macro. More...
 
typedef unsigned short XalanUTF16Char
 This is a typedef for characters encoded in UTF-16. More...
 

Functions

 XalanInitialize (void)
 Initialize Xerces and Xalan. More...
 
 XalanTerminate (int fCleanUpICU)
 Terminate Xalan and Xerces. More...
 
 CreateXalanTransformer ()
 Create a XalanTransformer instance. More...
 
 DeleteXalanTransformer (XalanHandle theXalanHandle)
 Delete a XalanTransformer instance. More...
 
 XalanTransformToFile (const char *theXMLFileName, const char *theXSLFileName, const char *theOutFileName, XalanHandle theXalanHandle)
 Transform the XML source tree to the given result file. More...
 
 XalanTransformToFilePrebuilt (XalanPSHandle theParsedSource, XalanCSSHandle theCSSHandle, const char *theOutFileName, XalanHandle theXalanHandle)
 Transform the XML source tree to the given result file. More...
 
 XalanTransformToData (const char *theXMLFileName, const char *theXSLFileName, char **theOutput, XalanHandle theXalanHandle)
 Transform the XML source tree to a dynamically allocated buffer. More...
 
 XalanTransformToDataPrebuilt (XalanPSHandle theParsedSource, XalanCSSHandle theCSSHandle, char **theOutput, XalanHandle theXalanHandle)
 Transform the XML source tree to a dynamically allocated buffer. More...
 
 XalanFreeData (char *theData)
 Free memory allocated as a result of calling XalanTransformToData. More...
 
 XalanTransformToHandler (const char *theXMLFileName, const char *theXSLFileName, XalanHandle theXalanHandle, void *theOutputHandle, XalanOutputHandlerType theOutputHandler, XalanFlushHandlerType theFlushHandler)
 Transform the XML source tree to a callback function. More...
 
 XalanTransformToHandlerPrebuilt (XalanPSHandle thePSHandle, XalanCSSHandle theCSSHandle, XalanHandle theXalanHandle, void *theOutputHandle, XalanOutputHandlerType theOutputHandler, XalanFlushHandlerType theFlushHandler)
 Transform the XML source tree to a callback function. More...
 
 XalanCompileStylesheet (const char *theXSLFileName, XalanHandle theXalanHandle, XalanCSSHandle *theCSSHandle)
 Creates a compiled stylesheet. More...
 
 XalanCompileStylesheetFromStream (const char *theXSLStream, unsigned long theXSLStreamLength, XalanHandle theXalanHandle, XalanCSSHandle *theCSSHandle)
 Creates a compiled stylesheet. More...
 
 XalanDestroyCompiledStylesheet (XalanCSSHandle theCSSHandle, XalanHandle theXalanHandle)
 Destroys a compiled stylesheet. More...
 
 XalanParseSource (const char *theXMLFileName, XalanHandle theXalanHandle, XalanPSHandle *thePSHandle)
 Parse source document. More...
 
 XalanParseSourceFromStream (const char *theXMLStream, unsigned long theXMLStreamLength, XalanHandle theXalanHandle, XalanPSHandle *thePSHandle)
 Parse source document from a stream. More...
 
 XalanDestroyParsedSource (XalanPSHandle thePSHandle, XalanHandle theXalanHandle)
 Destroys a parsed source. More...
 
 XalanSetStylesheetParam (const char *key, const char *expression, XalanHandle theXalanHandle)
 Set a top-level stylesheet parameter. More...
 
 XalanSetStylesheetParamUTF (const XalanUTF16Char *key, const XalanUTF16Char *expression, XalanHandle theXalanHandle)
 Set a top-level stylesheet parameter. More...
 
 XalanGetLastError (XalanHandle theXalanHandle)
 Returns the last error that occurred as a result of calling transform. More...
 

Typedef Documentation

typedef const char* XalanCCharPtr

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

typedef const void* XalanCSSHandle

Handle used to store the address of Compiled Stylesheet instance.

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.

typedef const void* XalanPSHandle

Handle used to store the address of Parsed Source instance.

typedef unsigned short XalanUTF16Char

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

Function Documentation

CreateXalanTransformer ( )

Create a XalanTransformer instance.

Returns
the XalanTransformer handle
DeleteXalanTransformer ( XalanHandle  theXalanHandle)

Delete a XalanTransformer instance.

Parameters
theXalanHandleThe XalanTransformer to destroy.
XalanCompileStylesheet ( const char *  theXSLFileName,
XalanHandle  theXalanHandle,
XalanCSSHandle theCSSHandle 
)

Creates a compiled stylesheet.

Parameters
theXSLFileNamefilename of stylesheet source
theXalanHandlehandle of XalanTransformer instance.
theCSSHandlea pointer to a XalanCSSHandle
Returns
0 for success.
XalanCompileStylesheetFromStream ( const char *  theXSLStream,
unsigned long  theXSLStreamLength,
XalanHandle  theXalanHandle,
XalanCSSHandle theCSSHandle 
)

Creates a compiled stylesheet.

Parameters
theXSLFileNameThe stream that contains the stylesheet xml
theXSLStreamLengthThe length of the stream.
theXalanHandlehandle of XalanTransformer instance.
theCSSHandlea pointer to a XalanCSSHandle
Returns
0 for success.
XalanDestroyCompiledStylesheet ( XalanCSSHandle  theCSSHandle,
XalanHandle  theXalanHandle 
)

Destroys a compiled stylesheet.

Parameters
theCSSHandlehandle of the compiled stylesheet
theXalanHandlehandle 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
thePSHandlehandle of parsed source
theXalanHandlehandle of XalanTransformer instance.
Returns
0 for success
XalanFreeData ( char *  theData)

Free memory allocated as a result of calling XalanTransformToData.

Parameters
theDataThe 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
theXMLFileNameThe name of the file containing the source document.
theXalanHandleThe handle of XalanTransformer instance.
thePSHandleA 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
theXMLStreamThe stream that contains the source xml
theXSLStreamLengthThe length of the stream.
theXalanHandleThe handle of XalanTransformer instance.
thePSHandleA 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
keyname of the param
expressionexpression that will be evaluated
theXalanHandlehandle of 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
keyname of the param
expressionexpression that will be evaluated
theXalanHandlehandle of 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
fCleanUpICUIf 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 the this pointer.

Parameters
theXMLFileNamefilename of XML input source
theXSLFileNamefilename of stylesheet source
theOutputa pointer to a char*
theXalanHandlehandle 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 the this pointer.

Parameters
theXMLFileNamefilename of XML input source
theCSSHandlehandle of compiled stylesheet
theOutputa pointer to a char*
theXalanHandlehandle 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
theXMLFileNamefilename of XML input source
theXSLFileNamefilename of stylesheet source
theOutFileNamefilename of output source
theXalanHandlehandle of 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
theParsedSourcehandle of parsed source
theCSSHandlehandle of compiled stylesheet
theOutFileNamefilename of output source
theXalanHandlehandle of 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
theXMLFileNamefilename of XML input source
theXSLFileNamefilename of stylesheet source
theXalanHandlehandle of XalanTransformer instance.
theOutputHandlevoid pointer passed through to callback.
theOutputHandlera user defined (callback) function.
theFlushHandler(can be NULL) a user defined (callback) function.
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
thePSHandlehandle of parsed source
theCSSHandlehandle of compiled stylesheet
theXalanHandlehandle of XalanTransformer instance.
theOutputHandlevoid pointer passed through to callback.
theOutputHandlera user defined (callback) function.
theFlushHandler(can be NULL) a user defined (callback) function.
Returns
0 for success

Interpreting class diagrams

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

dot

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

Apache Logo