<HTML><HEAD><TITLE>Xalan-C++ API Documentation</TITLE></HEAD>
<BODY>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center">The Xalan C++ XSLT Processor Version 1.10</h3>
</BODY>
<!-- Generated by Doxygen 1.2.8.1 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
<hr><h1>ElemTextLiteral  Class Reference</h1><code>#include &lt;<a class="el" href="ElemTextLiteral_8hpp-source.html">ElemTextLiteral.hpp</a>&gt;</code>
<p>
Inheritance diagram for ElemTextLiteral:<p><center><img src="classElemTextLiteral__inherit__graph.gif" border="0" usemap="#ElemTextLiteral_inherit_map" alt="Inheritance graph"></center>
<map name="ElemTextLiteral_inherit_map">
<area href="classElemTemplateElement.html" shape="rect" coords="6,117,156,93">
<area href="classPrefixResolver.html" shape="rect" coords="30,42,132,18">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ElemTextLiteral:<p><center><img src="classElemTextLiteral__coll__graph.gif" border="0" usemap="#ElemTextLiteral_coll_map" alt="Collaboration graph"></center>
<map name="ElemTextLiteral_coll_map">
<area href="classElemTemplateElement.html" shape="rect" coords="270,113,420,89">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classElemTextLiteral-members.html">List of all members.</a><h2>Public Methods</h2>
<ul>
<li><a class="el" href="classElemTextLiteral.html#a0">ElemTextLiteral</a> (<a class="el" href="classStylesheetConstructionContext.html">StylesheetConstructionContext</a> &amp;constructionContext, <a class="el" href="ExtensionNSHandler_8hpp.html#a1">Stylesheet</a> &amp;stylesheetTree, int lineNumber, int columnNumber, const XalanDOMChar *ch, <a class="el" href="classXalanDOMString.html#s6">XalanDOMString::size_type</a> start, <a class="el" href="classXalanDOMString.html#s6">XalanDOMString::size_type</a> length, bool fPreserveSpace, bool fDisableOutputEscaping)
<dl class="el"><dd><font size=-1><em>Construct an object corresponding to literal text element.</em> <a href="#a0">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classElemTextLiteral.html#a1">~ElemTextLiteral</a> ()
<li>bool <a class="el" href="classElemTextLiteral.html#a2">isPreserveSpace</a> () const
<dl class="el"><dd><font size=-1><em>Determine if whitespace should be preserved within the element.</em> <a href="#a2">More...</a><em><br><br></em></font></dl><li>const XalanDOMChar* <a class="el" href="classElemTextLiteral.html#a3">getText</a> () const
<li><a class="el" href="classXalanDOMString.html#s6">XalanDOMString::size_type</a> <a class="el" href="classElemTextLiteral.html#a4">getLength</a> () const
<li>virtual bool <a class="el" href="classElemTextLiteral.html#a5">isWhitespace</a> () const
<dl class="el"><dd><font size=-1><em>Tell if the element will generate text which is XML whitespace.</em> <a href="#a5">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classElemTextLiteral.html#a6">getElementName</a> () const
<dl class="el"><dd><font size=-1><em>Get a string for the name of the element.</em> <a href="#a6">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a>* <a class="el" href="classElemTextLiteral.html#a7">startElement</a> (<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp;executionContext) const
<dl class="el"><dd><font size=-1><em>Completes "pre-processing" before any sub-elements are invoked (i.e.</em> <a href="#a7">More...</a><em><br><br></em></font></dl></ul>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="ElemTextLiteral::ElemTextLiteral"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
ElemTextLiteral::ElemTextLiteral (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="classStylesheetConstructionContext.html">StylesheetConstructionContext</a> &amp; <em>constructionContext</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="ExtensionNSHandler_8hpp.html#a1">Stylesheet</a> &amp; <em>stylesheetTree</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>lineNumber</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>columnNumber</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
const XalanDOMChar * <em>ch</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="classXalanDOMString.html#s6">XalanDOMString::size_type</a> <em>start</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="classXalanDOMString.html#s6">XalanDOMString::size_type</a> <em>length</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
bool <em>fPreserveSpace</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
bool <em>fDisableOutputEscaping</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Construct an object corresponding to literal text element.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>constructionContext</em>
&nbsp;</td><td>
context for construction of object </td></tr>
<tr><td valign=top><em>stylesheetTree</em>
&nbsp;</td><td>
stylesheet containing element </td></tr>
<tr><td valign=top><em>lineNumber</em>
&nbsp;</td><td>
line number in document </td></tr>
<tr><td valign=top><em>columnNumber</em>
&nbsp;</td><td>
column number in document </td></tr>
<tr><td valign=top><em>ch</em>
&nbsp;</td><td>
pointer to character string for element </td></tr>
<tr><td valign=top><em>start</em>
&nbsp;</td><td>
starting offset of element </td></tr>
<tr><td valign=top><em>length</em>
&nbsp;</td><td>
number of characters in element </td></tr>
<tr><td valign=top><em>fPreserveSpace</em>
&nbsp;</td><td>
true is space should be preserved </td></tr>
<tr><td valign=top><em>fDisableOutputEscaping</em>
&nbsp;</td><td>
true if output escaping should be disabled </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a1" doxytag="ElemTextLiteral::~ElemTextLiteral"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
ElemTextLiteral::~ElemTextLiteral (
          </b></td>
          <td valign="bottom"><b>
)<code> [virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="a6" doxytag="ElemTextLiteral::getElementName"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; ElemTextLiteral::getElementName (
          </b></td>
          <td valign="bottom"><b>
) const<code> [virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get a string for the name of the element.
<p>
Useful for debugging purposes, and error reporting.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
A string containing the name of the element. </dl>
<p>
Reimplemented from <a class="el" href="classElemTemplateElement.html#a13">ElemTemplateElement</a>.    </td>
  </tr>
</table>
<a name="a4" doxytag="ElemTextLiteral::getLength"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
<a class="el" href="classXalanDOMString.html#s6">XalanDOMString::size_type</a> ElemTextLiteral::getLength (
          </b></td>
          <td valign="bottom"><b>
) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="a3" doxytag="ElemTextLiteral::getText"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
const XalanDOMChar * ElemTextLiteral::getText (
          </b></td>
          <td valign="bottom"><b>
) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="a2" doxytag="ElemTextLiteral::isPreserveSpace"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
bool ElemTextLiteral::isPreserveSpace (
          </b></td>
          <td valign="bottom"><b>
) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Determine if whitespace should be preserved within the element.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
true if whitespace should be preserved </dl>    </td>
  </tr>
</table>
<a name="a5" doxytag="ElemTextLiteral::isWhitespace"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
bool ElemTextLiteral::isWhitespace (
          </b></td>
          <td valign="bottom"><b>
) const<code> [virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Tell if the element will generate text which is XML whitespace.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
true if the text is pure whitespace </dl>
<p>
Reimplemented from <a class="el" href="classElemTemplateElement.html#a12">ElemTemplateElement</a>.    </td>
  </tr>
</table>
<a name="a7" doxytag="ElemTextLiteral::startElement"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
const <a class="el" href="classElemTemplateElement.html">ElemTemplateElement</a> * ElemTextLiteral::startElement (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a> &amp; <em>executionContext</em>&nbsp;) const<code> [virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Completes "pre-processing" before any sub-elements are invoked (i.e.
<p>
children, attribute sets and templates). If there are  no sub-elements it executes the primary function of the element.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>executionContext</em>
&nbsp;</td><td>
context to execute this element </td></tr>
</table>
</dl>
<p>
Reimplemented from <a class="el" href="classElemTemplateElement.html#a6">ElemTemplateElement</a>.    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="ElemTextLiteral_8hpp-source.html">ElemTextLiteral.hpp</a></ul>
<p align="center"><a href="diagramnotes.html">Interpreting class diagrams</a></p>
<p><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><A href="http://www.stack.nl/~dimitri/doxygen/">Doxygen</A> and 
<A href="http://www.research.att.com/sw/tools/graphviz/">GraphViz</A> are used to generate this API documentation from the Xalan-C header files.</I></FONT></p>

<TABLE border="0" cellpadding="0" cellspacing="0" width="820"><TR><TD bgcolor="#0086b2"><IMG height="1" src="../resources/dot.gif" width="1" alt="dot"></TD></TR></TABLE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="80%">
	<TR>
		<TD WIDTH="80%" VALIGN="TOP">
			<P ALIGN="CENTER"><B>Xalan-C++ XSLT Processor Version 1.10</B><BR>
			Copyright &copy; 1999-2004 The Apache Software Foundation. All Rights Reserved.</i></p>
		</TD>
	</TR>
	<TR>
		<TD WIDTH="100%">
			<P ALIGN="CENTER"><IMG SRC="ApacheLogo.jpg" WIDTH="387" HEIGHT="100" ALIGN="BOTTOM" BORDER="0" ALT="Apache Logo">
		</TD>
	</TR>
</TABLE>
