Xalan-C++ API Documentation

The Xalan C++ XSL Transformer Version 1.1

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

StylesheetExecutionContextDefault Class Reference

#include <StylesheetExecutionContextDefault.hpp>

Inheritance diagram for StylesheetExecutionContextDefault

Inheritance graph

[legend]
Collaboration diagram for StylesheetExecutionContextDefault:

Collaboration graph

[legend]
List of all members.

Public Types

Public Methods

Static Public Methods


Member Typedef Documentation

typedef std::deque<const ElemTemplateElement*> StylesheetExecutionContextDefault::ElementRecursionStackType
 

typedef std::set<FormatterListener*> StylesheetExecutionContextDefault::FormatterListenerSetType
 

typedef std::set<const KeyDeclaration*> StylesheetExecutionContextDefault::KeyDeclarationSetType
 

typedef Stylesheet::KeyTablesTableType StylesheetExecutionContextDefault::KeyTablesTableType
 

typedef std::set<XalanOutputStream*> StylesheetExecutionContextDefault::OutputStreamSetType
 

typedef VariablesStack::ParamsVectorType StylesheetExecutionContextDefault::ParamsVectorType
 

typedef std::set<PrintWriter*> StylesheetExecutionContextDefault::PrintWriterSetType
 

typedef std::pair<const XPath*, clock_t> StylesheetExecutionContextDefault::XPathCacheEntry
 

typedef std::map<XalanDOMString, XPathCacheEntry> StylesheetExecutionContextDefault::XPathCacheMapType
 


Constructor & Destructor Documentation

StylesheetExecutionContextDefault::StylesheetExecutionContextDefault ( XSLTEngineImpl & xsltProcessor,
XPathEnvSupport & theXPathEnvSupport,
DOMSupport & theDOMSupport,
XObjectFactory & theXObjectFactory,
XalanNode * theCurrentNode = 0,
const NodeRefListBase * theContextNodeList = 0,
const PrefixResolver * thePrefixResolver = 0 )
 

Construct a StylesheetExecutionContextDefault object.

Parameters:
theXPathEnvSupport   XPath environment support class instance
theDOMSupport   DOMSupport class instance
theXobjectFactory   factory class instance for XObjects
theCurrentNode   current node in the source tree
theContextNodeList   node list for current context
thePrefixResolver   pointer to prefix resolver to use

virtual StylesheetExecutionContextDefault::~StylesheetExecutionContextDefault ( ) [virtual]
 


Member Function Documentation

virtual void StylesheetExecutionContextDefault::addResultAttribute ( const XalanDOMString & aname,
const XalanDOMString & value ) [virtual]
 

Add a result attribute to the list of pending attributes.

Parameters:
aname   name of attribute
value   value of attribute

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::associateXLocatorToNode ( const XalanNode * node,
XLocator * xlocator ) [virtual]
 

Associate an XLocator provider to a node.

This makes the association based on the root of the tree that is the node's parent.

Parameters:
node   node for association
xlocator   locator to associate with node

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::beginConstruction ( const KeyDeclaration & keyDeclaration ) [virtual]
 

Add KeyDeclaration to construction list.

Parameters:
KeyDeclaration   being constructed

Reimplemented from StylesheetExecutionContext.

virtual MutableNodeRefList* StylesheetExecutionContextDefault::borrowMutableNodeRefList ( ) [virtual]
 

Borrow a cached MutableNodeRefList instance.

Returns:
A pointer to the instance.

Reimplemented from StylesheetExecutionContext.

virtual ResultTreeFragBase* StylesheetExecutionContextDefault::borrowResultTreeFrag ( ) [virtual]
 

Borrow a cached ResultTreeFragBase instance.

Returns:
A pointer to the instance.

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::characters ( const XalanDOMChar * ch,
unsigned int start,
unsigned int length ) [virtual]
 

Receive notification of character data.

The Parser will call this method to report each chunk of character data. SAX parsers may return all contiguous character data in a single chunk, or they may split it into several chunks; however, all of the characters in any single event must come from the same external entity, so that the Locator provides useful information.

The application must not attempt to read from the array outside of the specified range.

Note that some parsers will report whitespace using the ignorableWhitespace() method rather than this one (validating parsers must do so).

Parameters:
ch   pointer to characters from the XML document
start   start position in the array
length   number of characters to read from the array
Exceptions:
SAXException  

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::charactersRaw ( const XalanDOMChar * ch,
unsigned int start,
unsigned int length ) [virtual]
 

Receive notification of character data.

If available, when the disable-output-escaping attribute is used, output raw text without escaping.

Parameters:
ch   pointer to characters from the XML document
start   start position in the array
length   number of characters to read from the array
Exceptions:
SAXException  

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::clearTopLevelParams ( ) [virtual]
 

Reset the vector of top level parameters.

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::cloneToResultTree ( XalanNode & node,
bool isLiteral,
bool overrideStrip,
bool shouldCloneAttributes ) [virtual]
 

Clone an element with or without children.

Parameters:
node   node to clone
isLiteral   true if a literal element
overrideStrip   false if white space stripping should be done
shouldCloneAttributes   true if attributes should be cloned

Reimplemented from StylesheetExecutionContext.

virtual int StylesheetExecutionContextDefault::collationCompare ( const XalanDOMChar * theLHS,
const XalanDOMChar * theRHS ) [virtual]
 

Compare two strings using the collation of the current locale.

Parameters:
theLHS   a string to compare
theRHS   a string to compare
Returns:
< 0 if theLHS is before theRHS, 0 if they are equal, or > 0 if theLHS is after theRHS

Reimplemented from StylesheetExecutionContext.

virtual int StylesheetExecutionContextDefault::collationCompare ( const XalanDOMString & theLHS,
const XalanDOMString & theRHS ) [virtual]
 

Compare two strings using the collation of the current locale.

Parameters:
theLHS   a string to compare
theRHS   a string to compare
Returns:
< 0 if theLHS is before theRHS, 0 if they are equal, or > 0 if theLHS is after theRHS

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::comment ( const XalanDOMChar * data ) [virtual]
 

Called when a Comment is to be constructed.

Parameters:
data   pointer to comment data
Exceptions:
SAXException  

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::copyNamespaceAttributes ( const XalanNode & src ) [virtual]
 

Add namespace attributes for a node to the list of pending attributes.

Parameters:
src   source node

Reimplemented from StylesheetExecutionContext.

virtual XalanDocument* StylesheetExecutionContextDefault::createDocument ( ) const [virtual]
 

Create a new empty document.

Returns:
new document

Reimplemented from StylesheetExecutionContext.

virtual FormatterToDOM* StylesheetExecutionContextDefault::createFormatterToDOM ( XalanDocument * doc,
XalanElement * elem ) [virtual]
 

Construct a FormatterToDOM instance.

it will add the DOM nodes to the document fragment.

Parameters:
doc   document for nodes
docFrag   document fragment for nodes, default none
currentElement   current element for nodes, default none

Reimplemented from StylesheetExecutionContext.

virtual FormatterToDOM* StylesheetExecutionContextDefault::createFormatterToDOM ( XalanDocument * doc,
XalanDocumentFragment * docFrag,
XalanElement * currentElement ) [virtual]
 

Construct a FormatterToDOM instance.

it will add the DOM nodes to the document fragment.

Parameters:
doc   document for nodes
docFrag   document fragment for nodes, default none
currentElement   current element for nodes, default none

Reimplemented from StylesheetExecutionContext.

virtual FormatterToHTML* StylesheetExecutionContextDefault::createFormatterToHTML ( Writer & writer,
const XalanDOMString & encoding = XalanDOMString(),
const XalanDOMString & mediaType = XalanDOMString(),
const XalanDOMString & doctypeSystem = XalanDOMString(),
const XalanDOMString & doctypePublic = XalanDOMString(),
bool doIndent = true,
int indent = 4,
const XalanDOMString & version = XalanDOMString(),
const XalanDOMString & standalone = XalanDOMString(),
bool xmlDecl = false ) [virtual]
 

Create a new FormatterToHTML instance.

The execution context owns the instance and will delete it when reset.

Parameters:
writer   character output stream to use
encoding   character encoding for the writer
mediaType   media type (MIME content type) of the data
doctypeSystem   system identifier to be used in the document type declaration
doctypePublic   public identifier to be used in the document type declaration
doIndent   true if output is to be indented
indent   number of spaces to indent at each nesting level
version   version of the output method
standalone   true if the XSLT processor should output a standalone document declaration
xmlDecl   true if the XSLT processor should output an XML declaration
Returns:
a pointer to the new instance.

Reimplemented from StylesheetExecutionContext.

virtual FormatterToText* StylesheetExecutionContextDefault::createFormatterToText ( Writer & writer,
const XalanDOMString & encoding ) [virtual]
 

FormatterToText instance constructor.

Parameters:
writer   writer for output
encoding   character encoding for the writer

Reimplemented from StylesheetExecutionContext.

virtual FormatterToXML* StylesheetExecutionContextDefault::createFormatterToXML ( Writer & writer,
const XalanDOMString & version = XalanDOMString(),
bool doIndent = false,
int indent = 0,
const XalanDOMString & encoding = XalanDOMString(),
const XalanDOMString & mediaType = XalanDOMString(),
const XalanDOMString & doctypeSystem = XalanDOMString(),
const XalanDOMString & doctypePublic = XalanDOMString(),
bool xmlDecl = true,
const XalanDOMString & standalone = XalanDOMString() ) [virtual]
 

Create a new FormatterToXML instance.

The execution context owns the instance and will delete it when reset.

Parameters:
writer   character output stream to use
version   version of the output method
doIndent   true if output is to be indented
indent   number of spaces to indent at each nesting level
encoding   character encoding for the writer
mediaType   media type (MIME content type) of the data
doctypeSystem   system identifier to be used in the document type declaration
doctypePublic   public identifier to be used in the document type declaration
xmlDecl   true if the XSLT processor should output an XML declaration
standalone   true if the XSLT processor should output a standalone document declaration
Returns:
a pointer to the new instance.

Reimplemented from StylesheetExecutionContext.

virtual const XPath* StylesheetExecutionContextDefault::createMatchPattern ( const XalanDOMString & str,
const PrefixResolver & resolver ) [virtual]
 

Create and initialize an xpath and return it.

This is to be used to create an XPath that is only used during execution.

Parameters:
str   string expression for XPath evaluation
resolver   resolver for namespace resolution
Returns:
pointer to resulting XPath

Reimplemented from StylesheetExecutionContext.

virtual MutableNodeRefList* StylesheetExecutionContextDefault::createMutableNodeRefList ( ) const [virtual]
 

Create a MutableNodeRefList with the appropriate context.

Returns:
pointer to node list created

Reimplemented from StylesheetExecutionContext.

virtual XObjectPtr StylesheetExecutionContextDefault::createNodeSet ( XalanNode & theNode ) [virtual]
 

Convenience function for creating a node set with the supplied node as the only member.

Parameters:
node   The node queried
Returns:
a pointer to the XObject instance.

Reimplemented from StylesheetExecutionContext.

virtual PrintWriter* StylesheetExecutionContextDefault::createPrintWriter ( std::ostream & theStream ) [virtual]
 

Create a PrintWriter using the provided ostream instance.

Parameters:
ostream   The output stream for the PrintWriter.
Returns:
The new instance.

Reimplemented from StylesheetExecutionContext.

virtual PrintWriter* StylesheetExecutionContextDefault::createPrintWriter ( const XalanDOMString & theFileName,
const XalanDOMString & theEncoding ) [virtual]
 

Create a PrintWriter.

Create an appropriate output stream using the provided file name and encoding.

Parameters:
theFileName   The file name for the output stream
theEncoding   The encoding for the output stream
Returns:
The new instance.

Reimplemented from StylesheetExecutionContext.

virtual PrintWriter* StylesheetExecutionContextDefault::createPrintWriter ( XalanOutputStream * theTextOutputStream ) [virtual]
 

Create a PrintWriter for the provided stream.

Parameters:
theTextOutputStream   The output stream for the PrintWriter.
Returns:
The new instance.

Reimplemented from StylesheetExecutionContext.

virtual const XObjectPtr StylesheetExecutionContextDefault::createVariable ( const ElemTemplateElement * element,
const ElemTemplateElement & templateChild,
XalanNode * sourceTree,
XalanNode * sourceNode,
const QName & mode ) [virtual]
 

Create an ResultTreeFragment as a variable and push it on to the stack with the current context.

Parameters:
name   name of variable
element   element marker for variable
templateChild   result tree fragment to use.
sourceTree   node for source tree
sourceNode   source node
Returns:
a pointer to the XObject result

Reimplemented from StylesheetExecutionContext.

virtual const XObjectPtr StylesheetExecutionContextDefault::createVariable ( const ElemTemplateElement * element,
const XPath & xpath,
XalanNode * contextNode,
const PrefixResolver & resolver ) [virtual]
 

Execute the supplied XPath and and create a variable in the current context.

Parameters:
element   element marker for variable
str   string expression for XPath evaluation
contextNode   current node in the source tree
resolver   resolver for namespace resolution
Returns:
a pointer to the XObject result

Reimplemented from StylesheetExecutionContext.

virtual const XObjectPtr StylesheetExecutionContextDefault::createXResultTreeFrag ( const ElemTemplateElement & templateChild,
XalanNode * sourceTree,
XalanNode * sourceNode,
const QName & mode ) [virtual]
 

Create an XObject that represents a Result tree fragment.

Parameters:
templateChild   result tree fragment to use.
sourceTree   node for source tree
sourceNode   source node
mode   current mode
Returns:
XObject instance

Reimplemented from StylesheetExecutionContext.

virtual const XObjectPtr StylesheetExecutionContextDefault::createXResultTreeFrag ( const ElemTemplateElement & templateChild,
XalanNode * sourceTree,
XalanNode * sourceNode ) [virtual]
 

Create an XObject that represents a Result tree fragment.

Parameters:
templateChild   result tree fragment to use.
sourceTree   node for source tree
sourceNode   source node
Returns:
XObject instance

Reimplemented from StylesheetExecutionContext.

virtual XalanNumberFormatAutoPtr StylesheetExecutionContextDefault::createXalanNumberFormat ( ) [virtual]
 

Create a new XalanNumberFormat instance.

Returns:
an XalanNumberFormatAutoPtr that owns a new XalanNumberFormat instance.

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::diag ( const XalanDOMString & theString ) [virtual]
 

Print a diagnostics string to the output device.

Parameters:
theString   string to print

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::displayDuration ( const XalanDOMString & theMessage,
const void * theKey ) [virtual]
 

Display the duration since pushTime was called.

Parameters:
theMessage   message to display
theKey   key for which duration is displayed

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::doDiagnosticsOutput ( ) const [virtual]
 

Whether diagnostic output is to be generated.

Returns:
true for diagnostics output

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::elementAvailable ( const XalanDOMString & theNamespace,
const XalanDOMString & elementName ) const [virtual]
 

Determine if an external element is available.

Parameters:
theNamespace   namespace for the element
elementName   name of extension element
Returns:
whether the given element is available or not

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::endConstruction ( const KeyDeclaration & keyDeclaration ) [virtual]
 

Remove KeyDeclaration from construction list.

Parameters:
constructed   KeyDeclaration

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::endDocument ( ) [virtual]
 

Receive notification of the end of a document.

The SAX parser will invoke this method only once, and it will be the last method invoked during the parse. The parser shall not invoke this method until it has either abandoned parsing (because of an unrecoverable error) or reached the end of input.

Exceptions:
SAXException  

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::endElement ( const XalanDOMChar * name ) [virtual]
 

Receive notification of the end of an element.

The SAX parser will invoke this method at the end of every element in the XML document; there will be a corresponding startElement() event for every endElement() event (even when the element is empty).

If the element name has a namespace prefix, the prefix will still be attached to the name.

Parameters:
name   element type name
Exceptions:
SAXException  

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::error ( const char * msg,
const XalanNode * sourceNode = 0,
const XalanNode * styleNode = 0 ) const [virtual]
 

Tell the user of an error, and probably throw an exception.

Parameters:
msg   text of message to output
sourceNode   node in source where error occurred
styleNode   node in stylesheet where error occurred

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::error ( const XalanDOMString & msg,
const XalanNode * sourceNode = 0,
const XalanNode * styleNode = 0 ) const [virtual]
 

Tell the user of an error, and probably throw an exception.

Parameters:
msg   text of message to output
sourceNode   node in source where error occurred
styleNode   node in stylesheet where error occurred

Reimplemented from StylesheetExecutionContext.

virtual const XalanDOMString StylesheetExecutionContextDefault::evaluateAttrVal ( XalanNode * contextNode,
const PrefixResolver & namespaceContext,
const XalanDOMString & stringedValue ) [virtual]
 

Evaluate the value of an attribute within the context of a specified context node and namespace.

Parameters:
contextNode   current context node
namespaceContext   context for namespace resolution
stringedValue   value to evaluate

Reimplemented from StylesheetExecutionContext.

virtual const XObjectPtr StylesheetExecutionContextDefault::executeXPath ( const XalanDOMString & str,
XalanNode * contextNode,
const XalanElement & resolver ) [virtual]
 

Execute an XPath and return the resulting XObject.

The lifetime of this XObject is not necessarily that of the Stylesheet.

Parameters:
str   string expression for XPath evaluation
contextNode   current node in the source tree
resolver   resolver for namespace resolution
Returns:
pointer to resulting XObject

Reimplemented from StylesheetExecutionContext.

virtual const XObjectPtr StylesheetExecutionContextDefault::extFunction ( const XalanDOMString & theNamespace,
const XalanDOMString & functionName,
XalanNode * context,
const XObjectArgVectorType & argVec ) [virtual]
 

Handle an extension function.

Parameters:
theNamespace   namespace of function
functionName   extension function name
argVec   vector of arguments to function
Returns:
pointer to XObject result

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::findOnElementRecursionStack ( const ElemTemplateElement * theElement ) const [virtual]
 

Determine if an element is on the recursion stack.

Returns:
true if element on stack

Reimplemented from StylesheetExecutionContext.

virtual XalanDOMString StylesheetExecutionContextDefault::findURIFromDoc ( const XalanDocument * owner ) const [virtual]
 

Given a DOM Document, tell what URI was used to parse it.

Needed for relative resolution.

Parameters:
owner   source document
Returns:
document URI

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::fireGenerateEvent ( const GenerateEvent & ge ) [virtual]
 

Fire a generate event.

Parameters:
ge   generate event to fire

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::fireSelectEvent ( const SelectionEvent & se ) [virtual]
 

Fire a selection event.

Parameters:
se   selection event to fire

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::fireTraceEvent ( const TracerEvent & te ) [virtual]
 

Fire a trace event.

Parameters:
te   trace event to fire

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::flushPending ( ) [virtual]
 

Flush the pending element.

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::functionAvailable ( const XalanDOMString & theNamespace,
const XalanDOMString & functionName ) const [virtual]
 

Determine if a function is available.

For standard function availability, theNamespace should be an empty string.

Parameters:
theNamespace   namespace for the function
functionName   name of the function
Returns:
whether the function is available or not

Reimplemented from StylesheetExecutionContext.

virtual XalanDOMString& StylesheetExecutionContextDefault::getCachedString ( ) [virtual]
 

Reimplemented from StylesheetExecutionContext.

virtual const NodeRefListBase& StylesheetExecutionContextDefault::getContextNodeList ( ) const [virtual]
 

Retrieve node list for current context.

Returns:
node list

Reimplemented from StylesheetExecutionContext.

virtual unsigned int StylesheetExecutionContextDefault::getContextNodeListLength ( ) const [virtual]
 

Reimplemented from StylesheetExecutionContext.

virtual unsigned int StylesheetExecutionContextDefault::getContextNodeListPosition ( const XalanNode & contextNode ) const [virtual]
 

Reimplemented from StylesheetExecutionContext.

virtual CountersTable& StylesheetExecutionContextDefault::getCountersTable ( ) [virtual]
 

Get the counters table, which is a table of cached results that is used by ElemNumber.

Returns:
A reference to the counters table.

Reimplemented from StylesheetExecutionContext.

virtual XalanNode* StylesheetExecutionContextDefault::getCurrentNode ( ) const [virtual]
 

Retrieve the node currently being executed.

Returns:
current node

Reimplemented from StylesheetExecutionContext.

virtual int StylesheetExecutionContextDefault::getCurrentStackFrameIndex ( ) const [virtual]
 

Get the top of the stack frame from where a search for a variable or param should take place.

Returns:
current value of index

Reimplemented from StylesheetExecutionContext.

virtual XalanDocument* StylesheetExecutionContextDefault::getDOMFactory ( ) const [virtual]
 

Get a DOM document, primarily for creating result tree fragments.

Returns:
DOM document

Reimplemented from StylesheetExecutionContext.

virtual const XalanDecimalFormatSymbols* StylesheetExecutionContextDefault::getDecimalFormatSymbols ( const XalanDOMString & name ) [virtual]
 

Retrieve the XalanDecimalFormatSymbols instance associated with the name.

Parameters:
name   the name for the lookup
Returns:
a pointer to the matching instance, or 0 if none was found

Reimplemented from StylesheetExecutionContext.

XalanNumberFormatFactory & StylesheetExecutionContextDefault::getDefaultXalanNumberFormatFactory ( ) [static]
 

virtual FormatterListener* StylesheetExecutionContextDefault::getFormatterListener ( ) const [virtual]
 

Get the current formatter listener.

Returns:
pointer to formatter listener

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::getInConstruction ( const KeyDeclaration & keyDeclaration ) const [virtual]
 

Determine if a KeyDeclaration is being constructed.

Parameters:
The   KeyDeclaration in question.
Returns:
true if being constructed

Reimplemented from StylesheetExecutionContext.

virtual int StylesheetExecutionContextDefault::getIndent ( ) const [virtual]
 

Retrieve the current number of spaces to indent.

Returns:
number of spaces

Reimplemented from StylesheetExecutionContext.

virtual const XalanDOMString& StylesheetExecutionContextDefault::getNamespaceForPrefix ( const XalanDOMString & prefix ) const [virtual]
 

Retrieve the URI corresponding to a namespace prefix.

Parameters:
prefix   prefix for a namespace
Returns:
URI corresponding to namespace

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::getNodeSetByKey ( XalanNode * doc,
const XalanDOMString & name,
const XalanDOMString & ref,
const PrefixResolver & resolver,
MutableNodeRefList & nodelist ) [virtual]
 

Given a valid element key, return the corresponding node list.

Parameters:
doc   source document
name   name of the key, which must match the 'name' attribute on xsl:key
ref   value that must match the value found by the 'match' attribute on xsl:key
resolver   resolver for namespace resolution
nodelist   A node list to contain the nodes found

Reimplemented from StylesheetExecutionContext.

virtual const XObjectPtr StylesheetExecutionContextDefault::getParamVariable ( const QName & theName ) [virtual]
 

Given a name, return a string representing the value, but don't look in the global space.

Parameters:
theName   name of variable
Returns:
pointer to XObject for variable

Reimplemented from StylesheetExecutionContext.

virtual const PrefixResolver* StylesheetExecutionContextDefault::getPrefixResolver ( ) const [virtual]
 

Retrieve the resolver for namespaces.

Returns:
object for namespace resolution

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::getQuietConflictWarnings ( ) const [virtual]
 

Determine whether conflicts should be reported.

Returns:
true if conflicts should not be warned

Reimplemented from StylesheetExecutionContext.

virtual const XalanDOMString& StylesheetExecutionContextDefault::getResultNamespaceForPrefix ( const XalanDOMString & thePrefix ) const [virtual]
 

Retrieve the result namespace corresponding to a prefix.

Parameters:
thePrefix   prefix for namespace

Reimplemented from StylesheetExecutionContext.

virtual const XalanDOMString& StylesheetExecutionContextDefault::getResultPrefixForNamespace ( const XalanDOMString & theNamespace ) const [virtual]
 

Retrieve the result prefix corresponding to a namespace.

Parameters:
theNamespace   namespace for prefix

Reimplemented from StylesheetExecutionContext.

virtual XalanNode* StylesheetExecutionContextDefault::getRootDocument ( ) const [virtual]
 

Retrieve root document for stylesheet.

Note that this does not have to be a XalanDocument -- it can be any node in a document.

Returns:
root document

Reimplemented from StylesheetExecutionContext.

virtual XalanDocument* StylesheetExecutionContextDefault::getSourceDocument ( const XalanDOMString & theURI ) const [virtual]
 

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::getThrowFoundIndex ( ) const [virtual]
 

Tells if FoundIndex should be thrown if index is found.

This is an optimization for match patterns, and is used internally by the XPath engine.

Returns:
true to throw FoundIndex

Reimplemented from StylesheetExecutionContext.

virtual unsigned long StylesheetExecutionContextDefault::getTraceListeners ( ) const [virtual]
 

Determine the number of trace listeners.

Returns:
number of listeners

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::getTraceSelects ( ) const [virtual]
 

If this is set to true, simple traces of template calls are made.

Returns:
true if traces made

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::getUniqueNamespaceValue ( XalanDOMString & theValue ) const [virtual]
 

Generate a random namespace prefix guaranteed to be unique.

Parameters:
theValue   A string for returning the new prefix

Reimplemented from StylesheetExecutionContext.

virtual XalanDOMString StylesheetExecutionContextDefault::getUniqueNamespaceValue ( ) const [virtual]
 

Generate a random namespace prefix guaranteed to be unique.

Returns:
unique namespace prefix

Reimplemented from StylesheetExecutionContext.

virtual const XalanDOMString& StylesheetExecutionContextDefault::getUnparsedEntityURI ( const XalanDOMString & theName,
const XalanDocument & theDocument ) const [virtual]
 

The getUnparsedEntityURI function returns the URI of the unparsed entity with the specified name in the same document as the context node (see [3.3 Unparsed Entities]).

It returns the empty string if there is no such entity.

Parameters:
theName   name of entity
theDocument   document containing entity
Returns:
URI for the entity

Reimplemented from StylesheetExecutionContext.

bool StylesheetExecutionContextDefault::getUseDOMResultTreeFactory ( ) const []
 

Get the value of the flag that controls whether result tree fragments are created using a DOM factory, or a XalanSourceTreeDocument.

Returns:
The value

virtual const XObjectPtr StylesheetExecutionContextDefault::getVariable ( const QName & name ) [virtual]
 

Given a name, locate a variable in the current context, and return a pointer to the object.

Parameters:
theName   name of variable
Returns:
pointer to an XObject if the variable was found, 0 if it was not

Reimplemented from StylesheetExecutionContext.

virtual XLocator* StylesheetExecutionContextDefault::getXLocatorFromNode ( const XalanNode * node ) const [virtual]
 

Get an XLocator provider keyed by node.

This gets the association based on the root of the tree that is the node's parent.

Parameters:
node   node for locator
Returns:
pointer to locator

Reimplemented from StylesheetExecutionContext.

virtual XObjectFactory& StylesheetExecutionContextDefault::getXObjectFactory ( ) const [virtual]
 

Retrieve the factory object for creating XObjects.

Returns:
factory object instance

Reimplemented from StylesheetExecutionContext.

virtual const XalanDOMString& StylesheetExecutionContextDefault::getXSLNameSpaceURL ( ) const [virtual]
 

Determine the full XSLT Namespace URI.

Returns:
Xalan namespace URI

Reimplemented from StylesheetExecutionContext.

virtual const XalanDOMString& StylesheetExecutionContextDefault::getXalanXSLNameSpaceURL ( ) const [virtual]
 

Special Xalan namespace for built-in extensions.

Returns:
Xalan namespace for extensions

Reimplemented from StylesheetExecutionContext.

CollationCompareFunctor* StylesheetExecutionContextDefault::installCollationCompareFunctor ( CollationCompareFunctor * theFunctor )
 

XalanNumberFormatFactory * StylesheetExecutionContextDefault::installXalanNumberFormatFactory ( XalanNumberFormatFactory * theFactory ) [static]
 

Static function to install a new XalanNumberFormatFactory.

The caller owns the XalanNumberFormatFactory instance.

Parameters:
a   pointer to the new factory instance to use.
Returns:
a pointer to the old factory instance.

virtual bool StylesheetExecutionContextDefault::isElementPending ( ) const [virtual]
 

See if there is an element pending.

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::isNodeAfter ( const XalanNode & node1,
const XalanNode & node2 ) const [virtual]
 

Determine if a node is after another node, in document order.

Parameters:
node1   The first node
node2   The second node
Returns:
true if node1 one is after node2, or false if it is not.

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::message ( const char * msg,
const XalanNode * sourceNode = 0,
const XalanNode * styleNode = 0 ) const [virtual]
 

Output a message.

Parameters:
msg   text of message to output
sourceNode   node in source where error occurred
styleNode   node in stylesheet where error occurred

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::message ( const XalanDOMString & msg,
const XalanNode * sourceNode = 0,
const XalanNode * styleNode = 0 ) const [virtual]
 

Output a message.

Parameters:
msg   text of message to output
sourceNode   node in source where error occurred
styleNode   node in stylesheet where error occurred

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::outputResultTreeFragment ( const XObject & theTree ) [virtual]
 

Given a result tree fragment, walk the tree and output it to the result stream.

Parameters:
theTree   result tree fragment

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::outputToResultTree ( const XObject & xobj ) [virtual]
 

Output an object to the result tree by doing the right conversions.

This is public for access by extensions.

Parameters:
obj   the XObject to output

Reimplemented from StylesheetExecutionContext.

virtual XalanDocument* StylesheetExecutionContextDefault::parseXML ( const XalanDOMString & urlString,
const XalanDOMString & base ) const [virtual]
 

Provides support for XML parsing service.

Parameters:
urlString   location of the XML
base   base location for URI
Returns:
parsed document

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::popContextMarker ( ) [virtual]
 

Pop the current context from the current context stack.

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::popElementFrame ( const ElemTemplateElement * elem ) [virtual]
 

Pop a frame marker for an element.

Parameters:
elem   the element

Reimplemented from StylesheetExecutionContext.

virtual const ElemTemplateElement* StylesheetExecutionContextDefault::popElementRecursionStack ( ) [virtual]
 

Pop an element off the recursion stack.

Returns:
pointer to element popped

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::popOutputContext ( ) [virtual]
 

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::processingInstruction ( const XalanDOMChar * target,
const XalanDOMChar * data ) [virtual]
 

Receive notification of a processing instruction.

The Parser will invoke this method once for each processing instruction found: note that processing instructions may occur before or after the main document element.

A SAX parser should never report an XML declaration (XML 1.0, section 2.8) or a text declaration (XML 1.0, section 4.3.1) using this method.

Parameters:
target   processing instruction target
data   processing instruction data, or null if none was supplied
Exceptions:
SAXException  

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushContextMarker ( ) [virtual]
 

Push a context marker onto the stack to let us know when to stop searching for a var.

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushElementFrame ( const ElemTemplateElement * elem ) [virtual]
 

Push a frame marker for an element.

Parameters:
elem   the element

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushOnElementRecursionStack ( const ElemTemplateElement * theElement ) [virtual]
 

Push an element onto the recursion stack.

Parameters:
theElement   pointer to element to push

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushOutputContext ( FormatterListener * flistener = 0 ) [virtual]
 

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushParams ( const ElemTemplateElement & xslCallTemplateElement,
XalanNode * sourceTree,
XalanNode * sourceNode,
const QName & mode,
const ElemTemplateElement * targetTemplate ) [virtual]
 

Given a template, search for the arguments and push them on the stack.

Also, push default arguments on the stack.

Parameters:
xslCallTemplateElement   "call-template" element
sourceTree   source tree
sourceNode   source node
mode   mode under which the template is operating
targetTemplate   target template

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushTime ( const void * theKey ) [virtual]
 

Mark the time, so that displayDuration can later display the elapsed clock ticks.

Parameters:
theKey   element to push

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushTopLevelVariables ( const ParamVectorType & topLevelParams ) [virtual]
 

Set a list of top level variables in the specified execution context stylesheet.

Parameters:
topLevelParams   list of top level parameters

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushVariable ( const QName & name,
const ElemTemplateElement * element,
const ElemTemplateElement & templateChild,
XalanNode * sourceTree,
XalanNode * sourceNode ) [virtual]
 

Create an ResultTreeFragment as a variable and push it on to the stack with the current context.

Parameters:
name   name of variable
element   element marker for variable
templateChild   result tree fragment to use.
sourceTree   node for source tree
sourceNode   source node

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushVariable ( const QName & name,
const ElemTemplateElement * element,
const XPath & xpath,
XalanNode * contextNode,
const PrefixResolver & resolver ) [virtual]
 

Execute the supplied XPath and push the result as a variable in the current context.

Parameters:
name   name of variable
element   element marker for variable
str   string expression for XPath evaluation
contextNode   current node in the source tree
resolver   resolver for namespace resolution
Returns:
nothing

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushVariable ( const QName & name,
const ElemVariable * var,
const ElemTemplateElement * element ) [virtual]
 

Push a named variable onto the processor variable stack The variable will be evaluated when first referenced.

Parameters:
name   name of variable
var   pointer to ElemVariable instance
element   element marker for variable

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushVariable ( const QName & name,
const XObjectPtr val,
const ElemTemplateElement * element ) [virtual]
 

Push a named variable onto the variables stack.

The variable has already been evaluated.

Parameters:
name   name of variable
val   pointer to XObject value
element   element marker for variable

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::pushVariable ( const QName & name,
const ElemTemplateElement * element,
const XalanDOMString & str,
XalanNode * contextNode,
const PrefixResolver & resolver ) [virtual]
 

Execute an XPath using the provided expression, and push the result as a variable in the context of the supplied element.

Parameters:
name   name of variable
element   element marker for variable
str   string expression for XPath evaluation
contextNode   current node in the source tree
resolver   resolver for namespace resolution
Returns:
nothing

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::releaseCachedString ( XalanDOMString & theString ) [virtual]
 

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::replacePendingAttribute ( const XalanDOMChar * theName,
const XalanDOMChar * theNewType,
const XalanDOMChar * theNewValue ) [virtual]
 

Replace the contents of a pending attribute.

Parameters:
theName   name of attribute
theNewType   type of attribute
theNewValue   new value of attribute

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::reset ( ) [virtual]
 

Reset the instance.

This must be called before another execution is attempted.

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::resetCurrentState ( XalanNode * sourceTree,
XalanNode * xmlNode ) [virtual]
 

Reset the state of execution to node 'xmlNode' in source tree 'sourceTree.'.

Parameters:
sourceTree   source tree for execution
xmlNode   node to execute

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::resolveTopLevelParams ( ) [virtual]
 

Resolve the params that were pushed by the caller.

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::returnMutableNodeRefList ( MutableNodeRefList * theList ) [virtual]
 

Return a previously borrowed MutableNodeRefList instance.

Parameters:
theList   A pointer the to previously borrowed instance.
Returns:
true if the list was borrowed (at therefore, destroyed), false if not.

Reimplemented from StylesheetExecutionContext.

virtual bool StylesheetExecutionContextDefault::returnResultTreeFrag ( ResultTreeFragBase * theResultTreeFragBase ) [virtual]
 

Return a previously borrowed ResultTreeFragBase instance.

Parameters:
theList   A pointer the to previously borrowed instance.
Returns:
true if the list was borrowed (at therefore, destroyed), false if not.

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::returnXPath ( const XPath * xpath ) [virtual]
 

Return the XPath created by createMatchPattern().

Parameters:
xpath   The XPath to return.

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::setContextNodeList ( const NodeRefListBase & theList ) [virtual]
 

Set node list for current context.

Parameters:
theList   new node list

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::setCurrentNode ( XalanNode * theCurrentNode ) [virtual]
 

Change the node currently being executed.

Parameters:
theCurrentNode   new current node

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::setCurrentStackFrameIndex ( int currentStackFrameIndex = -1 ) [virtual]
 

Set the top of the stack frame from where a search for a variable or param should take place.

Parameters:
currentStackFrameIndex   new value of index

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::setFormatterListener ( FormatterListener * flistener ) [virtual]
 

Set the current formatter listener.

Parameters:
flistener   pointer to new formatter listener

Reimplemented from StylesheetExecutionContext.

void StylesheetExecutionContextDefault::setIgnoreHTMLElementNamespaces ( bool theValue ) []
 

Set the value of the flag that controls whether HTML output will check for namespace declarations on HTML elements.

Returns:
The value

bool StylesheetExecutionContextDefault::setIgnoreHTMLElementNamespaces ( ) const []
 

Set the value of the flag that controls whether HTML output will check for namespace declarations on HTML elements.

Set this to true if you want the HTML output formatter to skip checking for namespaces on elements. This makes HTML output more efficient, but can result in non-conforming behavior, since the XSLT recommendation requires XML output for elements with namespaces.

Parameters:
theValue   The boolean value

virtual void StylesheetExecutionContextDefault::setPrefixResolver ( const PrefixResolver * thePrefixResolver ) [virtual]
 

Change the resolver for namespaces.

Parameters:
thePrefixResolver   new object for namespace resolution

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::setRootDocument ( XalanNode * theDocument ) [virtual]
 

Set root document for stylesheet.

Note that this does not have to be a XalanDocument -- it can be any node in a document.

Parameters:
theDocument   root document

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::setSourceDocument ( const XalanDOMString & theURI,
XalanDocument * theDocument ) [virtual]
 

Associate a document with a given URI.

Parameters:
theURI   document URI
theDocument   source document

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::setStylesheetRoot ( const StylesheetRoot * theStylesheet ) [virtual]
 

Set root stylesheet for stylesheet.

Parameters:
theStylesheet   root stylesheet

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::setThrowFoundIndex ( bool fThrow ) [virtual]
 

Changes whether FoundIndex should be thrown if index is found.

This is an optimization for match patterns, and is used internally by the XPath engine.

Parameters:
fThrow   true to throw FoundIndex

Reimplemented from StylesheetExecutionContext.

void StylesheetExecutionContextDefault::setUseDOMResultTreeFactory ( bool theValue ) []
 

Set the value of the flag that controls whether result tree fragments are created using a DOM factory, or a XalanSourceTreeDocument.

Parameters:
theValue   The boolean value

virtual bool StylesheetExecutionContextDefault::shouldStripSourceNode ( const XalanNode & node ) [virtual]
 

Tells, through the combination of the default-space attribute on xsl:stylesheet, xsl:strip-space, xsl:preserve-space, and the xml:space attribute, whether or not extra whitespace should be stripped from the node.

Literal elements from template elements should not be tested with this function.

Parameters:
textNode   text node from the source tree
Returns:
true if the text node should be stripped of extra whitespace

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::startDocument ( ) [virtual]
 

Receive notification of the beginning of a document.

The SAX parser will invoke this method only once, before any other methods in this interface or in DTDHandler (except for setDocumentLocator).

Exceptions:
SAXException  

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::startElement ( const XalanDOMChar * name ) [virtual]
 

Receive notification of the beginning of an element.

The Parser will invoke this method at the beginning of every element in the XML document; there will be a corresponding endElement() event for every startElement() event (even when the element is empty). All of the element's content will be reported, in order, before the corresponding endElement() event.

If the element name has a namespace prefix, the prefix will still be attached.

Parameters:
name   element type name
Exceptions:
SAXException  

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::traceSelect ( const XalanElement & theTemplate,
const NodeRefListBase & nl ) const [virtual]
 

Compose a diagnostic trace of the current selection.

Parameters:
theTemplate   current context node
nl   list of selected nodes

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::warn ( const char * msg,
const XalanNode * sourceNode = 0,
const XalanNode * styleNode = 0 ) const [virtual]
 

Tell the user of an warning, and probably throw an exception.

Parameters:
msg   text of message to output
sourceNode   node in source where error occurred
styleNode   node in stylesheet where error occurred

Reimplemented from StylesheetExecutionContext.

virtual void StylesheetExecutionContextDefault::warn ( const XalanDOMString & msg,
const XalanNode * sourceNode = 0,
const XalanNode * styleNode = 0 ) const [virtual]
 

Tell the user of an warning, and probably throw an exception.

Parameters:
msg   text of message to output
sourceNode   node in source where error occurred
styleNode   node in stylesheet where error occurred

Reimplemented from StylesheetExecutionContext.


The documentation for this class was generated from the following file:

Interpreting class diagrams

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

Xalan-C++ XSL Transformer Version 1.1
Copyright © 2000, 2001 The Apache Software Foundation. All Rights Reserved.