<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>XalanCharacterData  Class Reference</h1><code>#include &lt;<a class="el" href="XalanCharacterData_8hpp-source.html">XalanCharacterData.hpp</a>&gt;</code>
<p>
Inheritance diagram for XalanCharacterData:<p><center><img src="classXalanCharacterData__inherit__graph.gif" border="0" usemap="#XalanCharacterData_inherit_map" alt="Inheritance graph"></center>
<map name="XalanCharacterData_inherit_map">
<area href="classXalanComment.html" shape="rect" coords="334,31,444,7">
<area href="classXalanText.html" shape="rect" coords="350,78,428,54">
<area href="classXalanNode.html" shape="rect" coords="19,54,99,31">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for XalanCharacterData:<p><center><img src="classXalanCharacterData__coll__graph.gif" border="0" usemap="#XalanCharacterData_coll_map" alt="Collaboration graph"></center>
<map name="XalanCharacterData_coll_map">
<area href="classXalanNode.html" shape="rect" coords="35,42,114,18">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classXalanCharacterData-members.html">List of all members.</a><h2>Public Methods</h2>
<ul>
<li><a class="el" href="classXalanCharacterData.html#a0">XalanCharacterData</a> ()
<li>virtual <a class="el" href="classXalanCharacterData.html#a1">~XalanCharacterData</a> ()
<li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classXalanCharacterData.html#a2">getNodeName</a> () const=0
<li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classXalanCharacterData.html#a3">getNodeValue</a> () const=0
<dl class="el"><dd><font size=-1><em>Gets the value of this node, depending on its type.</em> <a href="#a3">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanNode.html#s14">NodeType</a> <a class="el" href="classXalanCharacterData.html#a4">getNodeType</a> () const=0
<dl class="el"><dd><font size=-1><em>An enum value representing the type of the underlying object.</em> <a href="#a4">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanNode.html">XalanNode</a>* <a class="el" href="classXalanCharacterData.html#a5">getParentNode</a> () const=0
<dl class="el"><dd><font size=-1><em>Gets the parent of this node.</em> <a href="#a5">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classXalanNodeList.html">XalanNodeList</a>* <a class="el" href="classXalanCharacterData.html#a6">getChildNodes</a> () const=0
<dl class="el"><dd><font size=-1><em>Gets a <code>NodeList</code> that contains all children of this node.</em> <a href="#a6">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanNode.html">XalanNode</a>* <a class="el" href="classXalanCharacterData.html#a7">getFirstChild</a> () const=0
<dl class="el"><dd><font size=-1><em>Gets the first child of this node.</em> <a href="#a7">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanNode.html">XalanNode</a>* <a class="el" href="classXalanCharacterData.html#a8">getLastChild</a> () const=0
<dl class="el"><dd><font size=-1><em>Gets the last child of this node.</em> <a href="#a8">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanNode.html">XalanNode</a>* <a class="el" href="classXalanCharacterData.html#a9">getPreviousSibling</a> () const=0
<dl class="el"><dd><font size=-1><em>Gets the node immediately preceding this node.</em> <a href="#a9">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanNode.html">XalanNode</a>* <a class="el" href="classXalanCharacterData.html#a10">getNextSibling</a> () const=0
<dl class="el"><dd><font size=-1><em>Gets the node immediately following this node.</em> <a href="#a10">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classXalanNamedNodeMap.html">XalanNamedNodeMap</a>* <a class="el" href="classXalanCharacterData.html#a11">getAttributes</a> () const=0
<dl class="el"><dd><font size=-1><em>Gets a <code>NamedNodeMap</code> containing the attributes of this node (if it is an <code>Element</code>) or <code>null</code> otherwise.</em> <a href="#a11">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanDocument.html">XalanDocument</a>* <a class="el" href="classXalanCharacterData.html#a12">getOwnerDocument</a> () const=0
<dl class="el"><dd><font size=-1><em>Gets the <code>Document</code> object associated with this node.</em> <a href="#a12">More...</a><em><br><br></em></font></dl></ul>
<tr><td colspan="2"><div class="groupHeader">Cloning function.</div></td></tr>
<ul>
<li>virtual XalanCharacterData* <a class="el" href="classXalanCharacterData.html#a13">cloneNode</a> (bool deep) const=0
<dl class="el"><dd><font size=-1><em>Returns a duplicate of this node.</em> <a href="#a13">More...</a><em><br><br></em></font></dl></ul>
<tr><td colspan="2"><div class="groupHeader">Functions to modify the DOM Node.</div></td></tr>
<ul>
<li>virtual <a class="el" href="classXalanNode.html">XalanNode</a>* <a class="el" href="classXalanCharacterData.html#a14">insertBefore</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *newChild, <a class="el" href="classXalanNode.html">XalanNode</a> *refChild)=0
<dl class="el"><dd><font size=-1><em>Inserts the node <code>newChild</code> before the existing child node <code>refChild</code>.</em> <a href="#a14">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanNode.html">XalanNode</a>* <a class="el" href="classXalanCharacterData.html#a15">replaceChild</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *newChild, <a class="el" href="classXalanNode.html">XalanNode</a> *oldChild)=0
<dl class="el"><dd><font size=-1><em>Replaces the child node <code>oldChild</code> with <code>newChild</code> in the list of children, and returns the <code>oldChild</code> node.</em> <a href="#a15">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanNode.html">XalanNode</a>* <a class="el" href="classXalanCharacterData.html#a16">removeChild</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *oldChild)=0
<dl class="el"><dd><font size=-1><em>Removes the child node indicated by <code>oldChild</code> from the list of children, and returns it.</em> <a href="#a16">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanNode.html">XalanNode</a>* <a class="el" href="classXalanCharacterData.html#a17">appendChild</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *newChild)=0
<dl class="el"><dd><font size=-1><em>Adds the node <code>newChild</code> to the end of the list of children of this node.</em> <a href="#a17">More...</a><em><br><br></em></font></dl></ul>
<tr><td colspan="2"><div class="groupHeader">Query functions.</div></td></tr>
<ul>
<li>virtual bool <a class="el" href="classXalanCharacterData.html#a18">hasChildNodes</a> () const=0
<dl class="el"><dd><font size=-1><em>This is a convenience method to allow easy determination of whether a node has any children.</em> <a href="#a18">More...</a><em><br><br></em></font></dl></ul>
<tr><td colspan="2"><div class="groupHeader">Set functions.</div></td></tr>
<ul>
<li>virtual void <a class="el" href="classXalanCharacterData.html#a19">setNodeValue</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;nodeValue)=0
<dl class="el"><dd><font size=-1><em>Sets the value of the node.</em> <a href="#a19">More...</a><em><br><br></em></font></dl></ul>
<tr><td colspan="2"><div class="groupHeader">Functions introduced in DOM Level 2.</div></td></tr>
<ul>
<li>virtual void <a class="el" href="classXalanCharacterData.html#a20">normalize</a> ()=0
<dl class="el"><dd><font size=-1><em>Puts all <code>Text</code> nodes in the full depth of the sub-tree underneath this <code>Node</code>, including attribute nodes, into a "normal" form where only markup (e.g., tags, comments, processing instructions, CDATA sections, and entity references) separates <code>Text</code> nodes, i.e., there are no adjacent <code>Text</code> nodes.</em> <a href="#a20">More...</a><em><br><br></em></font></dl><li>virtual bool <a class="el" href="classXalanCharacterData.html#a21">isSupported</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;feature, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;version) const=0
<dl class="el"><dd><font size=-1><em>Tests whether the DOM implementation implements a specific feature and that feature is supported by this node.</em> <a href="#a21">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classXalanCharacterData.html#a22">getNamespaceURI</a> () const=0
<dl class="el"><dd><font size=-1><em>Get the <em>namespace URI</em> of this node, or <code>null</code> if it is unspecified.</em> <a href="#a22">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classXalanCharacterData.html#a23">getPrefix</a> () const=0
<dl class="el"><dd><font size=-1><em>Get the <em>namespace prefix</em> of this node, or <code>null</code> if it is unspecified.</em> <a href="#a23">More...</a><em><br><br></em></font></dl><li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classXalanCharacterData.html#a24">getLocalName</a> () const=0
<dl class="el"><dd><font size=-1><em>Returns the local part of the <em>qualified name</em> of this node.</em> <a href="#a24">More...</a><em><br><br></em></font></dl><li>virtual void <a class="el" href="classXalanCharacterData.html#a25">setPrefix</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;prefix)=0
<dl class="el"><dd><font size=-1><em>Set the <em>namespace prefix</em> of this node.</em> <a href="#a25">More...</a><em><br><br></em></font></dl><li>virtual bool <a class="el" href="classXalanCharacterData.html#a26">isIndexed</a> () const=0
<dl class="el"><dd><font size=-1><em>Determine if the document is node-order indexed.</em> <a href="#a26">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanNode.html#s0">IndexType</a> <a class="el" href="classXalanCharacterData.html#a27">getIndex</a> () const=0
<dl class="el"><dd><font size=-1><em>Get the node's index.</em> <a href="#a27">More...</a><em><br><br></em></font></dl></ul>
<tr><td colspan="2"><div class="groupHeader">Getter functions.</div></td></tr>
<ul>
<li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classXalanCharacterData.html#a28">getData</a> () const=0
<dl class="el"><dd><font size=-1><em>Returns the character data of the node that implements this interface.</em> <a href="#a28">More...</a><em><br><br></em></font></dl><li>virtual unsigned int <a class="el" href="classXalanCharacterData.html#a29">getLength</a> () const=0
<dl class="el"><dd><font size=-1><em>Returns the number of characters that are available through <code>data</code> and the <code>substringData</code> method below.</em> <a href="#a29">More...</a><em><br><br></em></font></dl><li>virtual <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; <a class="el" href="classXalanCharacterData.html#a30">substringData</a> (unsigned int offset, unsigned int count, <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;theResult) const=0
<dl class="el"><dd><font size=-1><em>Extracts a range of data from the node.</em> <a href="#a30">More...</a><em><br><br></em></font></dl></ul>
<tr><td colspan="2"><div class="groupHeader">Functions that set or change data.</div></td></tr>
<ul>
<li>virtual void <a class="el" href="classXalanCharacterData.html#a31">appendData</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;arg)=0
<dl class="el"><dd><font size=-1><em>Append the string to the end of the character data of the node.</em> <a href="#a31">More...</a><em><br><br></em></font></dl><li>virtual void <a class="el" href="classXalanCharacterData.html#a32">insertData</a> (unsigned int offset, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;arg)=0
<dl class="el"><dd><font size=-1><em>Insert a string at the specified character offset.</em> <a href="#a32">More...</a><em><br><br></em></font></dl><li>virtual void <a class="el" href="classXalanCharacterData.html#a33">deleteData</a> (unsigned int offset, unsigned int count)=0
<dl class="el"><dd><font size=-1><em>Remove a range of characters from the node.</em> <a href="#a33">More...</a><em><br><br></em></font></dl><li>virtual void <a class="el" href="classXalanCharacterData.html#a34">replaceData</a> (unsigned int offset, unsigned int count, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;arg)=0
<dl class="el"><dd><font size=-1><em>Replace the characters starting at the specified character offset with the specified string.</em> <a href="#a34">More...</a><em><br><br></em></font></dl></ul>
<h2>Protected Methods</h2>
<ul>
<li><a class="el" href="classXalanCharacterData.html#b0">XalanCharacterData</a> (const XalanCharacterData &amp;theSource)
<li>XalanCharacterData&amp; <a class="el" href="classXalanCharacterData.html#b1">operator=</a> (const XalanCharacterData &amp;theSource)
<li>bool <a class="el" href="classXalanCharacterData.html#b2">operator==</a> (const XalanCharacterData &amp;theRHS) const
</ul>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="XalanCharacterData::XalanCharacterData"></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> 
XalanCharacterData::XalanCharacterData (
          </b></td>
          <td valign="bottom"><b>
)
          </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="a1" doxytag="XalanCharacterData::~XalanCharacterData"></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> 
XalanCharacterData::~XalanCharacterData (
          </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>
<a name="b0" doxytag="XalanCharacterData::XalanCharacterData"></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> 
XalanCharacterData::XalanCharacterData (
          </b></td>
          <td valign="bottom"><b>
const XalanCharacterData &amp; <em>theSource</em>&nbsp;)<code> [protected]</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="a17" doxytag="XalanCharacterData::appendChild"></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="classXalanNode.html">XalanNode</a> * XalanCharacterData::appendChild (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>newChild</em>&nbsp;)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Adds the node <code>newChild</code> to the end of the list of children of this node.
<p>
If the <code>newChild</code> is already in the tree, it is first removed. <dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newChild</em>
&nbsp;</td><td>
The node to add.If it is a <code>DocumentFragment</code> object, the entire contents of the document fragment are moved into the child list of this node </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
The node added. </dl>
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a17">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a17">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a17">XalanComment</a>, <a class="el" href="classXalanText.html#a17">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a17">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a17">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a17">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a17">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a17">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a17">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a17">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a17">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a18">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a31" doxytag="XalanCharacterData::appendData"></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> 
void XalanCharacterData::appendData (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <em>arg</em>&nbsp;)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Append the string to the end of the character data of the node.
<p>
Upon success, <code>data</code> provides access to the concatenation of  <code>data</code> and the <code><a class="el" href="classXalanDOMString.html">XalanDOMString</a></code> specified. <dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>arg</em>
&nbsp;</td><td>
The <code><a class="el" href="classXalanDOMString.html">XalanDOMString</a></code> to append. </td></tr>
</table>
</dl><dl compact><dt>
<b>Exceptions: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>DOMException</em>
&nbsp;</td><td>
 NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. </td></tr>
</table>
</dl>
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a31">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a31">XalanComment</a>, <a class="el" href="classXalanText.html#a31">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a31">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a31">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a31">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a31">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a31">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a31">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a31">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a31">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a32">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a13" doxytag="XalanCharacterData::cloneNode"></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> 
XalanCharacterData * XalanCharacterData::cloneNode (
          </b></td>
          <td valign="bottom"><b>
bool <em>deep</em>&nbsp;) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Returns a duplicate of this node.
<p>
This function serves as a generic copy constructor for nodes.
<p>
The duplicate node has no parent ( <code>parentNode</code> returns <code>null</code>.). <br>
Cloning an <code>Element</code> copies all attributes and their values, including those generated by the XML processor to represent defaulted attributes, but this method does not copy any text it contains unless it is a deep clone, since the text is contained in a child <code>Text</code> node. Cloning any other type of node simply returns a copy of this node. <dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>deep</em>
&nbsp;</td><td>
If <code>true</code>, recursively clone the subtree under the specified node; if <code>false</code>, clone only the node itself (and its attributes, if it is an <code>Element</code>). </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
The duplicate node. </dl>
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a13">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a13">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a13">XalanComment</a>, <a class="el" href="classXalanText.html#a13">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a13">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a13">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a13">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a13">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a13">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a13">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a13">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a13">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a14">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a33" doxytag="XalanCharacterData::deleteData"></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> 
void XalanCharacterData::deleteData (
          </b></td>
          <td valign="bottom"><b>
unsigned int <em>offset</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
unsigned int <em>count</em>&nbsp;)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Remove a range of characters from the node.
<p>
Upon success,  <code>data</code> and <code>length</code> reflect the change. <dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>offset</em>
&nbsp;</td><td>
The offset from which to remove characters. </td></tr>
<tr><td valign=top><em>count</em>
&nbsp;</td><td>
The number of characters to delete. If the sum of  <code>offset</code> and <code>count</code> exceeds <code>length</code>  then all characters from <code>offset</code> to the end of the data  are deleted. </td></tr>
</table>
</dl><dl compact><dt>
<b>Exceptions: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>DOMException</em>
&nbsp;</td><td>
 INDEX_SIZE_ERR: Raised if the specified offset is negative or greater  than the number of characters in <code>data</code>, or if the  specified <code>count</code> is negative. <br>
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. </td></tr>
</table>
</dl>
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a33">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a33">XalanComment</a>, <a class="el" href="classXalanText.html#a33">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a33">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a33">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a33">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a33">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a33">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a33">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a33">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a33">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a34">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a11" doxytag="XalanCharacterData::getAttributes"></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="classXalanNamedNodeMap.html">XalanNamedNodeMap</a> * XalanCharacterData::getAttributes (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Gets a <code>NamedNodeMap</code> containing the attributes of this node (if it is an <code>Element</code>) or <code>null</code> otherwise.
<p>

<p>
Reimplemented from <a class="el" href="classXalanNode.html#a11">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a11">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a11">XalanComment</a>, <a class="el" href="classXalanText.html#a11">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a11">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a11">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a11">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a11">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a11">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a11">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a11">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a11">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a12">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a6" doxytag="XalanCharacterData::getChildNodes"></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="classXalanNodeList.html">XalanNodeList</a> * XalanCharacterData::getChildNodes (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Gets a <code>NodeList</code> that contains all children of this node.
<p>
If there are no children, this is a <code>NodeList</code> containing no nodes. The content of the returned <code>NodeList</code> is "live" in the sense that, for instance, changes to the children of the node object that it was created from are immediately reflected in the nodes returned by the <code>NodeList</code> accessors; it is not a static snapshot of the content of the node. This is true for every <code>NodeList</code>, including the ones returned by the <code>getElementsByTagName</code> method. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a6">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a6">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a6">XalanComment</a>, <a class="el" href="classXalanText.html#a6">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a6">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a6">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a6">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a6">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a6">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a6">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a6">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a6">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a7">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a28" doxytag="XalanCharacterData::getData"></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; XalanCharacterData::getData (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Returns the character data of the node that implements this interface.
<p>
The DOM implementation may not put arbitrary limits on the amount of data that  may be stored in a <code>CharacterData</code> node. However,  implementation limits may mean that the entirety of a node's data may  not fit into a single <code><a class="el" href="classXalanDOMString.html">XalanDOMString</a></code>. In such cases, the user  may call <code>substringData</code> to retrieve the data in  appropriately sized pieces. <dl compact><dt>
<b>Exceptions: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>DOMException</em>
&nbsp;</td><td>
 NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly. </td></tr>
<tr><td valign=top><em>DOMException</em>
&nbsp;</td><td>
 DOMSTRING_SIZE_ERR: Raised when it would return more characters than  fit in a <code><a class="el" href="classXalanDOMString.html">XalanDOMString</a></code> variable on the implementation  platform. </td></tr>
</table>
</dl>
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a28">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a28">XalanComment</a>, <a class="el" href="classXalanText.html#a28">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a28">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a28">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a28">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a28">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a28">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a28">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a28">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a28">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a29">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a7" doxytag="XalanCharacterData::getFirstChild"></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="classXalanNode.html">XalanNode</a> * XalanCharacterData::getFirstChild (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Gets the first child of this node.
<p>
If there is no such node, this returns <code>null</code>. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a7">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a7">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a7">XalanComment</a>, <a class="el" href="classXalanText.html#a7">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a7">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a7">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a7">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a7">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a7">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a7">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a7">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a7">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a8">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a27" doxytag="XalanCharacterData::getIndex"></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="classXalanNode.html#s0">IndexType</a> XalanCharacterData::getIndex (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Get the node's index.
<p>
Valid only if the owner document reports that the document is node-order indexed.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
The index value, or 0 if the node is not indexed. </dl>
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a27">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a27">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a27">XalanComment</a>, <a class="el" href="classXalanText.html#a27">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a27">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a27">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a27">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a27">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a27">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a27">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a27">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a27">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a28">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a8" doxytag="XalanCharacterData::getLastChild"></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="classXalanNode.html">XalanNode</a> * XalanCharacterData::getLastChild (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Gets the last child of this node.
<p>
If there is no such node, this returns <code>null</code>. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a8">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a8">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a8">XalanComment</a>, <a class="el" href="classXalanText.html#a8">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a8">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a8">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a8">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a8">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a8">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a8">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a8">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a8">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a9">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a29" doxytag="XalanCharacterData::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> 
unsigned int XalanCharacterData::getLength (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Returns the number of characters that are available through <code>data</code> and the <code>substringData</code> method below.
<p>
This may have the value  zero, i.e., <code>CharacterData</code> nodes may be empty. 
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a29">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a29">XalanComment</a>, <a class="el" href="classXalanText.html#a29">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a29">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a29">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a29">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a29">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a29">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a29">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a29">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a29">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a30">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a24" doxytag="XalanCharacterData::getLocalName"></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; XalanCharacterData::getLocalName (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Returns the local part of the <em>qualified name</em> of this node.
<p>

<p>
 For nodes created with a DOM Level 1 method, such as <code>createElement</code> from the <code>Document</code> interface, it is null. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a24">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a24">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a24">XalanComment</a>, <a class="el" href="classXalanText.html#a24">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a24">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a24">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a24">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a24">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a24">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a24">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a24">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a24">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a25">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a22" doxytag="XalanCharacterData::getNamespaceURI"></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; XalanCharacterData::getNamespaceURI (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Get the <em>namespace URI</em> of this node, or <code>null</code> if it is unspecified.
<p>

<p>
 This is not a computed value that is the result of a namespace lookup based on an examination of the namespace declarations in scope. It is merely the namespace URI given at creation time. 
<p>
 For nodes of any type other than <code>ELEMENT_NODE</code> and  <code>ATTRIBUTE_NODE</code> and nodes created with a DOM Level 1 method,  such as <code>createElement</code> from the <code>Document</code> interface, this is always <code>null</code>. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a22">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a22">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a22">XalanComment</a>, <a class="el" href="classXalanText.html#a22">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a22">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a22">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a22">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a22">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a22">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a22">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a22">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a22">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a23">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a10" doxytag="XalanCharacterData::getNextSibling"></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="classXalanNode.html">XalanNode</a> * XalanCharacterData::getNextSibling (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Gets the node immediately following this node.
<p>
If there is no such node, this returns <code>null</code>. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a10">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a10">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a10">XalanComment</a>, <a class="el" href="classXalanText.html#a10">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a10">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a10">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a10">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a10">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a10">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a10">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a10">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a10">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a11">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a2" doxytag="XalanCharacterData::getNodeName"></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; XalanCharacterData::getNodeName (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>

<p>
Reimplemented from <a class="el" href="classXalanNode.html#a2">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a2">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a2">XalanComment</a>, <a class="el" href="classXalanText.html#a2">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a2">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a2">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a2">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a2">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a2">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a2">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a2">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a2">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a3">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a4" doxytag="XalanCharacterData::getNodeType"></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="classXalanNode.html#s14">NodeType</a> XalanCharacterData::getNodeType (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
An enum value representing the type of the underlying object.
<p>

<p>
Reimplemented from <a class="el" href="classXalanNode.html#a4">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a4">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a4">XalanComment</a>, <a class="el" href="classXalanText.html#a4">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a4">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a4">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a4">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a4">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a4">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a4">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a4">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a4">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a5">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a3" doxytag="XalanCharacterData::getNodeValue"></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; XalanCharacterData::getNodeValue (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Gets the value of this node, depending on its type.
<p>

<p>
Reimplemented from <a class="el" href="classXalanNode.html#a3">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a3">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a3">XalanComment</a>, <a class="el" href="classXalanText.html#a3">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a3">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a3">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a3">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a3">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a3">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a3">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a3">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a3">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a4">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a12" doxytag="XalanCharacterData::getOwnerDocument"></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="classXalanDocument.html">XalanDocument</a> * XalanCharacterData::getOwnerDocument (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Gets the <code>Document</code> object associated with this node.
<p>
This is also the <code>Document</code> object used to create new nodes. When this node is a <code>Document</code> or a <code>DocumentType</code> which is not used with any <code>Document</code> yet, this is <code>null</code>. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a12">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a12">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a12">XalanComment</a>, <a class="el" href="classXalanText.html#a12">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a12">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a12">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a12">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a12">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a12">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a12">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a12">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a12">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a13">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a5" doxytag="XalanCharacterData::getParentNode"></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="classXalanNode.html">XalanNode</a> * XalanCharacterData::getParentNode (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Gets the parent of this node.
<p>
All nodes, except <code>Document</code>, <code>DocumentFragment</code>, and <code>Attr</code> may have a parent. However, if a node has just been created and not yet added to the tree, or if it has been removed from the tree, a <code>null</code> Node is returned. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a5">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a5">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a5">XalanComment</a>, <a class="el" href="classXalanText.html#a5">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a5">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a5">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a5">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a5">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a5">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a5">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a5">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a5">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a6">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a23" doxytag="XalanCharacterData::getPrefix"></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; XalanCharacterData::getPrefix (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Get the <em>namespace prefix</em> of this node, or <code>null</code> if it is unspecified.
<p>

<p>
Reimplemented from <a class="el" href="classXalanNode.html#a23">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a23">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a23">XalanComment</a>, <a class="el" href="classXalanText.html#a23">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a23">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a23">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a23">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a23">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a23">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a23">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a23">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a23">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a24">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a9" doxytag="XalanCharacterData::getPreviousSibling"></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="classXalanNode.html">XalanNode</a> * XalanCharacterData::getPreviousSibling (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Gets the node immediately preceding this node.
<p>
If there is no such node, this returns <code>null</code>. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a9">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a9">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a9">XalanComment</a>, <a class="el" href="classXalanText.html#a9">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a9">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a9">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a9">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a9">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a9">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a9">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a9">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a9">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a10">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a18" doxytag="XalanCharacterData::hasChildNodes"></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 XalanCharacterData::hasChildNodes (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
This is a convenience method to allow easy determination of whether a node has any children.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
<code>true</code> if the node has any children, <code>false</code> if the node has no children. </dl>
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a18">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a18">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a18">XalanComment</a>, <a class="el" href="classXalanText.html#a18">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a18">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a18">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a18">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a18">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a18">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a18">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a18">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a18">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a19">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a14" doxytag="XalanCharacterData::insertBefore"></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="classXalanNode.html">XalanNode</a> * XalanCharacterData::insertBefore (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>newChild</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>refChild</em>&nbsp;)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Inserts the node <code>newChild</code> before the existing child node <code>refChild</code>.
<p>
If <code>refChild</code> is <code>null</code>, insert <code>newChild</code> at the end of the list of children. <br>
If <code>newChild</code> is a <code>DocumentFragment</code> object, all of its children are inserted, in the same order, before <code>refChild</code>. If the <code>newChild</code> is already in the tree, it is first removed. Note that a <code>Node</code> that has never been assigned to refer to an actual node is == null. <dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newChild</em>
&nbsp;</td><td>
The node to insert. </td></tr>
<tr><td valign=top><em>refChild</em>
&nbsp;</td><td>
The reference node, i.e., the node before which the new node must be inserted. </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
The node being inserted. </dl>
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a14">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a14">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a14">XalanComment</a>, <a class="el" href="classXalanText.html#a14">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a14">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a14">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a14">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a14">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a14">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a14">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a14">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a14">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a15">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a32" doxytag="XalanCharacterData::insertData"></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> 
void XalanCharacterData::insertData (
          </b></td>
          <td valign="bottom"><b>
unsigned int <em>offset</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <em>arg</em>&nbsp;)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Insert a string at the specified character offset.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>offset</em>
&nbsp;</td><td>
The character offset at which to insert. </td></tr>
<tr><td valign=top><em>arg</em>
&nbsp;</td><td>
The <code><a class="el" href="classXalanDOMString.html">XalanDOMString</a></code> to insert. </td></tr>
</table>
</dl><dl compact><dt>
<b>Exceptions: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>DOMException</em>
&nbsp;</td><td>
 INDEX_SIZE_ERR: Raised if the specified offset is negative or greater  than the number of characters in <code>data</code>. <br>
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. </td></tr>
</table>
</dl>
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a32">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a32">XalanComment</a>, <a class="el" href="classXalanText.html#a32">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a32">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a32">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a32">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a32">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a32">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a32">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a32">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a32">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a33">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a26" doxytag="XalanCharacterData::isIndexed"></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 XalanCharacterData::isIndexed (
          </b></td>
          <td valign="bottom"><b>
) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Determine if the document is node-order indexed.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
true if the document is indexed, otherwise false. </dl>
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a26">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a26">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a26">XalanComment</a>, <a class="el" href="classXalanText.html#a26">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a26">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a26">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a26">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a26">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a26">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a26">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a26">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a26">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a27">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a21" doxytag="XalanCharacterData::isSupported"></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 XalanCharacterData::isSupported (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <em>feature</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <em>version</em>&nbsp;) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Tests whether the DOM implementation implements a specific feature and that feature is supported by this node.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>feature</em>
&nbsp;</td><td>
The string of the feature to test. This is the same name as what can be passed to the method <code>hasFeature</code> on <code>DOMImplementation</code>. </td></tr>
<tr><td valign=top><em>version</em>
&nbsp;</td><td>
This is the version number of the feature to test. In Level 2, version 1, this is the string "2.0". If the version is not specified, supporting any version of the feature will cause the method to return <code>true</code>. </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
Returns <code>true</code> if the specified feature is supported on this node, <code>false</code> otherwise. </dl>
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a21">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a21">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a21">XalanComment</a>, <a class="el" href="classXalanText.html#a21">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a21">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a21">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a21">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a21">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a21">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a21">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a21">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a21">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a22">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a20" doxytag="XalanCharacterData::normalize"></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> 
void XalanCharacterData::normalize (
          </b></td>
          <td valign="bottom"><b>
)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Puts all <code>Text</code> nodes in the full depth of the sub-tree underneath this <code>Node</code>, including attribute nodes, into a "normal" form where only markup (e.g., tags, comments, processing instructions, CDATA sections, and entity references) separates <code>Text</code> nodes, i.e., there are no adjacent <code>Text</code> nodes.
<p>
This can be used to ensure that the DOM view of a document is the  same as if it were saved and re-loaded, and is useful when operations  (such as XPointer lookups) that depend on a particular document tree  structure are to be used. 
<p>
<b>Note:</b> In cases where the document contains <code>CDATASections</code>,  the normalize operation alone may not be sufficient, since XPointers do  not differentiate between <code>Text</code> nodes and <code>CDATASection</code> nodes. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a20">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a20">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a20">XalanComment</a>, <a class="el" href="classXalanText.html#a20">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a20">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a20">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a20">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a20">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a20">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a20">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a20">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a20">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a21">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="b1" doxytag="XalanCharacterData::operator="></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> 
XalanCharacterData &amp; XalanCharacterData::operator= (
          </b></td>
          <td valign="bottom"><b>
const XalanCharacterData &amp; <em>theSource</em>&nbsp;)<code> [protected]</code>
          </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="b2" doxytag="XalanCharacterData::operator=="></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 XalanCharacterData::operator== (
          </b></td>
          <td valign="bottom"><b>
const XalanCharacterData &amp; <em>theRHS</em>&nbsp;) const<code> [protected]</code>
          </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="a16" doxytag="XalanCharacterData::removeChild"></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="classXalanNode.html">XalanNode</a> * XalanCharacterData::removeChild (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>oldChild</em>&nbsp;)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Removes the child node indicated by <code>oldChild</code> from the list of children, and returns it.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>oldChild</em>
&nbsp;</td><td>
The node being removed. </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
The node removed. </dl>
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a16">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a16">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a16">XalanComment</a>, <a class="el" href="classXalanText.html#a16">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a16">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a16">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a16">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a16">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a16">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a16">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a16">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a16">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a17">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a15" doxytag="XalanCharacterData::replaceChild"></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="classXalanNode.html">XalanNode</a> * XalanCharacterData::replaceChild (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>newChild</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="classXalanNode.html">XalanNode</a> * <em>oldChild</em>&nbsp;)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Replaces the child node <code>oldChild</code> with <code>newChild</code> in the list of children, and returns the <code>oldChild</code> node.
<p>
If <code>newChild</code> is a <code>DocumentFragment</code> object, <code>oldChild</code> is replaced by all of the <code>DocumentFragment</code> children, which are inserted in the same order.
<p>
If the <code>newChild</code> is already in the tree, it is first removed. <dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newChild</em>
&nbsp;</td><td>
The new node to put in the child list. </td></tr>
<tr><td valign=top><em>oldChild</em>
&nbsp;</td><td>
The node being replaced in the list. </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
The node replaced. </dl>
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a15">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a15">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a15">XalanComment</a>, <a class="el" href="classXalanText.html#a15">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a15">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a15">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a15">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a15">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a15">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a15">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a15">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a15">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a16">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a34" doxytag="XalanCharacterData::replaceData"></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> 
void XalanCharacterData::replaceData (
          </b></td>
          <td valign="bottom"><b>
unsigned int <em>offset</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
unsigned int <em>count</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <em>arg</em>&nbsp;)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Replace the characters starting at the specified character offset with the specified string.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>offset</em>
&nbsp;</td><td>
The offset from which to start replacing. </td></tr>
<tr><td valign=top><em>count</em>
&nbsp;</td><td>
The number of characters to replace. If the sum of  <code>offset</code> and <code>count</code> exceeds <code>length</code> , then all characters to the end of the data are replaced (i.e., the  effect is the same as a <code>remove</code> method call with the same  range, followed by an <code>append</code> method invocation). </td></tr>
<tr><td valign=top><em>arg</em>
&nbsp;</td><td>
The <code><a class="el" href="classXalanDOMString.html">XalanDOMString</a></code> with which the range must be  replaced. </td></tr>
</table>
</dl><dl compact><dt>
<b>Exceptions: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>DOMException</em>
&nbsp;</td><td>
 INDEX_SIZE_ERR: Raised if the specified offset is negative or greater  than the number of characters in <code>data</code>, or if the  specified <code>count</code> is negative. <br>
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. </td></tr>
</table>
</dl>
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a34">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a34">XalanComment</a>, <a class="el" href="classXalanText.html#a34">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a34">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a34">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a34">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a34">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a34">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a34">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a34">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a34">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a35">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a19" doxytag="XalanCharacterData::setNodeValue"></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> 
void XalanCharacterData::setNodeValue (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <em>nodeValue</em>&nbsp;)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Sets the value of the node.
<p>
Any node which can have a nodeValue (<dl compact><dt>
<b>See also: </b><dd>
<a class="el" href="classXalanCharacterData.html#a3">getNodeValue</a>) will also accept requests to set it to a string. The exact response to this varies from node to node -- Attribute, for example, stores its values in its children and has to replace them with a new Text holding the replacement value.
<p>
</dl>For most types of Node, value is null and attempting to set it will throw DOMException(NO_MODIFICATION_ALLOWED_ERR). This will also be thrown if the node is read-only. 
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a19">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a19">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a19">XalanComment</a>, <a class="el" href="classXalanText.html#a19">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a19">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a19">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a19">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a19">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a19">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a19">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a19">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a19">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a20">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a25" doxytag="XalanCharacterData::setPrefix"></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> 
void XalanCharacterData::setPrefix (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <em>prefix</em>&nbsp;)<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Set the <em>namespace prefix</em> of this node.
<p>

<p>
 Note that setting this attribute, when permitted, changes  the <code>nodeName</code> attribute, which holds the <em>qualified  name</em>, as well as the <code>tagName</code> and <code>name</code>  attributes of the <code>Element</code> and <code>Attr</code> interfaces, when applicable. 
<p>
 Note also that changing the prefix of an  attribute, that is known to have a default value, does not make a new  attribute with the default value and the original prefix appear, since the  <code>namespaceURI</code> and <code>localName</code> do not change.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>prefix</em>
&nbsp;</td><td>
The prefix of this node. </td></tr>
</table>
</dl><dl compact><dt>
<b>Exceptions: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>DOMException</em>
&nbsp;</td><td>
 INVALID_CHARACTER_ERR: Raised if the specified prefix contains an illegal character. <br>
 NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. <br>
 NAMESPACE_ERR: Raised if the specified <code>prefix</code> is  malformed, if the specified prefix is "xml" and the  <code>namespaceURI</code> of this node is different from  "<a href="http://www.w3.org/XML/1998/namespace">http://www.w3.org/XML/1998/namespace</a>", if specified prefix is  "xmlns" and the <code>namespaceURI</code> is neither  <code>null</code> nor an empty string, or if the  <code>localName</code> is <code>null</code>. </td></tr>
</table>
</dl>
<p>
Reimplemented from <a class="el" href="classXalanNode.html#a25">XalanNode</a>.
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a25">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a25">XalanComment</a>, <a class="el" href="classXalanText.html#a25">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a25">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a25">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a25">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a25">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a25">XercesTextWrapper</a>, <a class="el" href="classXercesCDATASectionBridge.html#a25">XercesCDATASectionBridge</a>, <a class="el" href="classXercesCommentBridge.html#a25">XercesCommentBridge</a>, <a class="el" href="classXercesTextBridge.html#a25">XercesTextBridge</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a26">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<a name="a30" doxytag="XalanCharacterData::substringData"></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">XalanDOMString</a> &amp; XalanCharacterData::substringData (
          </b></td>
          <td valign="bottom"><b>
unsigned int <em>offset</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
unsigned int <em>count</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <em>theResult</em>&nbsp;) const<code> [pure virtual]</code>
          </b></td>
        </tr>

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

<p>
Extracts a range of data from the node.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>offset</em>
&nbsp;</td><td>
Start offset of substring to extract. </td></tr>
<tr><td valign=top><em>count</em>
&nbsp;</td><td>
The number of characters to extract. </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
The specified substring. If the sum of <code>offset</code> and  <code>count</code> exceeds the <code>length</code>, then all  characters to the end of the data are returned. </dl><dl compact><dt>
<b>Exceptions: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>DOMException</em>
&nbsp;</td><td>
 INDEX_SIZE_ERR: Raised if the specified offset is negative or greater  than the number of characters in <code>data</code>, or if the  specified <code>count</code> is negative. <br>
DOMSTRING_SIZE_ERR: Raised if the specified range of text does not  fit into a <code><a class="el" href="classXalanDOMString.html">XalanDOMString</a></code>. </td></tr>
</table>
</dl>
<p>
Reimplemented in <a class="el" href="classXalanCDATASection.html#a30">XalanCDATASection</a>, <a class="el" href="classXalanComment.html#a30">XalanComment</a>, <a class="el" href="classXalanText.html#a30">XalanText</a>, <a class="el" href="classXalanSourceTreeComment.html#a30">XalanSourceTreeComment</a>, <a class="el" href="classXalanSourceTreeText.html#a30">XalanSourceTreeText</a>, <a class="el" href="classXercesCDATASectionWrapper.html#a30">XercesCDATASectionWrapper</a>, <a class="el" href="classXercesCommentWrapper.html#a30">XercesCommentWrapper</a>, <a class="el" href="classXercesTextWrapper.html#a30">XercesTextWrapper</a>, and <a class="el" href="classXObjectResultTreeFragProxyText.html#a31">XObjectResultTreeFragProxyText</a>.    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="XalanCharacterData_8hpp-source.html">XalanCharacterData.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>
