
It's the responsibility of the implementation of the XSLTProcessor interface, collaborating with a XMLParserLiaison, the DOM, and the XPath engine, to transform a source tree of nodes into a result tree according to instructions and templates specified by a stylesheet tree. The methods process(...) are the primary public entry points.
If you reuse the processor instance, you should call reset() between calls.
| typedef size_t XSLTProcessor::size_type |
| XSLTProcessor::XSLTProcessor | ( | ) |
| virtual XSLTProcessor::~XSLTProcessor | ( | ) | [virtual] |
| virtual void XSLTProcessor::process | ( | const XSLTInputSource & | inputSource, | |
| const XSLTInputSource & | stylesheetSource, | |||
| XSLTResultTarget & | outputTarget, | |||
| StylesheetConstructionContext & | constructionContext, | |||
| StylesheetExecutionContext & | executionContext | |||
| ) | [pure virtual] |
Transform the source tree to the output in the given result tree target.
The processor will process the input source, the stylesheet source, and transform to the output target.
| inputSource | input source | |
| stylesheetSource | stylesheet source | |
| outputTarget | output source tree | |
| constructionContext | context for construction of objects | |
| executionContext | current execution context |
| XSLProcessorException |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::process | ( | const XSLTInputSource & | inputSource, | |
| XSLTResultTarget & | outputTarget, | |||
| StylesheetExecutionContext & | executionContext | |||
| ) | [pure virtual] |
Transform the source tree to the output in the given result tree target.
This function does not create a stylesheet tree, it assumes the provided StylesheetExecutionContext has the stylesheet tree to use. This is set by calling StylesheetExecutionContext::setStylesheetRoot().
| inputSource | input source | |
| outputTarget | output source tree | |
| executionContext | current execution context |
| XSLProcessorException |
Implemented in XSLTEngineImpl.
| virtual StylesheetRoot* XSLTProcessor::processStylesheet | ( | const XSLTInputSource & | stylesheetSource, | |
| StylesheetConstructionContext & | constructionContext | |||
| ) | [pure virtual] |
Given a stylesheet input source, compile the stylesheet into an internal representation.
| stylesheetSource | input source for the stylesheet | |
| constructionContext | context for construction of objects |
| XSLProcessorException |
Implemented in XSLTEngineImpl.
| virtual StylesheetRoot* XSLTProcessor::processStylesheet | ( | const XalanDOMString & | xsldocURLString, | |
| StylesheetConstructionContext & | constructionContext | |||
| ) | [pure virtual] |
Given a URI to an XSL stylesheet, compile the stylesheet into an internal representation.
| xmldocURLString | URI to the input XML document | |
| constructionContext | context for construction of objects |
| XSLProcessorException |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::reset | ( | ) | [pure virtual] |
Reset the state.
This needs to be called after a process() call is invoked, if the processor is to be used again.
Implemented in XSLTEngineImpl.
| virtual XalanNode* XSLTProcessor::getSourceTreeFromInput | ( | const XSLTInputSource & | inputSource | ) | [pure virtual] |
Given an input source, get the source tree.
| inputSource | pointer to input source |
Implemented in XSLTEngineImpl.
| virtual const StylesheetRoot* XSLTProcessor::getStylesheetRoot | ( | ) | const [pure virtual] |
| virtual void XSLTProcessor::setStylesheetRoot | ( | const StylesheetRoot * | theStylesheet | ) | [pure virtual] |
Set the root stylesheet.
| theStylesheet | pointer to new root stylesheet |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::setExecutionContext | ( | StylesheetExecutionContext * | theExecutionContext | ) | [pure virtual] |
Set the execution context.
Must be set if after calling setStylesheetRoot.
| theExecutionContext | pointer to new execution context. |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::resolveTopLevelParams | ( | StylesheetExecutionContext & | executionContext | ) | [pure virtual] |
| virtual XMLParserLiaison& XSLTProcessor::getXMLParserLiaison | ( | ) | const [pure virtual] |
Get the XML Parser Liaison that this processor uses.
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::getUniqueNamespaceValue | ( | XalanDOMString & | theValue | ) | [pure virtual] |
Generate a random namespace prefix guaranteed to be unique.
| theValue | A string for returning the new prefix |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::setStylesheetParam | ( | const XalanDOMString & | key, | |
| XObjectPtr | value | |||
| ) | [pure virtual] |
Push a top-level stylesheet parameter.
This value can be evaluated via xsl:param-variable.
| key | name of the parameter | |
| value | XObject value for parameter |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::setStylesheetParam | ( | const XalanDOMString & | key, | |
| const XalanDOMString & | expression | |||
| ) | [pure virtual] |
Push a top-level stylesheet parameter.
This value can be evaluated via xsl:param-variable.
| key | name of the param | |
| expression | expression that will be evaluated |
Implemented in XSLTEngineImpl.
| virtual FormatterListener* XSLTProcessor::getFormatterListener | ( | ) | const [pure virtual] |
Get the current formatter listener.
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::setFormatterListener | ( | FormatterListener * | flistener | ) | [pure virtual] |
Set the current formatter listener.
| flistener | pointer to new formatter listener |
Implemented in XSLTEngineImpl.
| virtual size_type XSLTProcessor::getTraceListeners | ( | ) | const [pure virtual] |
| virtual void XSLTProcessor::addTraceListener | ( | TraceListener * | tl | ) | [pure virtual] |
Add a trace listener for the purposes of debugging and diagnosis.
| tl | pointer to listener to add |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::removeTraceListener | ( | TraceListener * | tl | ) | [pure virtual] |
Remove a trace listener.
| tl | Trace listener to be removed. |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::fireGenerateEvent | ( | const GenerateEvent & | ge | ) | [pure virtual] |
| virtual void XSLTProcessor::fireTraceEvent | ( | const TracerEvent & | te | ) | [pure virtual] |
| virtual void XSLTProcessor::fireSelectEvent | ( | const SelectionEvent & | se | ) | [pure virtual] |
| virtual bool XSLTProcessor::getTraceSelects | ( | ) | const [pure virtual] |
If this is set to true, simple traces of template calls are made.
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::traceSelect | ( | StylesheetExecutionContext & | executionContext, | |
| const ElemTemplateElement & | theStylesheetElement, | |||
| const NodeRefListBase & | nl, | |||
| const XPath * | xpath | |||
| ) | const [pure virtual] |
Compose a diagnostic trace of the current selection.
| executionContext | The current execution context | |
| theStylesheetElement | The executing stylesheet element | |
| nl | The list of selected nodes | |
| xpath | A pointer to the XPath which generated the list of nodes, if any. |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::setQuietConflictWarnings | ( | bool | b | ) | [pure virtual] |
If the quietConflictWarnings property is set to true, warnings about pattern conflicts won't be printed to the diagnostics stream.
True by default.
| b | true if conflict warnings should be suppressed. |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::setDiagnosticsOutput | ( | PrintWriter * | pw | ) | [pure virtual] |
If this is set, diagnostics will be written to the m_diagnosticsPrintWriter stream.
If the value is null, then diagnostics will be turned off.
| pw | pointer to print writer |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::message | ( | const XalanDOMString & | msg, | |
| const XalanNode * | sourceNode = 0, |
|||
| const ElemTemplateElement * | styleNode = 0 | |||
| ) | const [pure virtual] |
Report a message.
| msg | text of message to output | |
| sourceNode | node in source where message occurred | |
| styleNode | node in stylesheet where message occurred |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::message | ( | const XalanDOMString & | msg, | |
| const LocatorType & | locator, | |||
| const XalanNode * | sourceNode = 0 | |||
| ) | const [pure virtual] |
Report a message.
| msg | text of message to output | |
| locator | A LocatorType for error reporting | |
| sourceNode | node in source where message occurred |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::warn | ( | const XalanDOMString & | msg, | |
| const XalanNode * | sourceNode = 0, |
|||
| const ElemTemplateElement * | styleNode = 0 | |||
| ) | const [pure virtual] |
Report a warning.
| msg | text of message to output | |
| sourceNode | node in source where warning occurred | |
| styleNode | node in stylesheet where warning occurred |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::warn | ( | const XalanDOMString & | msg, | |
| const LocatorType & | locator, | |||
| const XalanNode * | sourceNode = 0 | |||
| ) | const [pure virtual] |
Report a warning.
| msg | text of message to output | |
| locator | A LocatorType for error reporting | |
| sourceNode | node in source where error occurred |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::error | ( | const XalanDOMString & | msg, | |
| const XalanNode * | sourceNode = 0, |
|||
| const ElemTemplateElement * | styleNode = 0 | |||
| ) | const [pure virtual] |
Report an error and throw an exception.
| msg | text of message to output | |
| sourceNode | node in source where error occurred | |
| styleNode | node in stylesheet where error occurred |
Implemented in XSLTEngineImpl.
| virtual void XSLTProcessor::error | ( | const XalanDOMString & | msg, | |
| const LocatorType & | locator, | |||
| const XalanNode * | sourceNode = 0 | |||
| ) | const [pure virtual] |
Report an error and throw an exception.
| msg | text of message to output | |
| locator | A LocatorType for error reporting | |
| sourceNode | node in source where error occurred |
Implemented in XSLTEngineImpl.
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
|
Xalan-C++ XSLT Processor Version 1.10 |
|
|