Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
virtual P6R::P6ERR P6R::p6IXSLT::transformWithDOM ( p6IDataStream pTransformResult,
p6IDOMXML pDOMTree 
)
pure virtual

The caller must first call the compileTempates() method with a valid XSLT stylesheet.

This function is different from the startTransform() and continueTransform() functions above because it takes the source document as a DOM Tree object instead of a set of buffers.

The compiled XSL templates can be reused over multiple sets of XML (or JSON). Thus this function can be called multiple times with different XML (or JSON) input documents. If a different output data stream is used each time (i.e., pTransformResult parameter) a separate result will be generated on each call. So for example, the following call sequences are possible with the same p6IXSLT component:

* compileTemplates( XSL template1 )...
* startTransform( pDOM Obj )
*
Parameters
pTransformResult[ in ] Created by caller, the output of the transformation process is written to this stream.
pDOMTree[ in ] A DOM tree from an XML or JSON source document
Returns
SuccessP6R::eOk 
FailureP6R::eNotInitializedA successful call to intialize() must be made before calling this funciton.
P6R::eInvalidArgpTransforResult, pErrorResult, or pBuffer is NULL.
P6R::eInvalidStateThere are no compiled templates. A successful call to compileTemplates() must be done before calling this function.