<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Xalan-C++ API : Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<!-- The head section is copied from Doxygen 1.7.1 generated default output -->
<body>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center"><a href="../index.html">The Xalan C++ XSLT Processor Version 1.11</a></h3>
<hr/>
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
    </ul>
  </div>
<div class="header">
  <div class="headertitle">
<h1>XercesProcessingInstructionBridge.hpp</h1>  </div>
</div>
<div class="contents">
<a href="XercesProcessingInstructionBridge_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one</span>
<a name="l00003"></a>00003 <span class="comment"> * or more contributor license agreements. See the NOTICE file</span>
<a name="l00004"></a>00004 <span class="comment"> * distributed with this work for additional information</span>
<a name="l00005"></a>00005 <span class="comment"> * regarding copyright ownership. The ASF licenses this file</span>
<a name="l00006"></a>00006 <span class="comment"> * to you under the Apache License, Version 2.0 (the  &quot;License&quot;);</span>
<a name="l00007"></a>00007 <span class="comment"> * you may not use this file except in compliance with the License.</span>
<a name="l00008"></a>00008 <span class="comment"> * You may obtain a copy of the License at</span>
<a name="l00009"></a>00009 <span class="comment"> *</span>
<a name="l00010"></a>00010 <span class="comment"> *     http://www.apache.org/licenses/LICENSE-2.0</span>
<a name="l00011"></a>00011 <span class="comment"> *</span>
<a name="l00012"></a>00012 <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span>
<a name="l00013"></a>00013 <span class="comment"> * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span>
<a name="l00014"></a>00014 <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
<a name="l00015"></a>00015 <span class="comment"> * See the License for the specific language governing permissions and</span>
<a name="l00016"></a>00016 <span class="comment"> * limitations under the License.</span>
<a name="l00017"></a>00017 <span class="comment"> */</span>
<a name="l00018"></a>00018 <span class="preprocessor">#if !defined(XERCESPROCESSINGINSTRUCTIONBRIDGE_HEADER_GUARD_1357924680)</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define XERCESPROCESSINGINSTRUCTIONBRIDGE_HEADER_GUARD_1357924680</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span>
<a name="l00021"></a>00021 
<a name="l00022"></a>00022 
<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;<a class="code" href="XercesParserLiaisonDefinitions_8hpp.html">xalanc/XercesParserLiaison/XercesParserLiaisonDefinitions.hpp</a>&gt;</span>
<a name="l00024"></a>00024 
<a name="l00025"></a>00025 
<a name="l00026"></a>00026 
<a name="l00027"></a>00027 <span class="preprocessor">#if XERCES_VERSION_MAJOR &gt;= 2</span>
<a name="l00028"></a>00028 <span class="preprocessor"></span><span class="preprocessor">#include &lt;xercesc/dom/deprecated/DOM_ProcessingInstruction.hpp&gt;</span>
<a name="l00029"></a>00029 <span class="preprocessor">#else</span>
<a name="l00030"></a>00030 <span class="preprocessor"></span><span class="preprocessor">#include &lt;xercesc/dom/DOM_ProcessingInstruction.hpp&gt;</span>
<a name="l00031"></a>00031 <span class="preprocessor">#endif</span>
<a name="l00032"></a>00032 <span class="preprocessor"></span>
<a name="l00033"></a>00033 
<a name="l00034"></a>00034 
<a name="l00035"></a>00035 <span class="preprocessor">#include &lt;<a class="code" href="XalanProcessingInstruction_8hpp.html">xalanc/XalanDOM/XalanProcessingInstruction.hpp</a>&gt;</span>
<a name="l00036"></a>00036 
<a name="l00037"></a>00037 
<a name="l00038"></a>00038 
<a name="l00039"></a>00039 <span class="preprocessor">#include &lt;<a class="code" href="XercesBridgeTypes_8hpp.html">xalanc/XercesParserLiaison/Deprecated/XercesBridgeTypes.hpp</a>&gt;</span>
<a name="l00040"></a>00040 
<a name="l00041"></a>00041 
<a name="l00042"></a>00042 
<a name="l00043"></a>00043 XALAN_CPP_NAMESPACE_BEGIN
<a name="l00044"></a>00044 
<a name="l00045"></a>00045 
<a name="l00046"></a>00046 
<a name="l00047"></a>00047 <span class="keyword">class </span><a class="code" href="classXercesBridgeNavigator.html" title="This class is deprecated.">XercesBridgeNavigator</a>;
<a name="l00048"></a>00048 
<a name="l00049"></a>00049 <span class="comment"></span>
<a name="l00050"></a>00050 <span class="comment">/**</span>
<a name="l00051"></a>00051 <span class="comment"> * This class is deprecated.</span>
<a name="l00052"></a>00052 <span class="comment"> *</span>
<a name="l00053"></a>00053 <span class="comment"> * @deprecated This class is part of the deprecated Xerces DOM bridge.</span>
<a name="l00054"></a>00054 <span class="comment"> */</span>
<a name="l00055"></a><a class="code" href="classXercesProcessingInstructionBridge.html">00055</a> <span class="keyword">class </span><a class="code" href="XercesParserLiaisonDefinitions_8hpp.html#a8784e34032853206369b8386f5a993d8">XALAN_XERCESPARSERLIAISON_EXPORT</a> <a class="code" href="classXercesProcessingInstructionBridge.html" title="This class is deprecated.">XercesProcessingInstructionBridge</a> : <span class="keyword">public</span> <a class="code" href="classXalanProcessingInstruction.html">XalanProcessingInstruction</a>
<a name="l00056"></a>00056 {
<a name="l00057"></a>00057 <span class="keyword">public</span>:
<a name="l00058"></a>00058 
<a name="l00059"></a>00059     <a class="code" href="classXercesProcessingInstructionBridge.html" title="This class is deprecated.">XercesProcessingInstructionBridge</a>(
<a name="l00060"></a>00060             <span class="keyword">const</span> <a class="code" href="XercesBridgeTypes_8hpp.html#aa8ce44c7893e283264d2c81c1d27c64a">DOM_ProcessingInstructionType</a>&amp;    theXercesDOMProcessingInstruction,
<a name="l00061"></a>00061             <span class="keyword">const</span> <a class="code" href="classXercesBridgeNavigator.html" title="This class is deprecated.">XercesBridgeNavigator</a>&amp;            theNavigator);
<a name="l00062"></a>00062 
<a name="l00063"></a>00063     <span class="keyword">virtual</span>
<a name="l00064"></a>00064     ~<a class="code" href="classXercesProcessingInstructionBridge.html" title="This class is deprecated.">XercesProcessingInstructionBridge</a>();
<a name="l00065"></a>00065 
<a name="l00066"></a>00066 
<a name="l00067"></a>00067     <span class="comment">// These interfaces are inherited from XalanNode...</span>
<a name="l00068"></a>00068 
<a name="l00069"></a>00069     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l00070"></a>00070     <a class="code" href="classXalanProcessingInstruction.html#abd6e2d5425ce34d318dee3692a5186f4" title="Gets the name of this node, depending on its type.">getNodeName</a>() <span class="keyword">const</span>;
<a name="l00071"></a>00071 <span class="comment"></span>
<a name="l00072"></a>00072 <span class="comment">    /**</span>
<a name="l00073"></a>00073 <span class="comment">     * Gets the value of this node, depending on its type.</span>
<a name="l00074"></a>00074 <span class="comment">     */</span>
<a name="l00075"></a>00075     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l00076"></a>00076     <a class="code" href="classXalanProcessingInstruction.html#a65eb8424cf64640c2aaf6ca9ee173f5e" title="Gets the value of this node, depending on its type.">getNodeValue</a>() <span class="keyword">const</span>;
<a name="l00077"></a>00077 <span class="comment"></span>
<a name="l00078"></a>00078 <span class="comment">    /**</span>
<a name="l00079"></a>00079 <span class="comment">     * An enum value representing the type of the underlying object.</span>
<a name="l00080"></a>00080 <span class="comment">     */</span>
<a name="l00081"></a>00081     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html#a93d60cd336327226e55c45a320cced24">NodeType</a>
<a name="l00082"></a>00082     <a class="code" href="classXalanProcessingInstruction.html#a907ecb2a14bf25e925e383116ddc950f" title="An enum value representing the type of the underlying object.">getNodeType</a>() <span class="keyword">const</span>;
<a name="l00083"></a>00083 <span class="comment"></span>
<a name="l00084"></a>00084 <span class="comment">    /**</span>
<a name="l00085"></a>00085 <span class="comment">     * Gets the parent of this node.</span>
<a name="l00086"></a>00086 <span class="comment">     *</span>
<a name="l00087"></a>00087 <span class="comment">     * All nodes, except &lt;code&gt;Document&lt;/code&gt;,</span>
<a name="l00088"></a>00088 <span class="comment">     * &lt;code&gt;DocumentFragment&lt;/code&gt;, and &lt;code&gt;Attr&lt;/code&gt; may have a parent.</span>
<a name="l00089"></a>00089 <span class="comment">     * However, if a node has just been created and not yet added to the tree,</span>
<a name="l00090"></a>00090 <span class="comment">     * or if it has been removed from the tree, a &lt;code&gt;null&lt;/code&gt; DOM_Node</span>
<a name="l00091"></a>00091 <span class="comment">     * is returned.</span>
<a name="l00092"></a>00092 <span class="comment">     */</span>
<a name="l00093"></a>00093     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html">XalanNode</a>*
<a name="l00094"></a>00094     <a class="code" href="classXalanProcessingInstruction.html#a3b78e8213754742b2c077ca452bd13a2" title="Gets the parent of this node.">getParentNode</a>() <span class="keyword">const</span>;
<a name="l00095"></a>00095 <span class="comment"></span>
<a name="l00096"></a>00096 <span class="comment">    /**</span>
<a name="l00097"></a>00097 <span class="comment">     * Gets a &lt;code&gt;NodeList&lt;/code&gt; that contains all children of this node.</span>
<a name="l00098"></a>00098 <span class="comment">     *</span>
<a name="l00099"></a>00099 <span class="comment">     * If there</span>
<a name="l00100"></a>00100 <span class="comment">     * are no children, this is a &lt;code&gt;NodeList&lt;/code&gt; containing no nodes.</span>
<a name="l00101"></a>00101 <span class="comment">     * The content of the returned &lt;code&gt;NodeList&lt;/code&gt; is &quot;live&quot; in the sense</span>
<a name="l00102"></a>00102 <span class="comment">     * that, for instance, changes to the children of the node object that</span>
<a name="l00103"></a>00103 <span class="comment">     * it was created from are immediately reflected in the nodes returned by</span>
<a name="l00104"></a>00104 <span class="comment">     * the &lt;code&gt;NodeList&lt;/code&gt; accessors; it is not a static snapshot of the</span>
<a name="l00105"></a>00105 <span class="comment">     * content of the node. This is true for every &lt;code&gt;NodeList&lt;/code&gt;,</span>
<a name="l00106"></a>00106 <span class="comment">     * including the ones returned by the &lt;code&gt;getElementsByTagName&lt;/code&gt;</span>
<a name="l00107"></a>00107 <span class="comment">     * method.</span>
<a name="l00108"></a>00108 <span class="comment">     */</span>
<a name="l00109"></a>00109     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classXalanNodeList.html">XalanNodeList</a>*
<a name="l00110"></a>00110     <a class="code" href="classXalanProcessingInstruction.html#a8c4085ee68ef12cb136037c73e550183" title="Gets a NodeList that contains all children of this node.">getChildNodes</a>() <span class="keyword">const</span>;
<a name="l00111"></a>00111 <span class="comment"></span>
<a name="l00112"></a>00112 <span class="comment">    /**</span>
<a name="l00113"></a>00113 <span class="comment">     * Gets the first child of this node.</span>
<a name="l00114"></a>00114 <span class="comment">     *</span>
<a name="l00115"></a>00115 <span class="comment">     * If there is no such node, this returns &lt;code&gt;null&lt;/code&gt;.</span>
<a name="l00116"></a>00116 <span class="comment">     */</span>
<a name="l00117"></a>00117     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html">XalanNode</a>*
<a name="l00118"></a>00118     <a class="code" href="classXalanProcessingInstruction.html#ad89fc70b266968f72167c2be1fec6c8f" title="Gets the first child of this node.">getFirstChild</a>() <span class="keyword">const</span>;
<a name="l00119"></a>00119 <span class="comment"></span>
<a name="l00120"></a>00120 <span class="comment">    /**</span>
<a name="l00121"></a>00121 <span class="comment">     * Gets the last child of this node.</span>
<a name="l00122"></a>00122 <span class="comment">     *</span>
<a name="l00123"></a>00123 <span class="comment">     * If there is no such node, this returns &lt;code&gt;null&lt;/code&gt;.</span>
<a name="l00124"></a>00124 <span class="comment">     */</span>
<a name="l00125"></a>00125     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html">XalanNode</a>*
<a name="l00126"></a>00126     <a class="code" href="classXalanProcessingInstruction.html#a1358c4eae9a6ce7816e4eec07810db8b" title="Gets the last child of this node.">getLastChild</a>() <span class="keyword">const</span>;
<a name="l00127"></a>00127 <span class="comment"></span>
<a name="l00128"></a>00128 <span class="comment">    /**</span>
<a name="l00129"></a>00129 <span class="comment">     * Gets the node immediately preceding this node.</span>
<a name="l00130"></a>00130 <span class="comment">     *</span>
<a name="l00131"></a>00131 <span class="comment">     * If there is no such node, this returns &lt;code&gt;null&lt;/code&gt;.</span>
<a name="l00132"></a>00132 <span class="comment">     */</span>
<a name="l00133"></a>00133     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html">XalanNode</a>*
<a name="l00134"></a>00134     <a class="code" href="classXalanProcessingInstruction.html#ae3bcdb08057e952d1e82ebe2113900b8" title="Gets the node immediately preceding this node.">getPreviousSibling</a>() <span class="keyword">const</span>;
<a name="l00135"></a>00135 <span class="comment"></span>
<a name="l00136"></a>00136 <span class="comment">    /**</span>
<a name="l00137"></a>00137 <span class="comment">     * Gets the node immediately following this node.</span>
<a name="l00138"></a>00138 <span class="comment">     *</span>
<a name="l00139"></a>00139 <span class="comment">     * If there is no such node, this returns &lt;code&gt;null&lt;/code&gt;.</span>
<a name="l00140"></a>00140 <span class="comment">     */</span>
<a name="l00141"></a>00141     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html">XalanNode</a>*
<a name="l00142"></a>00142     <a class="code" href="classXalanProcessingInstruction.html#a5e88679a67c9016995ba2bc3148f44f5" title="Gets the node immediately following this node.">getNextSibling</a>() <span class="keyword">const</span>;
<a name="l00143"></a>00143 <span class="comment"></span>
<a name="l00144"></a>00144 <span class="comment">    /**</span>
<a name="l00145"></a>00145 <span class="comment">     * Gets a &lt;code&gt;NamedNodeMap&lt;/code&gt; containing the attributes of this node (if it</span>
<a name="l00146"></a>00146 <span class="comment">     * is an &lt;code&gt;Element&lt;/code&gt;) or &lt;code&gt;null&lt;/code&gt; otherwise.</span>
<a name="l00147"></a>00147 <span class="comment">     */</span>
<a name="l00148"></a>00148     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classXalanNamedNodeMap.html">XalanNamedNodeMap</a>*
<a name="l00149"></a>00149     <a class="code" href="classXalanProcessingInstruction.html#ac005c110391869d475315332603d64c3" title="Gets a NamedNodeMap containing the attributes of this node (if it is an Element) or null otherwise...">getAttributes</a>() <span class="keyword">const</span>;
<a name="l00150"></a>00150 <span class="comment"></span>
<a name="l00151"></a>00151 <span class="comment">    /**</span>
<a name="l00152"></a>00152 <span class="comment">     * Gets the &lt;code&gt;DOM_Document&lt;/code&gt; object associated with this node.</span>
<a name="l00153"></a>00153 <span class="comment">     *</span>
<a name="l00154"></a>00154 <span class="comment">     * This is also</span>
<a name="l00155"></a>00155 <span class="comment">     * the &lt;code&gt;DOM_Document&lt;/code&gt; object used to create new nodes. When this</span>
<a name="l00156"></a>00156 <span class="comment">     * node is a &lt;code&gt;DOM_Document&lt;/code&gt; or a &lt;code&gt;DOM_DocumentType&lt;/code&gt;</span>
<a name="l00157"></a>00157 <span class="comment">     * which is not used with any &lt;code&gt;DOM_Document&lt;/code&gt; yet, this is</span>
<a name="l00158"></a>00158 <span class="comment">     * &lt;code&gt;null&lt;/code&gt;.</span>
<a name="l00159"></a>00159 <span class="comment">     */</span>
<a name="l00160"></a>00160     <span class="keyword">virtual</span> <a class="code" href="classXalanDocument.html">XalanDocument</a>*
<a name="l00161"></a>00161     <a class="code" href="classXalanProcessingInstruction.html#aa3840d10b3248de1f28d83458f9bd8e2" title="Gets the Document object associated with this node.">getOwnerDocument</a>() <span class="keyword">const</span>;
<a name="l00162"></a>00162 <span class="comment"></span>
<a name="l00163"></a>00163 <span class="comment">    //@}</span>
<a name="l00164"></a>00164 <span class="comment"></span><span class="comment">    /** @name Cloning function. */</span><span class="comment"></span>
<a name="l00165"></a>00165 <span class="comment">    //@{</span>
<a name="l00166"></a>00166 <span class="comment"></span><span class="comment"></span>
<a name="l00167"></a>00167 <span class="comment">    /**</span>
<a name="l00168"></a>00168 <span class="comment">     * Returns a duplicate of this node.</span>
<a name="l00169"></a>00169 <span class="comment">     *</span>
<a name="l00170"></a>00170 <span class="comment">     * This function serves as a generic copy constructor for nodes.</span>
<a name="l00171"></a>00171 <span class="comment">     *</span>
<a name="l00172"></a>00172 <span class="comment">     * The duplicate node has no parent (</span>
<a name="l00173"></a>00173 <span class="comment">     * &lt;code&gt;parentNode&lt;/code&gt; returns &lt;code&gt;null&lt;/code&gt;.).</span>
<a name="l00174"></a>00174 <span class="comment">     * &lt;br&gt;Cloning an &lt;code&gt;Element&lt;/code&gt; copies all attributes and their</span>
<a name="l00175"></a>00175 <span class="comment">     * values, including those generated by the  XML processor to represent</span>
<a name="l00176"></a>00176 <span class="comment">     * defaulted attributes, but this method does not copy any text it contains</span>
<a name="l00177"></a>00177 <span class="comment">     * unless it is a deep clone, since the text is contained in a child</span>
<a name="l00178"></a>00178 <span class="comment">     * &lt;code&gt;Text&lt;/code&gt; node. Cloning any other type of node simply returns a</span>
<a name="l00179"></a>00179 <span class="comment">     * copy of this node.</span>
<a name="l00180"></a>00180 <span class="comment">     * @param deep If &lt;code&gt;true&lt;/code&gt;, recursively clone the subtree under the</span>
<a name="l00181"></a>00181 <span class="comment">     *   specified node; if &lt;code&gt;false&lt;/code&gt;, clone only the node itself (and</span>
<a name="l00182"></a>00182 <span class="comment">     *   its attributes, if it is an &lt;code&gt;Element&lt;/code&gt;).</span>
<a name="l00183"></a>00183 <span class="comment">     * @return The duplicate node.</span>
<a name="l00184"></a>00184 <span class="comment">     */</span>
<a name="l00185"></a>00185 <span class="preprocessor">#if defined(XALAN_NO_COVARIANT_RETURN_TYPE)</span>
<a name="l00186"></a>00186 <span class="preprocessor"></span>    <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html">XalanNode</a>*
<a name="l00187"></a>00187 <span class="preprocessor">#else</span>
<a name="l00188"></a>00188 <span class="preprocessor"></span>    <span class="keyword">virtual</span> <a class="code" href="classXercesProcessingInstructionBridge.html" title="This class is deprecated.">XercesProcessingInstructionBridge</a>*
<a name="l00189"></a>00189 <span class="preprocessor">#endif</span>
<a name="l00190"></a>00190 <span class="preprocessor"></span>    cloneNode(<span class="keywordtype">bool</span> deep) <span class="keyword">const</span>;
<a name="l00191"></a>00191 <span class="comment"></span>
<a name="l00192"></a>00192 <span class="comment">    //@}</span>
<a name="l00193"></a>00193 <span class="comment"></span><span class="comment">    /** @name Functions to modify the DOM Node. */</span><span class="comment"></span>
<a name="l00194"></a>00194 <span class="comment">    //@{</span>
<a name="l00195"></a>00195 <span class="comment"></span><span class="comment"></span>
<a name="l00196"></a>00196 <span class="comment">    /**</span>
<a name="l00197"></a>00197 <span class="comment">     * Inserts the node &lt;code&gt;newChild&lt;/code&gt; before the existing child node</span>
<a name="l00198"></a>00198 <span class="comment">     * &lt;code&gt;refChild&lt;/code&gt;.</span>
<a name="l00199"></a>00199 <span class="comment">     *</span>
<a name="l00200"></a>00200 <span class="comment">     * If &lt;code&gt;refChild&lt;/code&gt; is &lt;code&gt;null&lt;/code&gt;,</span>
<a name="l00201"></a>00201 <span class="comment">     * insert &lt;code&gt;newChild&lt;/code&gt; at the end of the list of children.</span>
<a name="l00202"></a>00202 <span class="comment">     * &lt;br&gt;If &lt;code&gt;newChild&lt;/code&gt; is a &lt;code&gt;DocumentFragment&lt;/code&gt; object,</span>
<a name="l00203"></a>00203 <span class="comment">     * all of its children are inserted, in the same order, before</span>
<a name="l00204"></a>00204 <span class="comment">     * &lt;code&gt;refChild&lt;/code&gt;. If the &lt;code&gt;newChild&lt;/code&gt; is already in the</span>
<a name="l00205"></a>00205 <span class="comment">     * tree, it is first removed.  Note that a &lt;code&gt;DOM_Node&lt;/code&gt; that</span>
<a name="l00206"></a>00206 <span class="comment">     * has never been assigned to refer to an actual node is == null.</span>
<a name="l00207"></a>00207 <span class="comment">     * @param newChild The node to insert.</span>
<a name="l00208"></a>00208 <span class="comment">     * @param refChild The reference node, i.e., the node before which the new</span>
<a name="l00209"></a>00209 <span class="comment">     *   node must be inserted.</span>
<a name="l00210"></a>00210 <span class="comment">     * @return The node being inserted.</span>
<a name="l00211"></a>00211 <span class="comment">     */</span>
<a name="l00212"></a>00212     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html">XalanNode</a>*
<a name="l00213"></a>00213     insertBefore(
<a name="l00214"></a>00214             <a class="code" href="classXalanNode.html">XalanNode</a>*  newChild,
<a name="l00215"></a>00215             <a class="code" href="classXalanNode.html">XalanNode</a>*  refChild);
<a name="l00216"></a>00216 <span class="comment"></span>
<a name="l00217"></a>00217 <span class="comment">    /**</span>
<a name="l00218"></a>00218 <span class="comment">     * Replaces the child node &lt;code&gt;oldChild&lt;/code&gt; with &lt;code&gt;newChild&lt;/code&gt;</span>
<a name="l00219"></a>00219 <span class="comment">     * in the list of children, and returns the &lt;code&gt;oldChild&lt;/code&gt; node.</span>
<a name="l00220"></a>00220 <span class="comment">     *</span>
<a name="l00221"></a>00221 <span class="comment">     * If &lt;CODE&gt;newChild&lt;/CODE&gt; is a &lt;CODE&gt;DOM_DocumentFragment&lt;/CODE&gt; object,</span>
<a name="l00222"></a>00222 <span class="comment">     * &lt;CODE&gt;oldChild&lt;/CODE&gt; is replaced by all of the &lt;CODE&gt;DOM_DocumentFragment&lt;/CODE&gt;</span>
<a name="l00223"></a>00223 <span class="comment">     * children, which are inserted in the same order.</span>
<a name="l00224"></a>00224 <span class="comment">     *</span>
<a name="l00225"></a>00225 <span class="comment">     * If the &lt;code&gt;newChild&lt;/code&gt; is already in the tree, it is first removed.</span>
<a name="l00226"></a>00226 <span class="comment">     * @param newChild The new node to put in the child list.</span>
<a name="l00227"></a>00227 <span class="comment">     * @param oldChild The node being replaced in the list.</span>
<a name="l00228"></a>00228 <span class="comment">     * @return The node replaced.</span>
<a name="l00229"></a>00229 <span class="comment">     */</span>
<a name="l00230"></a>00230     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html">XalanNode</a>*
<a name="l00231"></a>00231     replaceChild(
<a name="l00232"></a>00232             <a class="code" href="classXalanNode.html">XalanNode</a>*  newChild,
<a name="l00233"></a>00233             <a class="code" href="classXalanNode.html">XalanNode</a>*  oldChild);
<a name="l00234"></a>00234 <span class="comment"></span>
<a name="l00235"></a>00235 <span class="comment">    /**</span>
<a name="l00236"></a>00236 <span class="comment">     * Removes the child node indicated by &lt;code&gt;oldChild&lt;/code&gt; from the list</span>
<a name="l00237"></a>00237 <span class="comment">     * of children, and returns it.</span>
<a name="l00238"></a>00238 <span class="comment">     *</span>
<a name="l00239"></a>00239 <span class="comment">     * @param oldChild The node being removed.</span>
<a name="l00240"></a>00240 <span class="comment">     * @return The node removed.</span>
<a name="l00241"></a>00241 <span class="comment">     */</span>
<a name="l00242"></a>00242     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html">XalanNode</a>*
<a name="l00243"></a>00243     removeChild(<a class="code" href="classXalanNode.html">XalanNode</a>*  oldChild);
<a name="l00244"></a>00244 <span class="comment"></span>
<a name="l00245"></a>00245 <span class="comment">    /**</span>
<a name="l00246"></a>00246 <span class="comment">     * Adds the node &lt;code&gt;newChild&lt;/code&gt; to the end of the list of children of</span>
<a name="l00247"></a>00247 <span class="comment">     * this node.</span>
<a name="l00248"></a>00248 <span class="comment">     *</span>
<a name="l00249"></a>00249 <span class="comment">     * If the &lt;code&gt;newChild&lt;/code&gt; is already in the tree, it is</span>
<a name="l00250"></a>00250 <span class="comment">     * first removed.</span>
<a name="l00251"></a>00251 <span class="comment">     * @param newChild The node to add.If it is a  &lt;code&gt;DocumentFragment&lt;/code&gt;</span>
<a name="l00252"></a>00252 <span class="comment">     *   object, the entire contents of the document fragment are moved into</span>
<a name="l00253"></a>00253 <span class="comment">     *   the child list of this node</span>
<a name="l00254"></a>00254 <span class="comment">     * @return The node added.</span>
<a name="l00255"></a>00255 <span class="comment">     */</span>
<a name="l00256"></a>00256     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html">XalanNode</a>*
<a name="l00257"></a>00257     appendChild(<a class="code" href="classXalanNode.html">XalanNode</a>*  newChild);
<a name="l00258"></a>00258 <span class="comment"></span>
<a name="l00259"></a>00259 <span class="comment">    //@}</span>
<a name="l00260"></a>00260 <span class="comment"></span><span class="comment">    /** @name Query functions. */</span><span class="comment"></span>
<a name="l00261"></a>00261 <span class="comment">    //@{</span>
<a name="l00262"></a>00262 <span class="comment"></span><span class="comment"></span>
<a name="l00263"></a>00263 <span class="comment">    /**</span>
<a name="l00264"></a>00264 <span class="comment">     *  This is a convenience method to allow easy determination of whether a</span>
<a name="l00265"></a>00265 <span class="comment">     * node has any children.</span>
<a name="l00266"></a>00266 <span class="comment">     *</span>
<a name="l00267"></a>00267 <span class="comment">     * @return  &lt;code&gt;true&lt;/code&gt; if the node has any children,</span>
<a name="l00268"></a>00268 <span class="comment">     *   &lt;code&gt;false&lt;/code&gt; if the node has no children.</span>
<a name="l00269"></a>00269 <span class="comment">     */</span>
<a name="l00270"></a>00270     <span class="keyword">virtual</span> <span class="keywordtype">bool</span>
<a name="l00271"></a>00271     hasChildNodes() <span class="keyword">const</span>;
<a name="l00272"></a>00272 
<a name="l00273"></a>00273 <span class="comment"></span>
<a name="l00274"></a>00274 <span class="comment">    //@}</span>
<a name="l00275"></a>00275 <span class="comment"></span><span class="comment">    /** @name Set functions. */</span><span class="comment"></span>
<a name="l00276"></a>00276 <span class="comment">    //@{</span>
<a name="l00277"></a>00277 <span class="comment"></span>
<a name="l00278"></a>00278 <span class="comment"></span>
<a name="l00279"></a>00279 <span class="comment">    /**</span>
<a name="l00280"></a>00280 <span class="comment">    * Sets the value of the node.</span>
<a name="l00281"></a>00281 <span class="comment">    *</span>
<a name="l00282"></a>00282 <span class="comment">    * Any node which can have a nodeValue (@see getNodeValue) will</span>
<a name="l00283"></a>00283 <span class="comment">    * also accept requests to set it to a string. The exact response to</span>
<a name="l00284"></a>00284 <span class="comment">    * this varies from node to node -- Attribute, for example, stores</span>
<a name="l00285"></a>00285 <span class="comment">    * its values in its children and has to replace them with a new Text</span>
<a name="l00286"></a>00286 <span class="comment">    * holding the replacement value.</span>
<a name="l00287"></a>00287 <span class="comment">    *</span>
<a name="l00288"></a>00288 <span class="comment">    * For most types of Node, value is null and attempting to set it</span>
<a name="l00289"></a>00289 <span class="comment">    * will throw DOMException(NO_MODIFICATION_ALLOWED_ERR). This will</span>
<a name="l00290"></a>00290 <span class="comment">    * also be thrown if the node is read-only.</span>
<a name="l00291"></a>00291 <span class="comment">    */</span>
<a name="l00292"></a>00292     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00293"></a>00293     setNodeValue(<span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;  nodeValue);
<a name="l00294"></a>00294 <span class="comment"></span>
<a name="l00295"></a>00295 <span class="comment">    //@}</span>
<a name="l00296"></a>00296 <span class="comment"></span><span class="comment">    /** @name Functions introduced in DOM Level 2. */</span><span class="comment"></span>
<a name="l00297"></a>00297 <span class="comment">    //@{</span>
<a name="l00298"></a>00298 <span class="comment"></span><span class="comment"></span>
<a name="l00299"></a>00299 <span class="comment">    /**</span>
<a name="l00300"></a>00300 <span class="comment">     * Puts all &lt;CODE&gt;DOM_Text&lt;/CODE&gt;</span>
<a name="l00301"></a>00301 <span class="comment">     * nodes in the full depth of the sub-tree underneath this &lt;CODE&gt;DOM_Node&lt;/CODE&gt;, </span>
<a name="l00302"></a>00302 <span class="comment">     * including attribute nodes, into a &quot;normal&quot; form where only markup (e.g., </span>
<a name="l00303"></a>00303 <span class="comment">     * tags, comments, processing instructions, CDATA sections, and entity </span>
<a name="l00304"></a>00304 <span class="comment">     * references) separates &lt;CODE&gt;DOM_Text&lt;/CODE&gt;</span>
<a name="l00305"></a>00305 <span class="comment">     * nodes, i.e., there are no adjacent &lt;CODE&gt;DOM_Text&lt;/CODE&gt;</span>
<a name="l00306"></a>00306 <span class="comment">     * nodes. This can be used to ensure that the DOM view of a document is the </span>
<a name="l00307"></a>00307 <span class="comment">     * same as if it were saved and re-loaded, and is useful when operations </span>
<a name="l00308"></a>00308 <span class="comment">     * (such as XPointer lookups) that depend on a particular document tree </span>
<a name="l00309"></a>00309 <span class="comment">     * structure are to be used.</span>
<a name="l00310"></a>00310 <span class="comment">     * &lt;P&gt;&lt;B&gt;Note:&lt;/B&gt; In cases where the document contains &lt;CODE&gt;DOM_CDATASections&lt;/CODE&gt;, </span>
<a name="l00311"></a>00311 <span class="comment">     * the normalize operation alone may not be sufficient, since XPointers do </span>
<a name="l00312"></a>00312 <span class="comment">     * not differentiate between &lt;CODE&gt;DOM_Text&lt;/CODE&gt;</span>
<a name="l00313"></a>00313 <span class="comment">     * nodes and &lt;CODE&gt;DOM_CDATASection&lt;/CODE&gt; nodes.&lt;/P&gt;</span>
<a name="l00314"></a>00314 <span class="comment">     */</span>
<a name="l00315"></a>00315     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00316"></a>00316     normalize();
<a name="l00317"></a>00317 <span class="comment"></span>
<a name="l00318"></a>00318 <span class="comment">    /**</span>
<a name="l00319"></a>00319 <span class="comment">     * Tests whether the DOM implementation implements a specific</span>
<a name="l00320"></a>00320 <span class="comment">     * feature and that feature is supported by this node.</span>
<a name="l00321"></a>00321 <span class="comment">     * @param feature The string of the feature to test. This is the same</span>
<a name="l00322"></a>00322 <span class="comment">     * name as what can be passed to the method &lt;code&gt;hasFeature&lt;/code&gt; on</span>
<a name="l00323"></a>00323 <span class="comment">     * &lt;code&gt;DOMImplementation&lt;/code&gt;.</span>
<a name="l00324"></a>00324 <span class="comment">     * @param version This is the version number of the feature to test. In</span>
<a name="l00325"></a>00325 <span class="comment">     * Level 2, version 1, this is the string &quot;2.0&quot;. If the version is not</span>
<a name="l00326"></a>00326 <span class="comment">     * specified, supporting any version of the feature will cause the</span>
<a name="l00327"></a>00327 <span class="comment">     * method to return &lt;code&gt;true&lt;/code&gt;.</span>
<a name="l00328"></a>00328 <span class="comment">     * @return Returns &lt;code&gt;true&lt;/code&gt; if the specified feature is supported</span>
<a name="l00329"></a>00329 <span class="comment">     * on this node, &lt;code&gt;false&lt;/code&gt; otherwise.</span>
<a name="l00330"></a>00330 <span class="comment">     */</span>
<a name="l00331"></a>00331     <span class="keyword">virtual</span> <span class="keywordtype">bool</span>
<a name="l00332"></a>00332     isSupported(
<a name="l00333"></a>00333             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   feature,
<a name="l00334"></a>00334             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   version) <span class="keyword">const</span>;
<a name="l00335"></a>00335 <span class="comment"></span>
<a name="l00336"></a>00336 <span class="comment">    /**</span>
<a name="l00337"></a>00337 <span class="comment">     * Get the &lt;em&gt;namespace URI&lt;/em&gt; of</span>
<a name="l00338"></a>00338 <span class="comment">     * this node, or &lt;code&gt;null&lt;/code&gt; if it is unspecified.</span>
<a name="l00339"></a>00339 <span class="comment">     * &lt;p&gt;</span>
<a name="l00340"></a>00340 <span class="comment">     * This is not a computed value that is the result of a namespace lookup</span>
<a name="l00341"></a>00341 <span class="comment">     * based on an examination of the namespace declarations in scope. It is</span>
<a name="l00342"></a>00342 <span class="comment">     * merely the namespace URI given at creation time.</span>
<a name="l00343"></a>00343 <span class="comment">     * &lt;p&gt;</span>
<a name="l00344"></a>00344 <span class="comment">     * For nodes of any type other than &lt;CODE&gt;ELEMENT_NODE&lt;/CODE&gt; and </span>
<a name="l00345"></a>00345 <span class="comment">     * &lt;CODE&gt;ATTRIBUTE_NODE&lt;/CODE&gt; and nodes created with a DOM Level 1 method, </span>
<a name="l00346"></a>00346 <span class="comment">     * such as &lt;CODE&gt;createElement&lt;/CODE&gt; from the &lt;CODE&gt;Document&lt;/CODE&gt;</span>
<a name="l00347"></a>00347 <span class="comment">     * interface, this is always &lt;CODE&gt;null&lt;/CODE&gt;.</span>
<a name="l00348"></a>00348 <span class="comment">     */</span>
<a name="l00349"></a>00349     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l00350"></a>00350     <a class="code" href="classXalanProcessingInstruction.html#aeb15f5dc809dee8509e1326184679b0d" title="Get the namespace URI of this node, or null if it is unspecified.">getNamespaceURI</a>() <span class="keyword">const</span>;
<a name="l00351"></a>00351 <span class="comment"></span>
<a name="l00352"></a>00352 <span class="comment">    /**</span>
<a name="l00353"></a>00353 <span class="comment">     * Get the &lt;em&gt;namespace prefix&lt;/em&gt;</span>
<a name="l00354"></a>00354 <span class="comment">     * of this node, or &lt;code&gt;null&lt;/code&gt; if it is unspecified.</span>
<a name="l00355"></a>00355 <span class="comment">     */</span>
<a name="l00356"></a>00356     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l00357"></a>00357     <a class="code" href="classXalanProcessingInstruction.html#acd787133ab204693aa2ec2ecace62247" title="Get the namespace prefix of this node, or null if it is unspecified.">getPrefix</a>() <span class="keyword">const</span>;
<a name="l00358"></a>00358 <span class="comment"></span>
<a name="l00359"></a>00359 <span class="comment">    /**</span>
<a name="l00360"></a>00360 <span class="comment">     * Returns the local part of the &lt;em&gt;qualified name&lt;/em&gt; of this node.</span>
<a name="l00361"></a>00361 <span class="comment">     * &lt;p&gt;</span>
<a name="l00362"></a>00362 <span class="comment">     * For nodes created with a DOM Level 1 method, such as</span>
<a name="l00363"></a>00363 <span class="comment">     * &lt;code&gt;createElement&lt;/code&gt; from the &lt;code&gt;DOM_Document&lt;/code&gt; interface,</span>
<a name="l00364"></a>00364 <span class="comment">     * it is null.</span>
<a name="l00365"></a>00365 <span class="comment">     */</span>
<a name="l00366"></a>00366     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l00367"></a>00367     <a class="code" href="classXalanProcessingInstruction.html#afb40627c25941ebb99e674b301627e0c" title="Returns the local part of the qualified name of this node.">getLocalName</a>() <span class="keyword">const</span>;
<a name="l00368"></a>00368 <span class="comment"></span>
<a name="l00369"></a>00369 <span class="comment">    /**</span>
<a name="l00370"></a>00370 <span class="comment">     * Set the &lt;em&gt;namespace prefix&lt;/em&gt; of this node.</span>
<a name="l00371"></a>00371 <span class="comment">     * &lt;p&gt;</span>
<a name="l00372"></a>00372 <span class="comment">     * Note that setting this attribute, when permitted, changes </span>
<a name="l00373"></a>00373 <span class="comment">     * the &lt;CODE&gt;nodeName&lt;/CODE&gt; attribute, which holds the &lt;EM&gt;qualified </span>
<a name="l00374"></a>00374 <span class="comment">     * name&lt;/EM&gt;, as well as the &lt;CODE&gt;tagName&lt;/CODE&gt; and &lt;CODE&gt;name&lt;/CODE&gt; </span>
<a name="l00375"></a>00375 <span class="comment">     * attributes of the &lt;CODE&gt;DOM_Element&lt;/CODE&gt; and &lt;CODE&gt;DOM_Attr&lt;/CODE&gt;</span>
<a name="l00376"></a>00376 <span class="comment">     * interfaces, when applicable.</span>
<a name="l00377"></a>00377 <span class="comment">     * &lt;p&gt;</span>
<a name="l00378"></a>00378 <span class="comment">     * Note also that changing the prefix of an </span>
<a name="l00379"></a>00379 <span class="comment">     * attribute, that is known to have a default value, does not make a new </span>
<a name="l00380"></a>00380 <span class="comment">     * attribute with the default value and the original prefix appear, since the </span>
<a name="l00381"></a>00381 <span class="comment">     * &lt;CODE&gt;namespaceURI&lt;/CODE&gt; and &lt;CODE&gt;localName&lt;/CODE&gt; do not change.</span>
<a name="l00382"></a>00382 <span class="comment">     *</span>
<a name="l00383"></a>00383 <span class="comment">     * @param prefix The prefix of this node.</span>
<a name="l00384"></a>00384 <span class="comment">     * @exception DOMException</span>
<a name="l00385"></a>00385 <span class="comment">     *   INVALID_CHARACTER_ERR: Raised if the specified prefix contains</span>
<a name="l00386"></a>00386 <span class="comment">     *                          an illegal character.</span>
<a name="l00387"></a>00387 <span class="comment">     * &lt;br&gt;</span>
<a name="l00388"></a>00388 <span class="comment">     *   NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly.</span>
<a name="l00389"></a>00389 <span class="comment">     * &lt;br&gt;</span>
<a name="l00390"></a>00390 <span class="comment">     *   NAMESPACE_ERR: Raised if the specified &lt;CODE&gt;prefix&lt;/CODE&gt; is </span>
<a name="l00391"></a>00391 <span class="comment">     *       malformed, if the specified prefix is &quot;xml&quot; and the </span>
<a name="l00392"></a>00392 <span class="comment">     *       &lt;CODE&gt;namespaceURI&lt;/CODE&gt; of this node is different from </span>
<a name="l00393"></a>00393 <span class="comment">     *       &quot;http://www.w3.org/XML/1998/namespace&quot;, if specified prefix is </span>
<a name="l00394"></a>00394 <span class="comment">     *       &quot;xmlns&quot; and the &lt;CODE&gt;namespaceURI&lt;/CODE&gt; is neither </span>
<a name="l00395"></a>00395 <span class="comment">     *       &lt;CODE&gt;null&lt;/CODE&gt; nor an empty string, or if the </span>
<a name="l00396"></a>00396 <span class="comment">     *       &lt;CODE&gt;localName&lt;/CODE&gt; is &lt;CODE&gt;null&lt;/CODE&gt;.</span>
<a name="l00397"></a>00397 <span class="comment">     */</span>
<a name="l00398"></a>00398     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00399"></a>00399     setPrefix(<span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp; prefix);
<a name="l00400"></a>00400 
<a name="l00401"></a>00401     <span class="keyword">virtual</span> <span class="keywordtype">bool</span>
<a name="l00402"></a>00402     <a class="code" href="classXalanProcessingInstruction.html#ad2b95f3be601409a716efbdc39675e0c" title="Determine if the document is node-order indexed.">isIndexed</a>() <span class="keyword">const</span>;
<a name="l00403"></a>00403 
<a name="l00404"></a>00404     <span class="keyword">virtual</span> <a class="code" href="classXalanNode.html#a737e6c797973546c10650cd72cc5f8ab">IndexType</a>
<a name="l00405"></a>00405     <a class="code" href="classXalanProcessingInstruction.html#ae6c39ec74afa68e55f915852cb6f5a75" title="Get the node&amp;#39;s index.">getIndex</a>() <span class="keyword">const</span>;
<a name="l00406"></a>00406 <span class="comment"></span>
<a name="l00407"></a>00407 <span class="comment">    //@}</span>
<a name="l00408"></a>00408 <span class="comment"></span>
<a name="l00409"></a>00409     <span class="comment">// These interfaces are inherited from XalanProcessingInstruction...</span>
<a name="l00410"></a>00410 <span class="comment"></span>
<a name="l00411"></a>00411 <span class="comment">    //@}</span>
<a name="l00412"></a>00412 <span class="comment"></span><span class="comment">    /** @name Get functions. */</span><span class="comment"></span>
<a name="l00413"></a>00413 <span class="comment">    //@{</span>
<a name="l00414"></a>00414 <span class="comment"></span><span class="comment">    /**</span>
<a name="l00415"></a>00415 <span class="comment">     * The target of this processing instruction. </span>
<a name="l00416"></a>00416 <span class="comment">     *</span>
<a name="l00417"></a>00417 <span class="comment">     * XML defines this as being the </span>
<a name="l00418"></a>00418 <span class="comment">     * first token following the markup that begins the processing instruction.</span>
<a name="l00419"></a>00419 <span class="comment">     */</span>
<a name="l00420"></a>00420     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l00421"></a>00421     <a class="code" href="classXalanProcessingInstruction.html#a183243e5a531de7b3f6c85e9ad42ef3d" title="The target of this processing instruction.">getTarget</a>() <span class="keyword">const</span>;
<a name="l00422"></a>00422 <span class="comment"></span>
<a name="l00423"></a>00423 <span class="comment">    /**</span>
<a name="l00424"></a>00424 <span class="comment">     * The content of this processing instruction. </span>
<a name="l00425"></a>00425 <span class="comment">     *</span>
<a name="l00426"></a>00426 <span class="comment">     * This is from the first non </span>
<a name="l00427"></a>00427 <span class="comment">     * white space character after the target to the character immediately </span>
<a name="l00428"></a>00428 <span class="comment">     * preceding the &lt;code&gt;?&amp;gt;&lt;/code&gt;.</span>
<a name="l00429"></a>00429 <span class="comment">     * @exception DOMException</span>
<a name="l00430"></a>00430 <span class="comment">     *   NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly.</span>
<a name="l00431"></a>00431 <span class="comment">     */</span>
<a name="l00432"></a>00432     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l00433"></a>00433     <a class="code" href="classXalanProcessingInstruction.html#a61b291ebc6f3497bea1ea6b38d927f69" title="The content of this processing instruction.">getData</a>() <span class="keyword">const</span>;
<a name="l00434"></a>00434 <span class="comment"></span>
<a name="l00435"></a>00435 <span class="comment">    //@}</span>
<a name="l00436"></a>00436 <span class="comment"></span><span class="comment">    /** @name Set functions. */</span><span class="comment"></span>
<a name="l00437"></a>00437 <span class="comment">    //@{</span>
<a name="l00438"></a>00438 <span class="comment"></span><span class="comment">    /**</span>
<a name="l00439"></a>00439 <span class="comment">    * Sets the content of this processing instruction. </span>
<a name="l00440"></a>00440 <span class="comment">    *</span>
<a name="l00441"></a>00441 <span class="comment">    * This is from the first non </span>
<a name="l00442"></a>00442 <span class="comment">    * white space character after the target to the character immediately </span>
<a name="l00443"></a>00443 <span class="comment">    * preceding the &lt;code&gt;?&amp;gt;&lt;/code&gt;.</span>
<a name="l00444"></a>00444 <span class="comment">    * @param data The string containing the processing instruction</span>
<a name="l00445"></a>00445 <span class="comment">    */</span>
<a name="l00446"></a>00446     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00447"></a>00447     setData(<span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   data);<span class="comment"></span>
<a name="l00448"></a>00448 <span class="comment">    //@}</span>
<a name="l00449"></a>00449 <span class="comment"></span><span class="comment"></span>
<a name="l00450"></a>00450 <span class="comment">    /**</span>
<a name="l00451"></a>00451 <span class="comment">     * Get the Xerces node this instance represent.</span>
<a name="l00452"></a>00452 <span class="comment">     *</span>
<a name="l00453"></a>00453 <span class="comment">     * @return The Xerces node</span>
<a name="l00454"></a>00454 <span class="comment">     */</span>
<a name="l00455"></a>00455     <a class="code" href="XercesBridgeTypes_8hpp.html#aa8ce44c7893e283264d2c81c1d27c64a">DOM_ProcessingInstructionType</a>
<a name="l00456"></a><a class="code" href="classXercesProcessingInstructionBridge.html#acf8864d98c70b83249644086f9951f52">00456</a>     getXercesNode()<span class="keyword"> const</span>
<a name="l00457"></a>00457 <span class="keyword">    </span>{
<a name="l00458"></a>00458         <span class="keywordflow">return</span> m_xercesNode;
<a name="l00459"></a>00459     }
<a name="l00460"></a>00460 
<a name="l00461"></a>00461 <span class="keyword">private</span>:
<a name="l00462"></a>00462 
<a name="l00463"></a>00463     <span class="comment">// Not implemented...</span>
<a name="l00464"></a>00464     <a class="code" href="classXercesProcessingInstructionBridge.html" title="This class is deprecated.">XercesProcessingInstructionBridge</a>(<span class="keyword">const</span> <a class="code" href="classXercesProcessingInstructionBridge.html" title="This class is deprecated.">XercesProcessingInstructionBridge</a>&amp;  theSource);
<a name="l00465"></a>00465 
<a name="l00466"></a>00466     <a class="code" href="classXercesProcessingInstructionBridge.html" title="This class is deprecated.">XercesProcessingInstructionBridge</a>&amp;
<a name="l00467"></a>00467     <a class="code" href="classXalanProcessingInstruction.html#af6df6abde1c5631668efca69b1c12d16">operator=</a>(<span class="keyword">const</span> <a class="code" href="classXercesProcessingInstructionBridge.html" title="This class is deprecated.">XercesProcessingInstructionBridge</a>&amp;  theSource);
<a name="l00468"></a>00468 
<a name="l00469"></a>00469     <span class="keywordtype">bool</span>
<a name="l00470"></a>00470     <a class="code" href="classXalanProcessingInstruction.html#a8c3a50e3aa7c7b492502c2574a07a766">operator==</a>(<span class="keyword">const</span> <a class="code" href="classXercesProcessingInstructionBridge.html" title="This class is deprecated.">XercesProcessingInstructionBridge</a>&amp;     theRHS) <span class="keyword">const</span>;
<a name="l00471"></a>00471 
<a name="l00472"></a>00472     <span class="comment">// Data members...</span>
<a name="l00473"></a>00473     <a class="code" href="XercesBridgeTypes_8hpp.html#aa8ce44c7893e283264d2c81c1d27c64a">DOM_ProcessingInstructionType</a>   m_xercesNode;
<a name="l00474"></a>00474 
<a name="l00475"></a>00475     <span class="keyword">const</span> <a class="code" href="classXercesBridgeNavigator.html" title="This class is deprecated.">XercesBridgeNavigator</a>&amp;    m_navigator;
<a name="l00476"></a>00476 };
<a name="l00477"></a>00477 
<a name="l00478"></a>00478 
<a name="l00479"></a>00479 
<a name="l00480"></a>00480 XALAN_CPP_NAMESPACE_END
<a name="l00481"></a>00481 
<a name="l00482"></a>00482 
<a name="l00483"></a>00483 
<a name="l00484"></a>00484 <span class="preprocessor">#endif  // !defined(XERCESPROCESSINGINSTRUCTIONBRIDGE_HEADER_GUARD_1357924680)</span>
</pre></div></div>
</div>
<p align="center"><a href="graph_legend.html">Interpreting class diagrams</a></p>
<p><font color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><a href="http://www.doxygen.org/">Doxygen</a> and 
<a href="http://www.graphviz.org/">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="80%">
 <tr>
  <td width="80%" valign="top">
	<p align="center"><b>Xalan-C++ XSLT Processor Version 1.11</b><br/>
	Copyright &copy; 1999-2012 The Apache Software Foundation.<br/>
	All Rights Reserved.</p>
  </td>
 </tr>
 <tr>
  <td width="100%">
	<p align="center"><img src="asf_logo_wide.gif" width="268" height="25" align="bottom" border="0" alt="Apache Logo">
  </td>
 </tr>
</table>
</body>
</html>
