18 #if !defined(XALAN_STYLESHEETROOT_HEADER_GUARD)
19 #define XALAN_STYLESHEETROOT_HEADER_GUARD
45 XALAN_CPP_NAMESPACE_BEGIN
89 MemoryManager& theManager,
96 return m_version.getMemoryManager();
130 setupFormatterListener(
143 return m_outputMethod;
161 theResult.
assign(m_version);
175 return m_indentResult == eIndentNoImplicit ||
176 m_indentResult == eIndentNoExplicit ?
false :
true;
190 return m_indentResult == eIndentNoExplicit ?
false :
true;
202 theResult.
assign(m_encoding);
216 theResult.
assign(m_mediatype);
230 theResult.
assign(m_doctypeSystem);
244 theResult.
assign(m_doctypePublic);
257 return m_omitxmlDecl;
269 theResult.
assign(m_standalone);
282 return m_defaultTextRule;
293 return m_defaultRule;
304 return m_defaultRootRule;
316 const XalanDOMChar* name,
328 return m_importStack;
339 return m_importStack;
350 m_indentResult = bIndent ==
true ? eIndentYesExplicit : eIndentNoExplicit;
362 m_outputMethod = meth;
368 assert((m_hasCDATASectionElems ==
false && m_cdataSectionElems.empty() == true ) ||
369 ( m_hasCDATASectionElems ==
true && m_cdataSectionElems.empty() ==
false));
371 return m_hasCDATASectionElems;
382 isCDATASectionElementName(
const XalanQName& theQName)
const;
400 const XalanQName& qname,
405 const Locator* locator,
406 KeyTablesTableType& theKeysTable)
const;
411 return m_elemNumberNextID++;
417 return m_elemNumberNextID;
423 return m_hasStripOrPreserveSpace;
435 if (hasPreserveOrStripSpaceElements() ==
true &&
438 return internalShouldStripSourceNode(theNode);
447 #if !defined(XALAN_RECURSIVE_STYLESHEET_EXECUTION)
460 const XalanQName& theQName,
462 const Locator* theLocator)
const;
467 const XalanQName& theQName,
468 const Locator* theLocator)
const;
499 internalShouldStripSourceNode(
const XalanText& theNode)
const;
507 enum eIndentType { eIndentNoImplicit, eIndentNoExplicit, eIndentYesImplicit, eIndentYesExplicit };
513 eIndentType m_indentResult;
569 XalanQNameVectorType m_cdataSectionElems;
571 bool m_hasCDATASectionElems;
577 URLStackType m_importStack;
601 bool m_needToBuildKeysTable;
606 bool m_outputEscapeURLs;
621 unsigned long m_elemNumberNextID;
626 AttributeSetMapType m_attributeSetsMap;
632 bool m_hasStripOrPreserveSpace;
647 XALAN_CPP_NAMESPACE_END
651 #endif // XALAN_STYLESHEETROOT_HEADER_GUARD
virtual bool isWhitespace() const =0
Determine whether the text node instance is composed entirely of XML whitespace.
AttributeSetVectorTypeDecl AttributeSetVectorType
XalanVector< ElemAttributeSet * > AttributeSetVectorTypeDecl
Local implementation of MutableNodeRefList.
void setIndentResult(bool bIndent)
Change the value of the flag for indenting results.
bool hasPreserveOrStripSpaceElements() const
ElemTemplateElement * getDefaultRootRule() const
Get the template representing the default root rule.
XalanDOMString & getOutputEncoding(XalanDOMString &theResult) const
Get the output encoding string that was specified in the xsl:output element.
XalanDOMString & getOutputVersion(XalanDOMString &theResult) const
Get the output version string that was specified in the xsl:output element.
This acts as the stylesheet root of the stylesheet tree, and holds values that are shared by all styl...
XalanDOMString & getOutputMediaType(XalanDOMString &theResult) const
Get the media-type string that was specified in the xsl:output element.
bool getHTMLOutputIndent() const
Determine if output indenting should be enabled for HTML output.
bool getOmitOutputXMLDecl() const
Determine whether to output XML declarations.
bool getOutputIndent() const
Determine if output indenting was specified in the xsl:output element.
XalanDOMString & getOutputStandalone(XalanDOMString &theResult) const
Get the standalone string that was specified in the xsl:output element.
ElemTemplateElement * getDefaultRule() const
Get the template representing the default rule.
bool hasCDATASectionElements() const
void setOutputMethod(FormatterListener::eFormat meth)
Change the value of the output method, one of the FormatterListener::eFormat values.
MemoryManager & getMemoryManager()
XalanDOMString & assign(const XalanDOMChar *theSource)
XalanMap< const XalanQName *, AttributeSetVectorType > AttributeSetMapType
XalanVector< const XalanQName * > XalanQNameVectorType
XALAN_CPP_NAMESPACE_BEGIN typedef size_t size_type
XalanDOMString & getOutputDoctypeSystem(XalanDOMString &theResult) const
Get the doctype-system-id string that was specified in the xsl:output element.
This class defines an interface for classes that resolve namespace prefixes to their URIs...
XalanDOMString & getOutputDoctypePublic(XalanDOMString &theResult) const
Get the doctype-public-id string that was specified in the xsl:output element.
const XalanDOMString & getEncoding() const
Get the character encoding in use.
#define XALAN_USES_MEMORY_MANAGER(Type)
#define XALAN_XSLT_EXPORT
const URLStackType & getImportStack() const
Retrieve the stack of imported stylesheets.
bool shouldStripSourceNode(const XalanText &theNode) const
Check to see if a whitespace text node should be stripped from the source tree.
bool operator==(const ElemAttributeSet &theLHS, const ElemAttributeSet &theRHS)
XERCES_CPP_NAMESPACE_QUALIFIER AttributeList AttributeListType
URLStackType & getImportStack()
Retrieve the stack of imported stylesheets.
FormatterListener::eFormat getOutputMethod() const
Return the output method that was specified in the stylesheet.
ElemTemplateElement * getDefaultTextRule() const
Get the template representing the default rule for text.
This class represents the base stylesheet or an "import" stylesheet.
unsigned long getElemNumberCount() const
Xalan implementation of a hashtable.
Class to represent a qualified name.
bool isOutputMethodSet() const
unsigned long getNextElemNumberID()