Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.11


Public Types | Public Member Functions

StylesheetConstructionContext Class Reference

#include <StylesheetConstructionContext.hpp>

Inherits XPathConstructionContext.

Inherited by StylesheetConstructionContextDefault.

Collaboration diagram for StylesheetConstructionContext:
Collaboration graph
[legend]

List of all members.

Public Types

Public Member Functions


Detailed Description

Definition at line 80 of file StylesheetConstructionContext.hpp.


Member Typedef Documentation

Definition at line 84 of file StylesheetConstructionContext.hpp.

Definition at line 154 of file StylesheetConstructionContext.hpp.


Member Enumeration Documentation

IDs for XSL element types.

These are the values that must be returned by getElementToken().

Enumerator:
ELEMNAME_UNDEFINED 
ELEMNAME_EMPTY 
ELEMNAME_WITH_PARAM 
ELEMNAME_APPLY_TEMPLATES 
ELEMNAME_CHOOSE 
ELEMNAME_COMMENT 
ELEMNAME_COPY 
ELEMNAME_COPY_OF 
ELEMNAME_ATTRIBUTE 
ELEMNAME_ATTRIBUTE_SET 
ELEMNAME_EXTENSION 
ELEMNAME_FOR_EACH 
ELEMNAME_KEY 
ELEMNAME_IF 
ELEMNAME_IMPORT 
ELEMNAME_INCLUDE 
ELEMNAME_CALL_TEMPLATE 
ELEMNAME_PARAM 
ELEMNAME_NUMBER 
ELEMNAME_OTHERWISE 
ELEMNAME_PI 
ELEMNAME_PRESERVE_SPACE 
ELEMNAME_TEMPLATE 
ELEMNAME_SORT 
ELEMNAME_STRIP_SPACE 
ELEMNAME_STYLESHEET 
ELEMNAME_TEXT 
ELEMNAME_VALUE_OF 
ELEMNAME_WHEN 
ELEMNAME_FALLBACK 
ELEMNAME_ELEMENT 
ELEMNAME_APPLY_IMPORTS 
ELEMNAME_VARIABLE 
ELEMNAME_MESSAGE 
ELEMNAME_OUTPUT 
ELEMNAME_DECIMAL_FORMAT 
ELEMNAME_NAMESPACE_ALIAS 
ELEMNAME_LITERAL_RESULT 
ELEMNAME_TEXT_LITERAL_RESULT 
ELEMNAME_FORWARD_COMPATIBLE 
ELEMNAME_EXTENSION_CALL 
ELEMNAME_EXTENSION_HANDLER 

Definition at line 90 of file StylesheetConstructionContext.hpp.


Constructor & Destructor Documentation

StylesheetConstructionContext::StylesheetConstructionContext ( MemoryManager &  theManager  )  [explicit]
virtual StylesheetConstructionContext::~StylesheetConstructionContext (  )  [virtual]

Member Function Documentation

virtual const AVTPart** StylesheetConstructionContext::allocateAVTPartPointerVector ( size_type  theLength  )  [pure virtual]

Allocate a vector of const AVTPart* of the specified length.

Parameters:
theLength The length of the vector
Returns:
A pointer to the vector.

Implemented in StylesheetConstructionContextDefault.

virtual const AVT** StylesheetConstructionContext::allocateAVTPointerVector ( size_type  theLength  )  [pure virtual]

Allocate a vector of const AVT* of the specified length.

Parameters:
theLength The length of the vector
Returns:
A pointer to the vector.

Implemented in StylesheetConstructionContextDefault.

virtual XalanDOMChar* StylesheetConstructionContext::allocateXalanDOMCharVector ( XalanDOMString::size_type  theLength  )  [pure virtual]

Allocate a vector of XalanDOMChar of the specified size.

Parameters:
theLength The length of the character vector
Returns:
A pointer to the vector.

Implemented in StylesheetConstructionContextDefault.

virtual XalanDOMChar* StylesheetConstructionContext::allocateXalanDOMCharVector ( const XalanDOMChar *  theString,
XalanDOMString::size_type  theLength = XalanDOMString::npos,
bool  fTerminate = true 
) [pure virtual]

Allocate a vector of XalanDOMChar of the specified size.

Parameters:
theString The source character array
theLength The length of the character vector
fTerminate If true, terminate the new vector with 0
Returns:
A pointer to the array.

Implemented in StylesheetConstructionContextDefault.

virtual StylesheetRoot* StylesheetConstructionContext::create ( const XSLTInputSource theInputSource  )  [pure virtual]

Create a new StylesheetRoot instance.

The StylesheetConstructionContext instance owns the StylesheetRoot instance, and will delete it when asked or when the StylesheetConstructionContext instance is destroyed.

Parameters:
theInputSource A reference to the input source.
Returns:
A pointer to a new StylesheetRoot instance.

Implemented in StylesheetConstructionContextDefault.

virtual StylesheetRoot* StylesheetConstructionContext::create ( const XalanDOMString theBaseIdentifier  )  [pure virtual]

Create a new StylesheetRoot instance.

The StylesheetConstructionContext instance owns the StylesheetRoot instance, and will delete it when asked or when the StylesheetConstructionContext instance is destroyed.

Parameters:
theBaseIdentifier A URI to the stylesheet file.
Returns:
A pointer to a new StylesheetRoot instance.

Implemented in StylesheetConstructionContextDefault.

virtual Stylesheet* StylesheetConstructionContext::create ( StylesheetRoot theStylesheetRoot,
const XalanDOMString theBaseIdentifier 
) [pure virtual]

Create a new Stylesheet instance.

The StylesheetConstructionContext instance owns the Stylesheet instance, and will delete it when asked or when the StylesheetConstructionContext instance is destroyed.

Parameters:
A reference to the StylesheetRoot instance.
theBaseIdentifier A URI to the stylesheet file.
Returns:
A pointer to a new StylesheetRoot instance.

Implemented in StylesheetConstructionContextDefault.

virtual const AVT* StylesheetConstructionContext::createAVT ( const Locator *  locator,
const XalanDOMChar *  name,
const XalanDOMChar *  stringedValue,
const PrefixResolver resolver 
) [pure virtual]

Create an AVT instance.

Parameters:
locator the Locator for the instance. May be null.
name name of AVT
stringedValue string value to parse
resolver resolver for namespace resolution
Returns:
A pointer to the instance.

Implemented in StylesheetConstructionContextDefault.

virtual const AVTPart* StylesheetConstructionContext::createAVTPart ( const XalanDOMChar *  theString,
XalanDOMString::size_type  theLength = XalanDOMString::npos 
) [pure virtual]

Create an AVTPart instance.

Parameters:
theString The source character array
theLength The length of the character vector
fTerminate If true, terminate the new vector with 0
Returns:
A pointer to the instance.

Implemented in StylesheetConstructionContextDefault.

virtual const AVTPart* StylesheetConstructionContext::createAVTPart ( const Locator *  locator,
const XalanDOMChar *  str,
XalanDOMString::size_type  len,
const PrefixResolver resolver 
) [pure virtual]

Create an AVTPart instance.

Parameters:
locator the Locator for the instance. May be null.
str The XPath expression for the instance
len The length of the expression
resolver resolver for namespace resolution
Returns:
A pointer to the instance.

Implemented in StylesheetConstructionContextDefault.

virtual ElemTemplateElement* StylesheetConstructionContext::createElement ( int  token,
Stylesheet stylesheetTree,
const AttributeList &  atts,
const Locator *  locator = 0 
) [pure virtual]

Create a stylesheet element for the provided type.

The instance owns the memory and will delete the element when it goes out of scope and the containing stylesheet is destroyed.

Parameters:
token The enum value of the element to create.
stylesheetTree The stylesheet containing the element
atts The list of attributes for the element
locator The Locator instance for error reporting. May be 0.
Returns:
A pointer to the new instance.
virtual ElemTemplateElement* StylesheetConstructionContext::createElement ( int  token,
Stylesheet stylesheetTree,
const XalanDOMChar *  name,
const AttributeList &  atts,
const Locator *  locator = 0 
) [pure virtual]

Create a elements which have specific names.

The instance owns the memory and will delete the element when it goes out of scope and the containing stylesheet is destroyed.

Parameters:
token The enum value of the element to create.
stylesheetTree The stylesheet containing the element
name The name of the element
atts The list of attributes for the element
locator The Locator instance for error reporting. May be 0.
Returns:
A pointer to the new instance.
virtual ElemTemplateElement* StylesheetConstructionContext::createElement ( Stylesheet stylesheetTree,
const XalanDOMChar *  chars,
XalanDOMString::size_type  length,
bool  preserveSpace,
bool  disableOutputEscaping,
const Locator *  locator = 0 
) [pure virtual]

Create a an element for literal text.

The instance owns the memory and will delete the element when it goes out of scope and the containing stylesheet is destroyed.

Parameters:
stylesheetTree The stylesheet containing the element
chars The pointer to character string for element
length length of the chars parameter.
preserveSpace true is space should be preserved
disableOutputEscaping true if output escaping should be disabled
locator The Locator instance for error reporting. May be 0.
Returns:
A pointer to the new instance.

Implemented in StylesheetConstructionContextDefault.

virtual ElemTemplateElement* StylesheetConstructionContext::createElement ( Stylesheet stylesheetTree,
const XalanDOMChar *  name,
const AttributeList &  atts,
ExtensionNSHandler handler,
const Locator *  locator = 0 
) [pure virtual]

Create an element to handle an extension element.

The instance owns the memory and will delete the element when it goes out of scope and the containing stylesheet is destroyed.

Parameters:
stylesheetTree The stylesheet containing the element
name The name of the element
atts The list of attributes for the element
handler The handler for elements in the extension namespace
locator The Locator instance for error reporting. May be 0.
Returns:
A pointer to the new instance.
virtual XPath* StylesheetConstructionContext::createMatchPattern ( const Locator *  locator,
const XalanDOMString str,
const PrefixResolver resolver,
bool  allowVariableReferences = true,
bool  allowKeyFunction = true 
) [pure virtual]

Create and initialize an xpath for a match pattern and return it.

This is to be used by stylesheet elements that need an XPath that is guaranteed to persist while it lives.

Parameters:
locator the locator for the XPath. May be null.
str string to match
resolver resolver for namespace resolution
allowVariableReferences If true, variable references are allowed.
allowKeyFunction If true, calls to the key() function are allowed.
Returns:
XPath for match pattern

Implemented in StylesheetConstructionContextDefault.

virtual XPath* StylesheetConstructionContext::createMatchPattern ( const Locator *  locator,
const XalanDOMChar *  str,
const PrefixResolver resolver,
bool  allowVariableReferences = true,
bool  allowKeyFunction = true 
) [pure virtual]

Create and initialize an xpath for a match pattern and return it.

This is to be used by stylesheet elements that need an XPath that is guaranteed to persist while it lives.

Parameters:
locator the locator for the XPath. May be null.
str string to match
resolver resolver for namespace resolution
allowVariableReferences If true, variable references are allowed.
allowKeyFunction If true, calls to the key() function are allowed.
Returns:
XPath for match pattern

Implemented in StylesheetConstructionContextDefault.

virtual const XalanMatchPatternData* StylesheetConstructionContext::createXalanMatchPatternData ( const ElemTemplate theTemplate,
size_type  thePosition,
const XalanDOMString theTargetString,
const XPath theMatchPattern,
const XalanDOMString thePatternString,
XPath::eMatchScore  thePriority 
) [pure virtual]

Create an instance of XalanMatchPatternData, which describes data related to a match pattern and template in stylesheet.

The instance owns the memory and will delete the element when it goes out of scope and the containing stylesheet is destroyed.

Parameters:
theTemplate The ElemTemplate node that contains the template for this pattern
thePosition The position in the stylesheet
theTargetString The target string for match pattern
TheMatchPattern The match pattern
thePatternString the pattern string
thePriority The priority for the match pattern.
Returns:
A pointer to the new instance.

Implemented in StylesheetConstructionContextDefault.

virtual const XalanQName* StylesheetConstructionContext::createXalanQName ( const XalanDOMChar *  qname,
const NamespacesStackType namespaces,
const Locator *  locator = 0,
bool  fUseDefault = false 
) [pure virtual]

Create a XalanQName-derived instance.

Parameters:
qname The qname string
namespaces The stack of namespaces
Locator The current Locator, if any
fUseDefault If true, a qname without a prefix will use the default namespace
Returns:
A pointer to the new instance

Implemented in StylesheetConstructionContextDefault.

virtual const XalanQName* StylesheetConstructionContext::createXalanQName ( const XalanDOMString qname,
const NamespacesStackType namespaces,
const Locator *  locator = 0,
bool  fUseDefault = false 
) [pure virtual]

Create a XalanQName-derived instance.

Parameters:
qname The qname string
namespaces The stack of namespaces
Locator The current Locator, if any
fUseDefault If true, a qname without a prefix will use the default namespace
Returns:
A pointer to the new instance

Implemented in StylesheetConstructionContextDefault.

virtual XPath* StylesheetConstructionContext::createXPath ( const Locator *  locator,
const XalanDOMString str,
const PrefixResolver resolver,
bool  allowVariableReferences = true,
bool  allowKeyFunction = true 
) [pure virtual]

Create and initialize an xpath and return it.

This is to be used by stylesheet elements that need an XPath that is guaranteed to persist while it lives.

Parameters:
locator the locator for the XPath. May be null.
str string to match
resolver resolver for namespace resolution
Returns:
XPath for string matched

Implemented in StylesheetConstructionContextDefault.

virtual XPath* StylesheetConstructionContext::createXPath ( const Locator *  locator,
const XalanDOMChar *  str,
const PrefixResolver resolver,
bool  allowVariableReferences = true,
bool  allowKeyFunction = true 
) [pure virtual]

Create and initialize an xpath and return it.

This is to be used by stylesheet elements that need an XPath that is guaranteed to persist while it lives.

Parameters:
locator the locator for the XPath. May be null.
str string to match
resolver resolver for namespace resolution
Returns:
XPath for string matched

Implemented in StylesheetConstructionContextDefault.

virtual XPath* StylesheetConstructionContext::createXPath ( const Locator *  locator,
const XalanDOMChar *  str,
XalanDOMString::size_type  len,
const PrefixResolver resolver,
bool  allowVariableReferences = true,
bool  allowKeyFunction = true 
) [pure virtual]

Create and initialize an xpath and return it.

This is to be used by stylesheet elements that need an XPath that is guaranteed to persist while it lives.

Parameters:
locator the locator for the XPath. May be null.
str string to match
resolver resolver for namespace resolution
Returns:
XPath for string matched

Implemented in StylesheetConstructionContextDefault.

virtual void StylesheetConstructionContext::destroy ( StylesheetRoot theStylesheetRoot  )  [pure virtual]

Destroy a StylesheetRoot instance.

If this StylesheetConstructionContext instance does not own the StylesheetRoot, it will not delete it

Parameters:
theStylesheet A pointer to the StylesheetRoot instance to delete.

Implemented in StylesheetConstructionContextDefault.

virtual XalanDOMString& StylesheetConstructionContext::getCachedString (  )  [pure virtual]

Get a cached string for temporary use.

Returns:
A reference to the string

Implements XPathConstructionContext.

Implemented in StylesheetConstructionContextDefault.

virtual eElementToken StylesheetConstructionContext::getElementToken ( const XalanDOMString name  )  const [pure virtual]

Given an XSL tag name, return an integer token that corresponds to the enums defined above.

Parameters:
name a probable xsl:xxx element
Returns:
The enum value for that token, or ELEMNAME_UNDEFINED

Implemented in StylesheetConstructionContextDefault.

virtual const Locator* StylesheetConstructionContext::getLocatorFromStack (  )  const [pure virtual]

Get the locator from the top of the locator stack.

Returns:
A pointer to the Locator, or 0 if there is nothing on the stack.

Implemented in StylesheetConstructionContextDefault.

virtual const XalanDOMString& StylesheetConstructionContext::getPooledString ( const XalanDOMChar *  theString,
XalanDOMString::size_type  theLength = XalanDOMString::npos 
) [pure virtual]

Get a pooled string given the source character array.

If the string already exists in the pool, no copy will be made. If not, a copy will be made and kept for later use.

Parameters:
theString The source character array
theLength The length of the character array
Returns:
a const reference to a pooled string.

Implements XPathConstructionContext.

Implemented in StylesheetConstructionContextDefault.

virtual const XalanDOMString& StylesheetConstructionContext::getPooledString ( const XalanDOMString theString  )  [pure virtual]

Get a pooled string given the source string.

If the string already exists in the pool, no copy will be made. If not, a copy will be made and kept for later use.

Parameters:
theString The source string
Returns:
a const reference to a pooled string.

Implements XPathConstructionContext.

Implemented in StylesheetConstructionContextDefault.

virtual URLAutoPtrType StylesheetConstructionContext::getURLFromString ( const XalanDOMString urlString  )  [pure virtual]

Determine the fully qualified URI for a string.

Parameters:
urlString string to qualify
Returns:
auto pointer to fully qualified URI

Implemented in StylesheetConstructionContextDefault.

virtual URLAutoPtrType StylesheetConstructionContext::getURLFromString ( const XalanDOMString urlString,
const XalanDOMString base 
) [pure virtual]

Determine the fully qualified URI for a string.

Parameters:
urlString string to qualify
base base location for URI
Returns:
auto pointer to fully qualified URI

Implemented in StylesheetConstructionContextDefault.

virtual XalanDOMString& StylesheetConstructionContext::getURLStringFromString ( const XalanDOMString urlString,
const XalanDOMString base,
XalanDOMString theResult 
) [pure virtual]

Determine the fully qualified URI for a string.

Parameters:
urlString string to qualify
base base location for URI
Returns:
string to fully qualified URI

Implemented in StylesheetConstructionContextDefault.

virtual XalanDOMString& StylesheetConstructionContext::getURLStringFromString ( const XalanDOMString urlString,
XalanDOMString theResult 
) [pure virtual]

Determine the fully qualified URI for a string.

Parameters:
urlString string to qualify
Returns:
string to fully qualified URI

Implemented in StylesheetConstructionContextDefault.

virtual const XalanDOMString& StylesheetConstructionContext::getXalanXSLNameSpaceURL (  )  const [pure virtual]

Get the Xalan namespace for built-in extensions.

Returns:
Xalan namespace for extensions

Implemented in StylesheetConstructionContextDefault.

virtual const XalanDOMString& StylesheetConstructionContext::getXSLTNamespaceURI (  )  const [pure virtual]

Retrieve the URI for the current XSLT namespace, for example, "http://www.w3.org/1999/XSL/Transform".

Returns:
URI string

Implemented in StylesheetConstructionContextDefault.

virtual double StylesheetConstructionContext::getXSLTVersionSupported (  )  const [pure virtual]

Get the latest XSLT version currently supported.

Returns:
XSLT version number

Implemented in StylesheetConstructionContextDefault.

virtual bool StylesheetConstructionContext::isValidQName ( const XalanDOMChar *  theName,
const Stylesheet theStylesheet,
const Locator *  theLocator = 0 
) [pure virtual]

Given an name, determine if it is a valid QName.

Parameters:
theName The name to check
theStylesheet The current Stylesheet instance
theLocator The Locator for error reporting. May be 0.
Returns:
true if the string is a valid QName.

Implemented in StylesheetConstructionContextDefault.

virtual bool StylesheetConstructionContext::isXMLSpaceAttribute ( const XalanDOMChar *  theAttributeName,
const Stylesheet theStylesheet,
const Locator *  theLocator = 0 
) [pure virtual]

Given an name, determine if it is the xml:space attribute.

Parameters:
theAttributeName The name to check
theStylesheet The current Stylesheet instance
theLocator The Locator for error reporting. May be 0.
Returns:
true if the string is the xml:space attribute name

Implemented in StylesheetConstructionContextDefault.

virtual bool StylesheetConstructionContext::isXSLUseAttributeSetsAttribute ( const XalanDOMChar *  theAttributeName,
const Stylesheet theStylesheet,
const Locator *  theLocator = 0 
) [pure virtual]

Given an name, determine if it is the xsl:use-attribute-sets attribute.

Parameters:
theAttributeName The name to check
theStylesheet The current Stylesheet instance
theLocator The Locator for error reporting. May be 0.
Returns:
true if the string is the xsl:use-attribute-sets attribute name

Implemented in StylesheetConstructionContextDefault.

virtual XalanDocument* StylesheetConstructionContext::parseXML ( const XalanDOMString urlString,
DocumentHandler *  docHandler,
XalanDocument docToRegister,
ErrorHandler *  theErrorHandler = 0 
) [pure virtual]

Read in the XML file, either producing a Document or calling SAX events, and register the document in a table.

If the document has already been read in, it will not be reparsed.

Parameters:
urlString location of the XML
docHandler pointer to SAX event handler
docToRegister if using a SAX event handler, the object to register in the source docs table.
Returns:
document object, which represents the parsed XML
Exceptions:
SAXException 

Implemented in StylesheetConstructionContextDefault.

virtual void StylesheetConstructionContext::popLocatorStack (  )  [pure virtual]

Pop the locator from the top of the locator stack.

Implemented in StylesheetConstructionContextDefault.

virtual void StylesheetConstructionContext::problem ( eSource  source,
eClassification  classification,
const XalanDOMString msg,
const Locator *  locator,
const XalanNode sourceNode 
) [pure virtual]

Function that is called when a problem event occurs.

Parameters:
source Either eXMLParser, eXSLProcessor, or eXPATH.
classification Either eMessage, eWarning, or eError.
locator The current Locator instance for the stylesheet. Maybe be a null pointer.
sourceNode The current source node, if any.
msg The error message.

Implements XPathConstructionContext.

Implemented in StylesheetConstructionContextDefault.

virtual void StylesheetConstructionContext::problem ( eSource  source,
eClassification  classification,
const XalanDOMString msg,
const XalanNode sourceNode 
) [pure virtual]

Function that is called when a problem event occurs.

This version assumes location information is already formatted into the message.

Parameters:
source either eXMLPARSER, eXSLPROCESSOR, or eXPATH
classification either eMESSAGE, eERROR or eWARNING
msg string message explaining the problem.

Implements XPathConstructionContext.

Implemented in StylesheetConstructionContextDefault.

virtual void StylesheetConstructionContext::pushLocatorOnStack ( const Locator *  locator  )  [pure virtual]

Push a locator on to the locator stack.

Parameters:
A pointer to the Locator to push.

Implemented in StylesheetConstructionContextDefault.

virtual bool StylesheetConstructionContext::releaseCachedString ( XalanDOMString theString  )  [pure virtual]

Return a cached string.

Parameters:
theString The string to release.
Returns:
true if the string was released successfully.

Implements XPathConstructionContext.

Implemented in StylesheetConstructionContextDefault.

virtual void StylesheetConstructionContext::reset (  )  [pure virtual]

Reset the instance.

Any existing objects created by the instance will be destroyed.

Implements XPathConstructionContext.

Implemented in StylesheetConstructionContextDefault.

virtual const XalanQName** StylesheetConstructionContext::tokenizeQNames ( size_type count,
const XalanDOMChar *  qnameTokens,
const NamespacesStackType namespaces,
const Locator *  locator = 0,
bool  fUseDefault = false 
) [pure virtual]

Tokenize a string and return the QNames corresponding to those tokens.

Parameters:
count The number of namespaces in the vector returned
qnameTokens The string to tokenize
namespaces The stack of namespaces
Locator The current Locator, if any
fUseDefault If true, qnames without prefixes will use the default namespace
Returns:
The resulting vector of XalanQName instances.

Implemented in StylesheetConstructionContextDefault.


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++ XSLT Processor Version 1.11
Copyright © 1999-2012 The Apache Software Foundation.
All Rights Reserved.

Apache Logo