Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

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

StylesheetConstructionContext Class Reference

#include <StylesheetConstructionContext.hpp>

Inheritance diagram for StylesheetConstructionContext:

Inheritance graph
[legend]
Collaboration diagram for StylesheetConstructionContext:

Collaboration graph
[legend]
List of all members.

Public Types

Public Methods


Member Typedef Documentation

typedef XalanQName::NamespacesStackType StylesheetConstructionContext::NamespacesStackType
 

typedef URISupport::URLAutoPtrType StylesheetConstructionContext::URLAutoPtrType
 

typedef size_t StylesheetConstructionContext::size_type
 


Member Enumeration Documentation

enum StylesheetConstructionContext::eElementToken
 

IDs for XSL element types.

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

Enumeration values:
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  


Constructor & Destructor Documentation

StylesheetConstructionContext::StylesheetConstructionContext ( MemoryManagerType & theManager ) [explicit]
 

StylesheetConstructionContext::~StylesheetConstructionContext ( ) [virtual]
 


Member Function Documentation

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.

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented in StylesheetConstructionContextDefault.

const AVT * StylesheetConstructionContext::createAVT ( const LocatorType * 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.

Reimplemented in StylesheetConstructionContextDefault.

const AVTPart * StylesheetConstructionContext::createAVTPart ( const LocatorType * 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.

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented in StylesheetConstructionContextDefault.

ElemTemplateElement * StylesheetConstructionContext::createElement ( Stylesheet & stylesheetTree,
const XalanDOMChar * name,
const AttributeListType & atts,
ExtensionNSHandler & handler,
const LocatorType * 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.

Reimplemented in StylesheetConstructionContextDefault.

ElemTemplateElement * StylesheetConstructionContext::createElement ( Stylesheet & stylesheetTree,
const XalanDOMChar * chars,
XalanDOMString::size_type length,
bool preserveSpace,
bool disableOutputEscaping,
const LocatorType * 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.

Reimplemented in StylesheetConstructionContextDefault.

ElemTemplateElement * StylesheetConstructionContext::createElement ( int token,
Stylesheet & stylesheetTree,
const XalanDOMChar * name,
const AttributeListType & atts,
const LocatorType * 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.

Reimplemented in StylesheetConstructionContextDefault.

ElemTemplateElement * StylesheetConstructionContext::createElement ( int token,
Stylesheet & stylesheetTree,
const AttributeListType & atts,
const LocatorType * 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.

Reimplemented in StylesheetConstructionContextDefault.

XPath * StylesheetConstructionContext::createMatchPattern ( const LocatorType * 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

Reimplemented in StylesheetConstructionContextDefault.

XPath * StylesheetConstructionContext::createMatchPattern ( const LocatorType * 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

Reimplemented in StylesheetConstructionContextDefault.

XPath * StylesheetConstructionContext::createXPath ( const LocatorType * 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

Reimplemented in StylesheetConstructionContextDefault.

XPath * StylesheetConstructionContext::createXPath ( const LocatorType * 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

Reimplemented in StylesheetConstructionContextDefault.

XPath * StylesheetConstructionContext::createXPath ( const LocatorType * 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

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented in StylesheetConstructionContextDefault.

const XalanQName * StylesheetConstructionContext::createXalanQName ( const XalanDOMChar * qname,
const NamespacesStackType & namespaces,
const LocatorType * 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

Reimplemented in StylesheetConstructionContextDefault.

const XalanQName * StylesheetConstructionContext::createXalanQName ( const XalanDOMString & qname,
const NamespacesStackType & namespaces,
const LocatorType * 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

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented in StylesheetConstructionContextDefault.

void StylesheetConstructionContext::error ( const XalanDOMString & msg,
const XalanNode * sourceNode,
const LocatorType * locator ) const [pure virtual]
 

Reimplemented in StylesheetConstructionContextDefault.

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

Reimplemented in StylesheetConstructionContextDefault.

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

Get a cached string for temporary use.

Returns:
A reference to the string

Reimplemented from XPathConstructionContext.

Reimplemented in StylesheetConstructionContextDefault.

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

Reimplemented in StylesheetConstructionContextDefault.

const LocatorType * 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.

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented from XPathConstructionContext.

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented from XPathConstructionContext.

Reimplemented in StylesheetConstructionContextDefault.

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

Reimplemented in StylesheetConstructionContextDefault.

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

Reimplemented in StylesheetConstructionContextDefault.

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

Reimplemented in StylesheetConstructionContextDefault.

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

Reimplemented in StylesheetConstructionContextDefault.

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

Reimplemented in StylesheetConstructionContextDefault.

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

Get the latest XSLT version currently supported.

Returns:
XSLT version number

Reimplemented in StylesheetConstructionContextDefault.

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

Get the Xalan namespace for built-in extensions.

Returns:
Xalan namespace for extensions

Reimplemented in StylesheetConstructionContextDefault.

bool StylesheetConstructionContext::isValidQName ( const XalanDOMChar * theName,
const Stylesheet & theStylesheet,
const LocatorType * 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.

Reimplemented in StylesheetConstructionContextDefault.

bool StylesheetConstructionContext::isXMLSpaceAttribute ( const XalanDOMChar * theAttributeName,
const Stylesheet & theStylesheet,
const LocatorType * 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

Reimplemented in StylesheetConstructionContextDefault.

bool StylesheetConstructionContext::isXSLUseAttributeSetsAttribute ( const XalanDOMChar * theAttributeName,
const Stylesheet & theStylesheet,
const LocatorType * 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

Reimplemented in StylesheetConstructionContextDefault.

void StylesheetConstructionContext::message ( const XalanDOMString & msg,
const XalanNode * sourceNode,
const LocatorType * locator ) const [pure virtual]
 

Reimplemented in StylesheetConstructionContextDefault.

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

Reimplemented in StylesheetConstructionContextDefault.

XalanDocument * StylesheetConstructionContext::parseXML ( const XalanDOMString & urlString,
DocumentHandlerType * docHandler,
XalanDocument * docToRegister ) [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  

Reimplemented in StylesheetConstructionContextDefault.

void StylesheetConstructionContext::popLocatorStack ( ) [pure virtual]
 

Pop the locator from the top of the locator stack.

Reimplemented in StylesheetConstructionContextDefault.

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

Push a locator on to the locator stack.

Parameters:
A   pointer to the Locator to push.

Reimplemented in StylesheetConstructionContextDefault.

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.

Reimplemented from XPathConstructionContext.

Reimplemented in StylesheetConstructionContextDefault.

void StylesheetConstructionContext::reset ( ) [pure virtual]
 

Reset the StylesheetConstructionContext instance.

Any existing objects created by the instance will be destroyed.

Reimplemented from XPathConstructionContext.

Reimplemented in StylesheetConstructionContextDefault.

const XalanQName ** StylesheetConstructionContext::tokenizeQNames ( size_type & count,
const XalanDOMChar * qnameTokens,
const NamespacesStackType & namespaces,
const LocatorType * 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.

Reimplemented in StylesheetConstructionContextDefault.

void StylesheetConstructionContext::warn ( const XalanDOMString & msg,
const XalanNode * sourceNode,
const LocatorType * locator ) const [pure virtual]
 

Reimplemented in StylesheetConstructionContextDefault.

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

Reimplemented 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.

dot

Xalan-C++ XSLT Processor Version 1.10
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.

Apache Logo