This class represents the base stylesheet or an "import" stylesheet. More...
This class represents the base stylesheet or an "import" stylesheet.
"include" stylesheets are combined with the including stylesheet.
typedef XalanMap<XalanQNameByReference, const ElemTemplate* > Stylesheet::ElemTemplateMapType |
typedef StylesheetConstructionContext::GetAndReleaseCachedString Stylesheet::GetAndReleaseCachedString |
typedef XalanMap<const XalanNode*, KeyTable* > Stylesheet::KeyTablesTableType |
Stylesheet::Stylesheet | ( | StylesheetRoot & | root, |
const XalanDOMString & | baseIdentifier, | ||
StylesheetConstructionContext & | constructionContext | ||
) |
Constructor for a Stylesheet needs a Document.
XSLProcessorException | thrown if the active ProblemListener and XMLParserLiaison decide the error condition is severe enough to halt processing. |
virtual Stylesheet::~Stylesheet | ( | ) | [virtual] |
void Stylesheet::addImport | ( | Stylesheet * | theStylesheet | ) |
Add an imported stylesheet.
theStylesheet | The stylesheet to add. |
static void Stylesheet::addObjectIfNotFound | ( | const XalanMatchPatternData * | thePattern, |
PatternTableVectorType & | theVector | ||
) | [static] |
Add object to vector of match patterns if not already there.
thePattern | pattern to add |
theVector | vector 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.
thePattern | pattern to add |
theArray | vector of patterns to add to |
theArraySize | The size of the array |
void Stylesheet::addTemplate | ( | ElemTemplate * | theTemplate, |
StylesheetConstructionContext & | constructionContext | ||
) |
Add a template to the list of names templates.
theTemplate | template to add |
constructionContext | context 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.
name | qualified name of template |
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.
executionContext | current execution context |
targetNode | element that needs a rule |
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.
executionContext | current execution context |
targetNode | node that needs a rule |
targetNodeType | the type of targetNode |
mode | string indicating the mode |
onlyUseImports | only use imports, do not use any templates from the stylesheet itself |
const XalanDOMString& Stylesheet::getBaseIdentifier | ( | ) | const |
Retrieve the base identifier with which this stylesheet is associated.
const XalanDOMString& Stylesheet::getCurrentIncludeBaseIdentifier | ( | ) | const |
Retrieve the base identifier for the most recently included stylesheet.
This will return the same value as getBaseIdentifier(), if no include is being processed.
const XalanDecimalFormatSymbols* Stylesheet::getDecimalFormatSymbols | ( | const XalanQName & | theQName | ) | const |
Retrieve the XalanDecimalFormatSymbols instance associated with the QName.
theQName | the QName for the lookup |
const ElemTemplate* Stylesheet::getFirstTemplate | ( | ) | const |
URLStackType& Stylesheet::getIncludeStack | ( | ) |
Retrieve the stack of who's including who.
MemoryManagerType& Stylesheet::getMemoryManager | ( | ) |
Reimplemented in StylesheetRoot.
const NamespaceVectorType& Stylesheet::getNamespaceDecls | ( | ) | const |
Retrieve the list of namespace declarations currently in effect.
NamespaceVectorType& Stylesheet::getNamespaceDecls | ( | ) |
Retrieve the list of namespace declarations currently in effect.
const XalanDOMString* Stylesheet::getNamespaceForPrefix | ( | const XalanDOMString & | prefix, |
StylesheetConstructionContext & | constructionContext | ||
) | const |
Get the namespace for a prefix, and report an error if it wasn't found.
prefix | prefix to search |
constructionContext | The current construction context |
virtual const XalanDOMString* Stylesheet::getNamespaceForPrefix | ( | const XalanDOMString & | prefix | ) | const [virtual] |
Retrieve a namespace corresponding to a prefix.
This assumes that the PrevixResolver holds its own namespace context, or is a namespace context itself.
prefix | Prefix to resolve |
Implements PrefixResolver.
const XalanDOMString* Stylesheet::getNamespaceForPrefix | ( | const XalanDOMChar * | prefix, |
StylesheetConstructionContext & | constructionContext | ||
) | const |
Get the namespace for a prefix, and report an error if it wasn't found.
prefix | prefix to search |
constructionContext | The current construction context |
const XalanDOMString* Stylesheet::getNamespaceForPrefixFromStack | ( | const XalanDOMString & | prefix | ) | const |
Get the namespace from a prefix by searching the stack of namespace lists.
prefix | prefix to search |
const XalanDOMString* Stylesheet::getNamespaceForPrefixFromStack | ( | const XalanDOMChar * | prefix | ) | const |
Get the namespace from a prefix by searching the stack of namespace lists.
prefix | prefix to search |
const XalanDOMString* Stylesheet::getNamespaceFromStack | ( | const XalanDOMString & | nodeName, |
XalanDOMString & | theBuffer | ||
) | const |
Get the namespace from a qualified name.
nodeName | name of node |
const XalanDOMString* Stylesheet::getNamespaceFromStack | ( | const XalanDOMChar * | nodeName, |
XalanDOMString & | theBuffer | ||
) | const |
Get the namespace from a qualified name.
nodeName | name of node |
NamespacesStackType& Stylesheet::getNamespaces | ( | ) |
Retrieve the stack of namespace lists.
const NamespacesStackType& Stylesheet::getNamespaces | ( | ) | const |
Retrieve the stack of namespace lists.
const NamespacesHandler& Stylesheet::getNamespacesHandler | ( | ) | const |
NamespacesHandler& Stylesheet::getNamespacesHandler | ( | ) |
const StylesheetRoot& Stylesheet::getStylesheetRoot | ( | ) | const |
Retrieve the root stylesheet object.
StylesheetRoot& Stylesheet::getStylesheetRoot | ( | ) |
Retrieve the root stylesheet object.
virtual const XalanDOMString& Stylesheet::getURI | ( | ) | const [virtual] |
const XalanDOMString& Stylesheet::getXSLTNamespaceURI | ( | ) | const |
double Stylesheet::getXSLTVerDeclared | ( | ) | const |
Retrieve XSLT version number.
bool Stylesheet::getYesOrNo | ( | const XalanDOMChar * | aname, |
const XalanDOMChar * | val, | ||
StylesheetConstructionContext & | constructionContext | ||
) | const |
Process an attribute that has the value of 'yes' or 'no'.
aname | name of attribute |
val | value |
constructionContext | context for construction |
ElemTemplateElement* Stylesheet::initWrapperless | ( | StylesheetConstructionContext & | constructionContext, |
const LocatorType * | locator | ||
) |
bool Stylesheet::isAttrOK | ( | const XalanDOMChar * | attrName, |
const AttributeListType & | atts, | ||
int | which, | ||
StylesheetConstructionContext & | constructionContext | ||
) | const |
See if this is a xmlns attribute, and, if so, process it.
attrName | qualified name of attribute |
atts | attribute list where the element comes from (not used at this time) |
which | index into the attribute list (not used at this time) |
bool Stylesheet::isWrapperless | ( | ) | const |
whether there is a wrapper template
const PatternTableVectorType* Stylesheet::locateAttributeMatchPatternDataList | ( | const XalanDOMString & | theName | ) | const |
Given a name, locate the start of a list of possible templates that match that name.
If none match, then use the default list.
theName | The name to match |
const PatternTableVectorType* Stylesheet::locateElementMatchPatternDataList | ( | const XalanDOMString & | theName | ) | const |
Given a name, locate the start of a list of possible templates that match that name.
If none match, then use the default list.
theName | The name to match |
const PatternTableVectorType* Stylesheet::locateMatchPatternDataList | ( | const XalanNode & | theNode, |
XalanNode::NodeType | targetNodeType | ||
) | const |
ExtensionNSHandler* Stylesheet::lookupExtensionNSHandler | ( | const XalanDOMString & | uri | ) | const |
Return the handler for a given extension namespace.
uri | the URI of the extension namespace. |
void Stylesheet::popNamespaces | ( | ) |
Pop a namespace declaration from the namespace stack.
virtual void Stylesheet::postConstruction | ( | StylesheetConstructionContext & | constructionContext | ) | [virtual] |
Called after construction is completed.
Reimplemented in StylesheetRoot.
void Stylesheet::processDecimalFormatElement | ( | StylesheetConstructionContext & | constructionContext, |
const AttributeListType & | atts, | ||
const LocatorType * | locator = 0 |
||
) |
Process an xsl:decimal-format element.
elemDecimalFormat | the element |
void Stylesheet::processExcludeResultPrefixes | ( | StylesheetConstructionContext & | theConstructionContext, |
const XalanDOMChar * | theValue | ||
) |
See if a namespace should be excluded.
theConstructionContext | the current construction context. |
theValue | the prefix of the namespace. |
void Stylesheet::processExtensionNamespace | ( | StylesheetConstructionContext & | theConstructionContext, |
const XalanDOMString & | uri | ||
) |
Add an extension namespace handler.
This provides methods for calling an element extension as well as for function calls (which is passed on to XPath).
constructionContext | The current construction context. |
uri | The namespace URI of the extension. |
void Stylesheet::processKeyElement | ( | const PrefixResolver & | nsContext, |
const AttributeListType & | atts, | ||
const LocatorType * | locator, | ||
StylesheetConstructionContext & | constructionContext | ||
) |
Process the xsl:key element.
nsContext | The PrefixResolver instance for namespace prefixes. |
atts | The attribute list for element. #param locator The Locator instance for error reporting, if any. May be 0. |
constructionContext | The current construction context. |
void Stylesheet::processNSAliasElement | ( | const XalanDOMChar * | name, |
const AttributeListType & | atts, | ||
StylesheetConstructionContext & | constructionContext | ||
) |
Process an xsl:namespace-alias element.
name | the element name. |
attrs | the current attribute list |
constructionContext | the active construction context |
void Stylesheet::pushNamespaces | ( | const AttributeListType & | atts | ) |
Push the namespace declarations from the current attribute list onto the namespace stack.
atts | attribute list constaining namespaces |
void Stylesheet::pushTopLevelVariables | ( | StylesheetExecutionContext & | executionContext, |
const ParamVectorType & | topLevelParams | ||
) | const |
Set a list of top level variables in the specified execution context stylesheet.
executionContext | current execution context |
topLevelParams | list of top level parameters |
void Stylesheet::setNamespaceDecls | ( | const NamespaceVectorType & | ns | ) |
Set the list of namespace declarations currently in effect.
ns | vector of namespace vectors |
void Stylesheet::setTopLevelVariable | ( | ElemVariable * | var | ) |
Set a top level variable.
var | top-level variable declared with "xsl:variable" or xsl:param-variable. |
void Stylesheet::setXSLTNamespaceURI | ( | const XalanDOMString & | theURI | ) |
void Stylesheet::setXSLTVerDeclared | ( | double | ver | ) |
Set XSLT version number.
ver | number representing XSLT version |
XalanDOMString Stylesheet::m_baseIdent [protected] |
The base URL of the XSL document.
Table of KeyDeclaration objects, which are set by the xsl:key element.
StylesheetRoot& Stylesheet::m_stylesheetRoot [protected] |
The root of the stylesheet tree.
const XalanQNameByReference Stylesheet::s_emptyQName [static, protected] |
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
![]() |
Xalan-C++ XSLT Processor Version 1.10 |
|