Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | Static Protected Attributes
Stylesheet Class Reference

This class represents the base stylesheet or an "import" stylesheet. More...

Inheritance diagram for Stylesheet:
PrefixResolver StylesheetRoot

List of all members.

Public Types

Public Member Functions

Static Public Member Functions

Protected Attributes

Static Protected Attributes


Detailed Description

This class represents the base stylesheet or an "import" stylesheet.

"include" stylesheets are combined with the including stylesheet.


Member Typedef Documentation


Constructor & Destructor Documentation

Stylesheet::Stylesheet ( StylesheetRoot root,
const XalanDOMString baseIdentifier,
StylesheetConstructionContext constructionContext 
)

Constructor for a Stylesheet needs a Document.

Exceptions:
XSLProcessorExceptionthrown if the active ProblemListener and XMLParserLiaison decide the error condition is severe enough to halt processing.
virtual Stylesheet::~Stylesheet ( ) [virtual]

Member Function Documentation

void Stylesheet::addImport ( Stylesheet theStylesheet)

Add an imported stylesheet.

Parameters:
theStylesheetThe stylesheet to add.
static void Stylesheet::addObjectIfNotFound ( const XalanMatchPatternData thePattern,
PatternTableVectorType theVector 
) [static]

Add object to vector of match patterns if not already there.

Parameters:
thePatternpattern to add
theVectorvector of patterns to add to
static void Stylesheet::addObjectIfNotFound ( const XalanMatchPatternData thePattern,
const XalanMatchPatternData theArray[],
unsigned int &  theArraySize 
) [static]

Add object to array of match patterns if not already there.

theArraySize size will be incremented if the pattern was added.

Parameters:
thePatternpattern to add
theArrayvector of patterns to add to
theArraySizeThe size of the array
void Stylesheet::addTemplate ( ElemTemplate theTemplate,
StylesheetConstructionContext constructionContext 
)

Add a template to the list of names templates.

Parameters:
theTemplatetemplate to add
constructionContextcontext for construction
void Stylesheet::addWhitespaceElement ( const XalanSpaceNodeTester theTester)
static Stylesheet* Stylesheet::create ( MemoryManagerType theManager,
StylesheetRoot root,
const XalanDOMString baseIdentifier,
StylesheetConstructionContext constructionContext 
) [static]
const ElemTemplate* Stylesheet::findNamedTemplate ( const XalanQName qname) const

Locate a template via the "name" attribute.

Parameters:
namequalified name of template
Returns:
pointer to template found or 0 if none found
const ElemTemplate* Stylesheet::findTemplate ( StylesheetExecutionContext executionContext,
XalanNode targetNode 
) const

Given a target element, find the template that best matches in the given XSL document, according to the rules specified in the xsl draft.

Parameters:
executionContextcurrent execution context
targetNodeelement that needs a rule
Returns:
pointer to rule that best matches targetNode
const ElemTemplate* Stylesheet::findTemplate ( StylesheetExecutionContext executionContext,
XalanNode targetNode,
XalanNode::NodeType  targetNodeType,
const XalanQName mode,
bool  onlyUseImports 
) const

Given a target element, find the template that best matches in the given XSL document, according to the rules specified in the xsl draft.

Parameters:
executionContextcurrent execution context
targetNodenode that needs a rule
targetNodeTypethe type of targetNode
modestring indicating the mode
onlyUseImportsonly use imports, do not use any templates from the stylesheet itself
Returns:
pointer to rule that best matches targetElem
const XalanDOMString& Stylesheet::getBaseIdentifier ( ) const

Retrieve the base identifier with which this stylesheet is associated.

Returns:
string for base identifier