## Xalan-C++ API Documentation

### The Xalan C++ XSLT Processor Version 1.9

Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

# StylesheetConstructionContext Class Reference

Inheritance diagram for StylesheetConstructionContext:

[legend]
Collaboration diagram for StylesheetConstructionContext:

[legend]
List of all members.

## Public Types

- typedef XalanQName::NamespacesStackType NamespacesStackType
- typedef size_t size_type
- typedef URISupport::URLAutoPtrType URLAutoPtrType
- enum eElementToken {
  ELEMNAME_UNDEFINED = -2, ELEMNAME_EMPTY = -1, 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
  }
    IDs for XSL element types. More...

## Public Member Functions

- StylesheetConstructionContext (MemoryManagerType &theManager)
- virtual ~StylesheetConstructionContext ()
- virtual void reset ()=0
    Reset the StylesheetConstructionContext instance.
- virtual StylesheetRoot * create (const XalanDOMString &theBaseIdentifier)=0
    Create a new StylesheetRoot instance.
- virtual StylesheetRoot * create (const XSLTInputSource &theInputSource)=0
    Create a new StylesheetRoot instance.
- virtual Stylesheet * create (StylesheetRoot &theStylesheetRoot, const XalanDOMString &theBaseIdentifier)=0
    Create a new Stylesheet instance.
- virtual void destroy (StylesheetRoot *theStylesheetRoot)=0
    Destroy a StylesheetRoot instance.
- virtual URLAutoPtrType getURLFromString (const XalanDOMString &urlString)=0
    Determine the fully qualified URI for a string.
- virtual XalanDOMString & getURLStringFromString (const XalanDOMString &urlString, XalanDOMString &theResult)=0
    Determine the fully qualified URI for a string.
- virtual URLAutoPtrType getURLFromString (const XalanDOMString &urlString, const XalanDOMString &base)=0
    Determine the fully qualified URI for a string.
- virtual XalanDOMString & getURLStringFromString (const XalanDOMString &urlString, const XalanDOMString &base, XalanDOMString &theResult)=0
    Determine the fully qualified URI for a string.
- virtual const XalanDOMString & getXSLTNamespaceURI () const=0
    Retrieve the URI for the current XSLT namespace, for example, "http://www.w3.org/1999/XSL/Transform".
- virtual XPath * createMatchPattern (const LocatorType *locator, const XalanDOMString &str, const PrefixResolver &resolver)=0
    Create and initialize an xpath for a match pattern and return it.
- virtual XPath * createMatchPattern (const LocatorType *locator, const XalanDOMChar *str, const PrefixResolver &resolver)=0
    Create and initialize an xpath for a match pattern and return it.
- virtual XPath * createXPath (const LocatorType *locator, const XalanDOMString &str, const PrefixResolver &resolver)=0
    Create and initialize an xpath and return it.
- virtual XPath * createXPath (const LocatorType *locator, const XalanDOMChar *str, const PrefixResolver &resolver)=0
    Create and initialize an xpath and return it.
- virtual XPath * createXPath (const LocatorType *locator, const XalanDOMChar *str, XalanDOMString::size_type len, const PrefixResolver &resolver)=0
    Create and initialize an xpath and return it.
- virtual const LocatorType * getLocatorFromStack () const=0
    Get the locator from the top of the locator stack.
- virtual void pushLocatorOnStack (const LocatorType *locator)=0
    Push a locator on to the locator stack.
- virtual void popLocatorStack ()=0
    Pop the locator from the top of the locator stack.
- virtual const XalanDOMString & getXalanXSLNameSpaceURL () const=0
    Get the Xalan namespace for built-in extensions.
- virtual XalanDocument * parseXML (const XalanDOMString &urlString, DocumentHandlerType *docHandler, XalanDocument *docToRegister)=0
    Read in the XML file, either producing a Document or calling SAX events, and register the document in a table.
- virtual bool isXMLSpaceAttribute (const XalanDOMChar *theAttributeName, const Stylesheet &theStylesheet, const LocatorType *theLocator=0)=0
    Given an name, determine if it is the xml:space attribute.
- virtual bool isXSLUseAttributeSetsAttribute (const XalanDOMChar *theAttributeName, const Stylesheet &theStylesheet, const LocatorType *theLocator=0)=0
    Given an name, determine if it is the xsl:use-attribute-sets attribute.
- virtual bool isValidQName (const XalanDOMChar *theName, const Stylesheet &theStylesheet, const LocatorType *theLocator=0)=0
    Given an name, determine if it is a valid QName.
- virtual eElementToken getElementToken (const XalanDOMString &name) const=0
    Given an XSL tag name, return an integer token that corresponds to the enums defined above.
- virtual double getXSLTVersionSupported () const=0
    Get the latest XSLT version currently supported.
- virtual const XalanDOMString & getPooledString (const XalanDOMString &theString)=0
    Get a pooled string given the source string.
- virtual const XalanDOMString & getPooledString (const XalanDOMChar *theString, XalanDOMString::size_type theLength=XalanDOMString::npos)=0
    Get a pooled string given the source character array.
- virtual XalanDOMString & getCachedString ()=0
    Get a cached string for temporary use.
- virtual bool releaseCachedString (XalanDOMString &theString)=0
    Return a cached string.
- virtual XalanDOMChar * allocateXalanDOMCharVector (XalanDOMString::size_type theLength)=0
    Allocate a vector of XalanDOMChar of the specified size.
- virtual XalanDOMChar * allocateXalanDOMCharVector (const XalanDOMChar *theString, XalanDOMString::size_type theLength=XalanDOMString::npos, bool fTerminate=true)=0
    Allocate a vector of XalanDOMChar of the specified size.
- virtual const AVT * createAVT (const LocatorType *locator, const XalanDOMChar *name, const XalanDOMChar *stringedValue, const PrefixResolver &resolver)=0
    Create an AVT instance.
- virtual const AVTPart * createAVTPart (const XalanDOMChar *theString, XalanDOMString::size_type theLength=XalanDOMString::npos)=0
    Create an AVTPart instance.
- virtual const AVTPart * createAVTPart (const LocatorType *locator, const XalanDOMChar *str, XalanDOMString::size_type len, const PrefixResolver &resolver)=0
    Create an AVTPart instance.
- virtual const AVT ** allocateAVTPointerVector (size_type theLength)=0
    Allocate a vector of const AVT* of the specified length.
- virtual const AVTPart ** allocateAVTPartPointerVector (size_type theLength)=0
    Allocate a vector of const AVTPart* of the specified length.
- virtual const XalanQName * createXalanQName (const XalanDOMString &qname, const NamespacesStackType &namespaces, const LocatorType *locator=0, bool fUseDefault=false)=0
    Create a XalanQName-derived instance.
- virtual const XalanQName * createXalanQName (const XalanDOMChar *qname, const NamespacesStackType &namespaces, const LocatorType *locator=0, bool fUseDefault=false)=0
    Create a XalanQName-derived instance.
- virtual const XalanQName ** tokenizeQNames (size_type &count, const XalanDOMChar *qnameTokens, const NamespacesStackType &namespaces, const LocatorType *locator=0, bool fUseDefault=false)=0
    Tokenize a string and return the QNames corresponding to those tokens.
- virtual ElemTemplateElement * createElement (int token, Stylesheet &stylesheetTree, const AttributeListType &atts, const LocatorType *locator=0)=0
    Create a stylesheet element for the provided type.
- virtual ElemTemplateElement * createElement (int token, Stylesheet &stylesheetTree, const XalanDOMChar *name, const AttributeListType &atts, const LocatorType *locator=0)=0
    Create a elements which have specific names.
- virtual ElemTemplateElement * createElement (Stylesheet &stylesheetTree, const XalanDOMChar *chars, XalanDOMString::size_type length, bool preserveSpace, bool disableOutputEscaping, const LocatorType *locator=0)=0
    Create a an element for literal text.
- virtual ElemTemplateElement * createElement (Stylesheet &stylesheetTree, const XalanDOMChar *name, const AttributeListType &atts, ExtensionNSHandler &handler, const LocatorType *locator=0)=0
    Create an element to handle an extension element.
- virtual const XalanMatchPatternData * createXalanMatchPatternData (const ElemTemplate &theTemplate, size_type thePosition, const XalanDOMString &theTargetString, const XPath &theMatchPattern, const XalanDOMString &thePatternString, XPath::eMatchScore thePriority)=0
    Create an instance of XalanMatchPatternData, which describes data related to a match pattern and template in stylesheet.
- virtual void error (const XalanDOMString &msg, const XalanNode *sourceNode=0, const ElemTemplateElement *styleNode=0) const=0
- virtual void error (const XalanDOMString &msg, const XalanNode *sourceNode, const LocatorType *locator) const=0
- virtual void warn (const XalanDOMString &msg, const XalanNode *sourceNode=0, const ElemTemplateElement *styleNode=0) const=0
- virtual void warn (const XalanDOMString &msg, const XalanNode *sourceNode, const LocatorType *locator) const=0
- virtual void message (const XalanDOMString &msg, const XalanNode *sourceNode=0, const ElemTemplateElement *styleNode=0) const=0
- virtual void message (const XalanDOMString &msg, const XalanNode *sourceNode, const LocatorType *locator) const=0

## Member Typedef Documentation

typedef XalanQName::NamespacesStackType StylesheetConstructionContext::NamespacesStackType

typedef size_t StylesheetConstructionContext::size_type

typedef URISupport::URLAutoPtrType StylesheetConstructionContext::URLAutoPtrType

## 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]`

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

Implemented in StylesheetConstructionContextDefault.

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

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

Implemented in StylesheetConstructionContextDefault.

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

Implemented in StylesheetConstructionContextDefault.

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

Implemented in StylesheetConstructionContextDefault.

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

Implemented in StylesheetConstructionContextDefault.

virtual XPath* StylesheetConstructionContext::createMatchPattern | ( | const LocatorType * | locator,
|  | const XalanDOMChar * | str,
|  | const PrefixResolver & | resolver
| ) | `[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

Returns:
  XPath for match pattern

Implemented in StylesheetConstructionContextDefault.

virtual XPath* StylesheetConstructionContext::createMatchPattern | ( | const LocatorType * | locator,
|  | const XalanDOMString & | str,
|  | const PrefixResolver & | resolver
| ) | `[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

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

Implemented in StylesheetConstructionContextDefault.

virtual 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

Implemented in StylesheetConstructionContextDefault.

virtual XPath* StylesheetConstructionContext::createXPath | ( | const LocatorType * | locator,
|  | const XalanDOMChar * | str,
|  | XalanDOMString::size_type | len,
|  | const PrefixResolver & | resolver
| ) | `[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 LocatorType * | locator,
|  | const XalanDOMChar * | str,
|  | const PrefixResolver & | resolver
| ) | `[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 LocatorType * | locator,
|  | const XalanDOMString & | str,
|  | const PrefixResolver & | resolver
| ) | `[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 void StylesheetConstructionContext::error | ( | const XalanDOMString & | msg,
|  | const XalanNode * | sourceNode,
|  | const LocatorType * | locator
| ) | const`[pure virtual]`

| Implements XPathConstructionContext. Implemented in StylesheetConstructionContextDefault.

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

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

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

Implemented in StylesheetConstructionContextDefault.

virtual 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

Implemented in StylesheetConstructionContextDefault.

virtual 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

Implemented in StylesheetConstructionContextDefault.

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

| Implemented in StylesheetConstructionContextDefault.

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

| Implemented in StylesheetConstructionContextDefault.

virtual 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 |

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

Implemented in StylesheetConstructionContextDefault.

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

| Implements XPathConstructionContext. Implemented in StylesheetConstructionContextDefault.

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

| Implemented in StylesheetConstructionContextDefault.

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

- StylesheetConstructionContext.hpp

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.9 Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.