18#if !defined(STYLESHEETCONSTRUCTIONCONTEXT_HEADER_GUARD_1357924680)
19#define STYLESHEETCONSTRUCTIONCONTEXT_HEADER_GUARD_1357924680
42namespace XERCES_CPP_NAMESPACE
45 class DocumentHandler;
58using xercesc::AttributeList;
59using xercesc::DocumentHandler;
60using xercesc::Locator;
67class ElemTemplateElement;
68class ExtensionNSHandler;
73class XalanMatchPatternData;
95 ELEMNAME_UNDEFINED = -2,
154 ELEMNAME_EXTENSION_HANDLER
398 virtual const Locator*
662 const AttributeList&
atts,
663 const Locator*
locator = 0) = 0;
683 const AttributeList&
atts,
684 const Locator*
locator = 0) = 0;
706 bool disableOutputEscaping,
707 const Locator*
locator = 0) = 0;
727 const AttributeList&
atts,
729 const Locator*
locator = 0) = 0;
#define XALAN_XSLT_EXPORT
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
Class to hold a part, either a string or XPath, of an Attribute Value Template.
Class to hold an Attribute Value Template.
This class defines an interface for classes that resolve namespace prefixes to their URIs.
virtual void problem(eSource source, eClassification classification, const XalanDOMString &msg, const XalanNode *sourceNode)=0
Function that is called when a problem event occurs.
virtual XPath * createXPath(const Locator *locator, const XalanDOMChar *str, const PrefixResolver &resolver, bool allowVariableReferences=true, bool allowKeyFunction=true)=0
Create and initialize an xpath and return it.
virtual XPath * createXPath(const Locator *locator, const XalanDOMChar *str, XalanDOMString::size_type len, const PrefixResolver &resolver, bool allowVariableReferences=true, bool allowKeyFunction=true)=0
Create and initialize an xpath and return it.
virtual const AVTPart * createAVTPart(const XalanDOMChar *theString, XalanDOMString::size_type theLength=XalanDOMString::npos)=0
Create an AVTPart instance.
virtual const Locator * getLocatorFromStack() const =0
Get the locator from the top of the locator stack.
virtual XalanDOMString & getURLStringFromString(const XalanDOMString &urlString, XalanDOMString &theResult)=0
Determine the fully qualified URI for a string.
virtual const AVT * createAVT(const Locator *locator, const XalanDOMChar *name, const XalanDOMChar *stringedValue, const PrefixResolver &resolver)=0
Create an AVT instance.
virtual const AVTPart * createAVTPart(const Locator *locator, const XalanDOMChar *str, XalanDOMString::size_type len, const PrefixResolver &resolver)=0
Create an AVTPart instance.
virtual ElemTemplateElement * createElement(int token, Stylesheet &stylesheetTree, const AttributeList &atts, const Locator *locator=0)=0
Create a stylesheet element for the provided type.
virtual StylesheetRoot * create(const XalanDOMString &theBaseIdentifier)=0
Create a new StylesheetRoot instance.
virtual XalanDOMString & getCachedString()=0
Get a cached string for temporary use.
XalanQName::NamespacesStackType NamespacesStackType
virtual void destroy(StylesheetRoot *theStylesheetRoot)=0
Destroy a StylesheetRoot instance.
virtual ElemTemplateElement * createElement(Stylesheet &stylesheetTree, const XalanDOMChar *name, const AttributeList &atts, ExtensionNSHandler &handler, const Locator *locator=0)=0
Create an element to handle an extension element.
virtual ElemTemplateElement * createElement(Stylesheet &stylesheetTree, const XalanDOMChar *chars, XalanDOMString::size_type length, bool preserveSpace, bool disableOutputEscaping, const Locator *locator=0)=0
Create a an element for literal text.
virtual ~StylesheetConstructionContext()
URISupport::URLAutoPtrType URLAutoPtrType
virtual XPath * createMatchPattern(const Locator *locator, const XalanDOMChar *str, const PrefixResolver &resolver, bool allowVariableReferences=true, bool allowKeyFunction=true)=0
Create and initialize an xpath for a match pattern and return it.
virtual URLAutoPtrType getURLFromString(const XalanDOMString &urlString, const XalanDOMString &base)=0
Determine the fully qualified URI for a string.
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 Locator *locator=0, bool fUseDefault=false)=0
Create a XalanQName-derived instance.
StylesheetConstructionContext(MemoryManager &theManager)
virtual XalanDOMChar * allocateXalanDOMCharVector(XalanDOMString::size_type theLength)=0
Allocate a vector of XalanDOMChar of the specified size.
virtual const XalanDOMString & getXalanXSLNameSpaceURL() const =0
Get the Xalan namespace for built-in extensions.
virtual bool isXSLUseAttributeSetsAttribute(const XalanDOMChar *theAttributeName, const Stylesheet &theStylesheet, const Locator *theLocator=0)=0
Given an name, determine if it is the xsl:use-attribute-sets attribute.
virtual void popLocatorStack()=0
Pop the locator from the top of the locator stack.
virtual StylesheetRoot * create(const XSLTInputSource &theInputSource)=0
Create a new StylesheetRoot instance.
virtual void pushLocatorOnStack(const Locator *locator)=0
Push a locator on to the locator stack.
virtual const XalanQName ** tokenizeQNames(size_type &count, const XalanDOMChar *qnameTokens, const NamespacesStackType &namespaces, const Locator *locator=0, bool fUseDefault=false)=0
Tokenize a string and return the QNames corresponding to those tokens.
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 XalanQName * createXalanQName(const XalanDOMChar *qname, const NamespacesStackType &namespaces, const Locator *locator=0, bool fUseDefault=false)=0
Create a XalanQName-derived instance.
virtual XPath * createMatchPattern(const Locator *locator, const XalanDOMString &str, const PrefixResolver &resolver, bool allowVariableReferences=true, bool allowKeyFunction=true)=0
Create and initialize an xpath for a match pattern and return it.
virtual XPath * createXPath(const Locator *locator, const XalanDOMString &str, const PrefixResolver &resolver, bool allowVariableReferences=true, bool allowKeyFunction=true)=0
Create and initialize an xpath and return it.
virtual eElementToken getElementToken(const XalanDOMString &name) const =0
Given an XSL tag name, return an integer token that corresponds to the enums defined above.
eElementToken
IDs for XSL element types.
@ ELEMNAME_EXTENSION_CALL
@ ELEMNAME_TEXT_LITERAL_RESULT
@ ELEMNAME_PRESERVE_SPACE
@ ELEMNAME_APPLY_TEMPLATES
@ ELEMNAME_DECIMAL_FORMAT
@ ELEMNAME_LITERAL_RESULT
@ ELEMNAME_FORWARD_COMPATIBLE
@ ELEMNAME_NAMESPACE_ALIAS
virtual XalanDOMString & getURLStringFromString(const XalanDOMString &urlString, const XalanDOMString &base, XalanDOMString &theResult)=0
Determine the fully qualified URI for a string.
virtual bool isXMLSpaceAttribute(const XalanDOMChar *theAttributeName, const Stylesheet &theStylesheet, const Locator *theLocator=0)=0
Given an name, determine if it is the xml:space attribute.
virtual URLAutoPtrType getURLFromString(const XalanDOMString &urlString)=0
Determine the fully qualified URI for a string.
virtual ElemTemplateElement * createElement(int token, Stylesheet &stylesheetTree, const XalanDOMChar *name, const AttributeList &atts, const Locator *locator=0)=0
Create a elements which have specific names.
virtual void problem(eSource source, eClassification classification, const XalanDOMString &msg, const Locator *locator, const XalanNode *sourceNode)=0
Function that is called when a problem event occurs.
virtual bool isValidQName(const XalanDOMChar *theName, const Stylesheet &theStylesheet, const Locator *theLocator=0)=0
Given an name, determine if it is a valid QName.
virtual double getXSLTVersionSupported() const =0
Get the latest XSLT version currently supported.
virtual void reset()=0
Reset the instance.
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 temp...
virtual XalanDocument * parseXML(const XalanDOMString &urlString, DocumentHandler *docHandler, XalanDocument *docToRegister, ErrorHandler *theErrorHandler=0)=0
Read in the XML file, either producing a Document or calling SAX events, and register the document in...
virtual const XalanDOMString & getXSLTNamespaceURI() const =0
Retrieve the URI for the current XSLT namespace, for example, "http://www.w3.org/1999/XSL/Transform".
virtual Stylesheet * create(StylesheetRoot &theStylesheetRoot, const XalanDOMString &theBaseIdentifier)=0
Create a new Stylesheet instance.
virtual const AVT ** allocateAVTPointerVector(size_type theLength)=0
Allocate a vector of const AVT* of the specified length.
virtual const XalanDOMString & getPooledString(const XalanDOMString &theString)=0
Get a pooled string given the source string.
virtual bool releaseCachedString(XalanDOMString &theString)=0
Return a cached string.
virtual const XalanDOMString & getPooledString(const XalanDOMChar *theString, XalanDOMString::size_type theLength=XalanDOMString::npos)=0
Get a pooled string given the source character array.
This acts as the stylesheet root of the stylesheet tree, and holds values that are shared by all styl...
This class represents the base stylesheet or an "import" stylesheet.
Xalan implementation of deque.
This class contains information concerning a match pattern in a stylesheet.
Class to represent a qualified name.
xercesc::AttributeList AttributeListType
xercesc::DocumentHandler DocumentHandlerType