<!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>XalanSourceTreeParserLiaison.hpp</h1>  </div>
</div>
<div class="contents">
<a href="XalanSourceTreeParserLiaison_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(XALANSOURCETREEPARSERLIAISON_HEADER_GUARD_1357924680)</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define XALANSOURCETREEPARSERLIAISON_HEADER_GUARD_1357924680</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span>
<a name="l00021"></a>00021 
<a name="l00022"></a>00022 <span class="comment">// Base include file.  Must be first.</span>
<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;<a class="code" href="XalanSourceTreeDefinitions_8hpp.html">xalanc/XalanSourceTree/XalanSourceTreeDefinitions.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">#include &lt;<a class="code" href="XalanMap_8hpp.html">xalanc/Include/XalanMap.hpp</a>&gt;</span>
<a name="l00028"></a>00028 
<a name="l00029"></a>00029 
<a name="l00030"></a>00030 
<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;<a class="code" href="XercesDOMSupport_8hpp.html">xalanc/XercesParserLiaison/XercesDOMSupport.hpp</a>&gt;</span>
<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;<a class="code" href="XercesParserLiaison_8hpp.html">xalanc/XercesParserLiaison/XercesParserLiaison.hpp</a>&gt;</span>
<a name="l00033"></a>00033 
<a name="l00034"></a>00034 
<a name="l00035"></a>00035 
<a name="l00036"></a>00036 XALAN_DECLARE_XERCES_CLASS(ContentHandler)
<a name="l00037"></a>00037 XALAN_DECLARE_XERCES_CLASS(DTDHandler)
<a name="l00038"></a>00038 XALAN_DECLARE_XERCES_CLASS(LexicalHandler)
<a name="l00039"></a>00039 XALAN_DECLARE_XERCES_CLASS(SAX2XMLReaderImpl)
<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 class <a class="code" href="classXalanSourceTreeDOMSupport.html">XalanSourceTreeDOMSupport</a>;
<a name="l00048"></a>00048 class <a class="code" href="classXalanSourceTreeDocument.html">XalanSourceTreeDocument</a>;
<a name="l00049"></a>00049 
<a name="l00050"></a>00050 
<a name="l00051"></a>00051 
<a name="l00052"></a>00052 <span class="comment">/*</span>
<a name="l00053"></a>00053 <span class="comment">typedef XERCES_CPP_NAMESPACE_QUALIFIER ContentHandler       ContentHandlerType;</span>
<a name="l00054"></a>00054 <span class="comment">typedef XERCES_CPP_NAMESPACE_QUALIFIER DTDHandler           DTDHandlerType;</span>
<a name="l00055"></a>00055 <span class="comment">typedef XERCES_CPP_NAMESPACE_QUALIFIER LexicalHandler       LexicalHandlerType;</span>
<a name="l00056"></a>00056 <span class="comment">typedef XERCES_CPP_NAMESPACE_QUALIFIER SAX2XMLReader        SAX2XMLReaderType;</span>
<a name="l00057"></a>00057 <span class="comment">*/</span>
<a name="l00058"></a>00058 
<a name="l00059"></a>00059 <a class="code" href="XSLTProcessor_8hpp.html#a24af2755e58bade5ff0d5965b855e56a">XALAN_USING_XERCES</a>(ContentHandler)
<a name="l00060"></a>00060 <a class="code" href="XSLTProcessor_8hpp.html#a24af2755e58bade5ff0d5965b855e56a">XALAN_USING_XERCES</a>(DTDHandler)
<a name="l00061"></a>00061 <a class="code" href="XSLTProcessor_8hpp.html#a24af2755e58bade5ff0d5965b855e56a">XALAN_USING_XERCES</a>(LexicalHandler)
<a name="l00062"></a>00062 <a class="code" href="XSLTProcessor_8hpp.html#a24af2755e58bade5ff0d5965b855e56a">XALAN_USING_XERCES</a>(SAX2XMLReaderImpl)
<a name="l00063"></a>00063 
<a name="l00064"></a>00064 
<a name="l00065"></a><a class="code" href="classXalanSourceTreeParserLiaison.html">00065</a> class <a class="code" href="XalanSourceTreeDefinitions_8hpp.html#ab668c8aeadc52576c1aab5a1888f349c">XALAN_XALANSOURCETREE_EXPORT</a>  <a class="code" href="classXalanSourceTreeParserLiaison.html">XalanSourceTreeParserLiaison</a> : public <a class="code" href="classXMLParserLiaison.html">XMLParserLiaison</a>
<a name="l00066"></a>00066 {
<a name="l00067"></a>00067     
<a name="l00068"></a>00068 <span class="keyword">public</span>:
<a name="l00069"></a>00069 <span class="comment"></span>
<a name="l00070"></a>00070 <span class="comment">    /**</span>
<a name="l00071"></a>00071 <span class="comment">     * Construct a XalanSourceTreeParserLiaison instance.</span>
<a name="l00072"></a>00072 <span class="comment">     *</span>
<a name="l00073"></a>00073 <span class="comment">     * @param theSupport instance of DOMSupport object</span>
<a name="l00074"></a>00074 <span class="comment">     *</span>
<a name="l00075"></a>00075 <span class="comment">     * @deprecated This constructor is deprecated.  Use the next constructor instead.</span>
<a name="l00076"></a>00076 <span class="comment">     */</span>
<a name="l00077"></a>00077     <a class="code" href="classXalanSourceTreeParserLiaison.html">XalanSourceTreeParserLiaison</a>(
<a name="l00078"></a>00078                 XalanSourceTreeDOMSupport&amp;  theSupport, 
<a name="l00079"></a>00079                 MemoryManager&amp;          theManager <a class="code" href="XalanMemoryManagement_8hpp.html#ab9a9939dbc66ffc6dd9e2e2dcee1b15c">XALAN_DEFAULT_MEMMGR</a>);
<a name="l00080"></a>00080 <span class="comment"></span>
<a name="l00081"></a>00081 <span class="comment">    /**</span>
<a name="l00082"></a>00082 <span class="comment">     * Construct a XalanSourceTreeParserLiaison instance.</span>
<a name="l00083"></a>00083 <span class="comment">     */</span>
<a name="l00084"></a>00084     <a class="code" href="classXalanSourceTreeParserLiaison.html">XalanSourceTreeParserLiaison</a>(MemoryManager&amp; theManager XALAN_DEFAULT_MEMMGR);
<a name="l00085"></a>00085 
<a name="l00086"></a>00086     MemoryManager&amp;
<a name="l00087"></a><a class="code" href="classXalanSourceTreeParserLiaison.html#ab9d15e66e1d9b545840460481c58030b">00087</a>     getMemoryManager()
<a name="l00088"></a>00088     {
<a name="l00089"></a>00089         <span class="keywordflow">return</span> m_documentMap.getMemoryManager();
<a name="l00090"></a>00090     }
<a name="l00091"></a>00091 
<a name="l00092"></a>00092     <span class="keyword">virtual</span>
<a name="l00093"></a>00093     ~<a class="code" href="classXalanSourceTreeParserLiaison.html">XalanSourceTreeParserLiaison</a>();
<a name="l00094"></a>00094 <span class="comment"></span>
<a name="l00095"></a>00095 <span class="comment">    /**</span>
<a name="l00096"></a>00096 <span class="comment">     * Get the value of the flag which determines if the data of all</span>
<a name="l00097"></a>00097 <span class="comment">     * text nodes are pooled, or just whitespace text nodes.</span>
<a name="l00098"></a>00098 <span class="comment">     *</span>
<a name="l00099"></a>00099 <span class="comment">     * @return true if the data of all text nodes are pooled, false otherwise.</span>
<a name="l00100"></a>00100 <span class="comment">     */</span>
<a name="l00101"></a>00101     <span class="keywordtype">bool</span>
<a name="l00102"></a><a class="code" href="classXalanSourceTreeParserLiaison.html#aecd5911333667e36be04790462781c64">00102</a>     getPoolAllText()<span class="keyword"> const</span>
<a name="l00103"></a>00103 <span class="keyword">    </span>{
<a name="l00104"></a>00104         <span class="keywordflow">return</span> m_poolAllText;
<a name="l00105"></a>00105     }
<a name="l00106"></a>00106 <span class="comment"></span>
<a name="l00107"></a>00107 <span class="comment">    /**</span>
<a name="l00108"></a>00108 <span class="comment">     * Set the value of the flag which determines if the data of all</span>
<a name="l00109"></a>00109 <span class="comment">     * text nodes are pooled, or just whitespace text nodes.</span>
<a name="l00110"></a>00110 <span class="comment">     *</span>
<a name="l00111"></a>00111 <span class="comment">     * @param fValue The new value for the flag.</span>
<a name="l00112"></a>00112 <span class="comment">     */</span>
<a name="l00113"></a>00113     <span class="keywordtype">void</span>
<a name="l00114"></a><a class="code" href="classXalanSourceTreeParserLiaison.html#a3827eb7535e7999a4e63d0678b03853d">00114</a>     setPoolAllText(<span class="keywordtype">bool</span> fValue)
<a name="l00115"></a>00115     {
<a name="l00116"></a>00116         m_poolAllText = fValue;
<a name="l00117"></a>00117     }
<a name="l00118"></a>00118 
<a name="l00119"></a>00119     <span class="comment">// These interfaces are inherited from XMLParserLiaison...</span>
<a name="l00120"></a>00120 
<a name="l00121"></a>00121     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00122"></a>00122     reset();
<a name="l00123"></a>00123 
<a name="l00124"></a>00124     <span class="keyword">virtual</span> <a class="code" href="classExecutionContext.html">ExecutionContext</a>*
<a name="l00125"></a>00125     getExecutionContext() <span class="keyword">const</span>;
<a name="l00126"></a>00126 
<a name="l00127"></a>00127     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00128"></a>00128     setExecutionContext(<a class="code" href="classExecutionContext.html">ExecutionContext</a>&amp;   theContext);
<a name="l00129"></a>00129 
<a name="l00130"></a>00130     <span class="keyword">virtual</span> <a class="code" href="classXalanDocument.html">XalanDocument</a>*
<a name="l00131"></a>00131     parseXMLStream(
<a name="l00132"></a>00132             <span class="keyword">const</span> InputSource&amp;      reader,
<a name="l00133"></a>00133             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   identifier = <a class="code" href="classXalanDOMString.html">XalanDOMString</a>(<a class="code" href="classXalanMemMgrs.html#a84ae1b0aac1248853efe031284a095ed">XalanMemMgrs::getDummyMemMgr</a>()));
<a name="l00134"></a>00134 
<a name="l00135"></a>00135     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00136"></a>00136     parseXMLStream(
<a name="l00137"></a>00137             <span class="keyword">const</span> InputSource&amp;      inputSource,
<a name="l00138"></a>00138             DocumentHandler&amp;        handler,
<a name="l00139"></a>00139             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   identifier = <a class="code" href="classXalanDOMString.html">XalanDOMString</a>(<a class="code" href="classXalanMemMgrs.html#a84ae1b0aac1248853efe031284a095ed">XalanMemMgrs::getDummyMemMgr</a>()));
<a name="l00140"></a>00140 
<a name="l00141"></a>00141     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00142"></a>00142     destroyDocument(<a class="code" href="classXalanDocument.html">XalanDocument</a>*  theDocument);
<a name="l00143"></a>00143 
<a name="l00144"></a>00144     <span class="keyword">virtual</span> <span class="keywordtype">int</span>
<a name="l00145"></a>00145     getIndent() <span class="keyword">const</span>;
<a name="l00146"></a>00146 
<a name="l00147"></a>00147     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00148"></a>00148     setIndent(<span class="keywordtype">int</span>   i);
<a name="l00149"></a>00149 
<a name="l00150"></a>00150     <span class="keyword">virtual</span> <span class="keywordtype">bool</span>
<a name="l00151"></a>00151     getUseValidation() <span class="keyword">const</span>;
<a name="l00152"></a>00152 
<a name="l00153"></a>00153     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00154"></a>00154     setUseValidation(<span class="keywordtype">bool</span>   b);
<a name="l00155"></a>00155 
<a name="l00156"></a>00156     <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;
<a name="l00157"></a>00157     getParserDescription(<a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;    <a class="code" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>) <span class="keyword">const</span>;
<a name="l00158"></a>00158 
<a name="l00159"></a>00159     <span class="keyword">virtual</span> EntityResolver*
<a name="l00160"></a>00160     getEntityResolver() <span class="keyword">const</span>;
<a name="l00161"></a>00161 
<a name="l00162"></a>00162     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00163"></a>00163     setEntityResolver(EntityResolver*   resolver);
<a name="l00164"></a>00164 
<a name="l00165"></a>00165     <span class="keyword">virtual</span> XMLEntityResolver*
<a name="l00166"></a>00166     getXMLEntityResolver() <span class="keyword">const</span>;
<a name="l00167"></a>00167 
<a name="l00168"></a>00168     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00169"></a>00169     setXMLEntityResolver(XMLEntityResolver*     resolver);
<a name="l00170"></a>00170 
<a name="l00171"></a>00171     <span class="keyword">virtual</span> ErrorHandler*
<a name="l00172"></a>00172     getErrorHandler() <span class="keyword">const</span>;
<a name="l00173"></a>00173 
<a name="l00174"></a>00174     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00175"></a>00175     setErrorHandler(ErrorHandler*   handler);
<a name="l00176"></a>00176 
<a name="l00177"></a>00177 
<a name="l00178"></a>00178     <span class="comment">// These interfaces are new to XalanSourceTreeParserLiaison...</span>
<a name="l00179"></a>00179 <span class="comment"></span>
<a name="l00180"></a>00180 <span class="comment">    /**</span>
<a name="l00181"></a>00181 <span class="comment">     * Parse using a SAX2 ContentHandler, DTDHandler, and LexicalHandler.</span>
<a name="l00182"></a>00182 <span class="comment">     *</span>
<a name="l00183"></a>00183 <span class="comment">     * @param theInputSource The input source for the parser</span>
<a name="l00184"></a>00184 <span class="comment">     * @param theContentHandler The ContentHandler to use</span>
<a name="l00185"></a>00185 <span class="comment">     * @param theDTDHandler The DTDHandler to use.  May be null.</span>
<a name="l00186"></a>00186 <span class="comment">     * @param theLexicalHandler The LexicalHandler to use.  May be null.</span>
<a name="l00187"></a>00187 <span class="comment">     * @param identifier Used for error reporting only.</span>
<a name="l00188"></a>00188 <span class="comment">     */</span>
<a name="l00189"></a>00189     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00190"></a>00190     parseXMLStream(
<a name="l00191"></a>00191             <span class="keyword">const</span> InputSource&amp;      theInputSource,
<a name="l00192"></a>00192             ContentHandler&amp;         theContentHandler,
<a name="l00193"></a>00193             <span class="keyword">const</span> <a class="code" href="classXalanDOMString.html">XalanDOMString</a>&amp;   theIdentifier,
<a name="l00194"></a>00194             DTDHandler*             theDTDHandler = 0,
<a name="l00195"></a>00195             LexicalHandler*         theLexicalHandler = 0);
<a name="l00196"></a>00196 
<a name="l00197"></a>00197     <span class="keyword">virtual</span> <a class="code" href="XercesDOMWrapperParsedSource_8hpp.html#aec35dfd80d4007df6a3aaa3285aa1b67">DOMDocument_Type</a>*
<a name="l00198"></a>00198     createDOMFactory();
<a name="l00199"></a>00199 
<a name="l00200"></a>00200     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00201"></a>00201     destroyDocument(<a class="code" href="XercesDOMWrapperParsedSource_8hpp.html#aec35dfd80d4007df6a3aaa3285aa1b67">DOMDocument_Type</a>*   theDocument);
<a name="l00202"></a>00202 <span class="comment"></span>
<a name="l00203"></a>00203 <span class="comment">    /** Get the &#39;include ignorable whitespace&#39; flag.</span>
<a name="l00204"></a>00204 <span class="comment">      *</span>
<a name="l00205"></a>00205 <span class="comment">      * This method returns the state of the parser&#39;s include ignorable</span>
<a name="l00206"></a>00206 <span class="comment">      * whitespace flag.</span>
<a name="l00207"></a>00207 <span class="comment">      *</span>
<a name="l00208"></a>00208 <span class="comment">      * @return &#39;true&#39; if the include ignorable whitespace flag is set on</span>
<a name="l00209"></a>00209 <span class="comment">      *         the parser, &#39;false&#39; otherwise.</span>
<a name="l00210"></a>00210 <span class="comment">      *</span>
<a name="l00211"></a>00211 <span class="comment">      * @see #setIncludeIgnorableWhitespace</span>
<a name="l00212"></a>00212 <span class="comment">      */</span>
<a name="l00213"></a>00213     <span class="keyword">virtual</span> <span class="keywordtype">bool</span>
<a name="l00214"></a>00214     getIncludeIgnorableWhitespace() <span class="keyword">const</span>;
<a name="l00215"></a>00215 <span class="comment"></span>
<a name="l00216"></a>00216 <span class="comment">    /** Set the &#39;include ignorable whitespace&#39; flag</span>
<a name="l00217"></a>00217 <span class="comment">      *</span>
<a name="l00218"></a>00218 <span class="comment">      * This method allows the user to specify whether a validating parser</span>
<a name="l00219"></a>00219 <span class="comment">      * should include ignorable whitespaces as text nodes.  It has no effect</span>
<a name="l00220"></a>00220 <span class="comment">      * on non-validating parsers which always include non-markup text.</span>
<a name="l00221"></a>00221 <span class="comment">      * &lt;p&gt;When set to true (also the default), ignorable whitespaces will be</span>
<a name="l00222"></a>00222 <span class="comment">      * added to the DOM tree as text nodes.  The method</span>
<a name="l00223"></a>00223 <span class="comment">      * DOM_Text::isWhitespace() will return true for those text</span>
<a name="l00224"></a>00224 <span class="comment">      * nodes only.</span>
<a name="l00225"></a>00225 <span class="comment">      * &lt;p&gt;When set to false, all ignorable whitespace will be discarded and</span>
<a name="l00226"></a>00226 <span class="comment">      * no text node is added to the DOM tree.  Note: applications intended</span>
<a name="l00227"></a>00227 <span class="comment">      * to process the &quot;xml:space&quot; attribute should not set this flag to false.</span>
<a name="l00228"></a>00228 <span class="comment">      *</span>
<a name="l00229"></a>00229 <span class="comment">      * @param include The new state of the include ignorable whitespace</span>
<a name="l00230"></a>00230 <span class="comment">      *                flag.</span>
<a name="l00231"></a>00231 <span class="comment">      *</span>
<a name="l00232"></a>00232 <span class="comment">      * @see #getIncludeIgnorableWhitespace</span>
<a name="l00233"></a>00233 <span class="comment">      */</span>
<a name="l00234"></a>00234     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00235"></a>00235     setIncludeIgnorableWhitespace(<span class="keywordtype">bool</span>  include);
<a name="l00236"></a>00236 <span class="comment"></span>
<a name="l00237"></a>00237 <span class="comment">    /**</span>
<a name="l00238"></a>00238 <span class="comment">      * This method returns the state of the parser&#39;s namespace</span>
<a name="l00239"></a>00239 <span class="comment">      * handling capability.</span>
<a name="l00240"></a>00240 <span class="comment">      *</span>
<a name="l00241"></a>00241 <span class="comment">      * @return true, if the parser is currently configured to</span>
<a name="l00242"></a>00242 <span class="comment">      *         understand namespaces, false otherwise.</span>
<a name="l00243"></a>00243 <span class="comment">      *</span>
<a name="l00244"></a>00244 <span class="comment">      * @see #setDoNamespaces</span>
<a name="l00245"></a>00245 <span class="comment">      */</span>
<a name="l00246"></a>00246     <span class="keyword">virtual</span> <span class="keywordtype">bool</span>
<a name="l00247"></a>00247     getDoNamespaces() <span class="keyword">const</span>;
<a name="l00248"></a>00248 <span class="comment"></span>
<a name="l00249"></a>00249 <span class="comment">    /**</span>
<a name="l00250"></a>00250 <span class="comment">      * This method allows users to enable or disable the parser&#39;s</span>
<a name="l00251"></a>00251 <span class="comment">      * namespace processing. When set to true, parser starts enforcing</span>
<a name="l00252"></a>00252 <span class="comment">      * all the constraints / rules specified by the NameSpace</span>
<a name="l00253"></a>00253 <span class="comment">      * specification.</span>
<a name="l00254"></a>00254 <span class="comment">      *</span>
<a name="l00255"></a>00255 <span class="comment">      * &lt;p&gt;The parser&#39;s default state is: false.&lt;/p&gt;</span>
<a name="l00256"></a>00256 <span class="comment">      *</span>
<a name="l00257"></a>00257 <span class="comment">      * &lt;p&gt;This flag is ignored by the underlying scanner if the installed</span>
<a name="l00258"></a>00258 <span class="comment">      * validator indicates that namespace constraints should be</span>
<a name="l00259"></a>00259 <span class="comment">      * enforced.&lt;/p&gt;</span>
<a name="l00260"></a>00260 <span class="comment">      *</span>
<a name="l00261"></a>00261 <span class="comment">      * @param newState The value specifying whether NameSpace rules should</span>
<a name="l00262"></a>00262 <span class="comment">      *                 be enforced or not.</span>
<a name="l00263"></a>00263 <span class="comment">      *</span>
<a name="l00264"></a>00264 <span class="comment">      * @see #getDoNamespaces</span>
<a name="l00265"></a>00265 <span class="comment">      */</span>
<a name="l00266"></a>00266     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00267"></a>00267     setDoNamespaces(<span class="keywordtype">bool</span>    newState);
<a name="l00268"></a>00268 <span class="comment"></span>
<a name="l00269"></a>00269 <span class="comment">    /**</span>
<a name="l00270"></a>00270 <span class="comment">      * This method returns the state of the parser&#39;s</span>
<a name="l00271"></a>00271 <span class="comment">      * exit-on-First-Fatal-Error flag.</span>
<a name="l00272"></a>00272 <span class="comment">      *</span>
<a name="l00273"></a>00273 <span class="comment">      * @return true, if the parser is currently configured to</span>
<a name="l00274"></a>00274 <span class="comment">      *         exit on the first fatal error, false otherwise.</span>
<a name="l00275"></a>00275 <span class="comment">      *</span>
<a name="l00276"></a>00276 <span class="comment">      * @see #setExitOnFirstFatalError</span>
<a name="l00277"></a>00277 <span class="comment">      */</span>
<a name="l00278"></a>00278     <span class="keyword">virtual</span> <span class="keywordtype">bool</span>
<a name="l00279"></a>00279     getExitOnFirstFatalError() <span class="keyword">const</span>;
<a name="l00280"></a>00280 <span class="comment"></span>
<a name="l00281"></a>00281 <span class="comment">    /**</span>
<a name="l00282"></a>00282 <span class="comment">      * This method allows users to set the parser&#39;s behaviour when it</span>
<a name="l00283"></a>00283 <span class="comment">      * encounters the first fatal error. If set to true, the parser</span>
<a name="l00284"></a>00284 <span class="comment">      * will exit at the first fatal error. If false, then it will</span>
<a name="l00285"></a>00285 <span class="comment">      * report the error and continue processing.</span>
<a name="l00286"></a>00286 <span class="comment">      *</span>
<a name="l00287"></a>00287 <span class="comment">      * &lt;p&gt;The default value is &#39;true&#39; and the parser exits on the</span>
<a name="l00288"></a>00288 <span class="comment">      * first fatal error.&lt;/p&gt;</span>
<a name="l00289"></a>00289 <span class="comment">      *</span>
<a name="l00290"></a>00290 <span class="comment">      * @param newState The value specifying whether the parser should</span>
<a name="l00291"></a>00291 <span class="comment">      *                 continue or exit when it encounters the first</span>
<a name="l00292"></a>00292 <span class="comment">      *                 fatal error.</span>
<a name="l00293"></a>00293 <span class="comment">      *</span>
<a name="l00294"></a>00294 <span class="comment">      * @see #getExitOnFirstFatalError</span>
<a name="l00295"></a>00295 <span class="comment">      */</span>
<a name="l00296"></a>00296     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00297"></a>00297     setExitOnFirstFatalError(<span class="keywordtype">bool</span>   newState);
<a name="l00298"></a>00298 <span class="comment"></span>
<a name="l00299"></a>00299 <span class="comment">    /**</span>
<a name="l00300"></a>00300 <span class="comment">      * This method returns the location for an external schema document</span>
<a name="l00301"></a>00301 <span class="comment">      * for parsing.</span>
<a name="l00302"></a>00302 <span class="comment">      *</span>
<a name="l00303"></a>00303 <span class="comment">      * @return A string representing the location of the external schema document</span>
<a name="l00304"></a>00304 <span class="comment">      */</span>
<a name="l00305"></a>00305     <span class="keyword">virtual</span> <span class="keyword">const</span> XalanDOMChar*
<a name="l00306"></a>00306     getExternalSchemaLocation() <span class="keyword">const</span>;
<a name="l00307"></a>00307 <span class="comment"></span>
<a name="l00308"></a>00308 <span class="comment">    /**</span>
<a name="l00309"></a>00309 <span class="comment">      * This method sets the location for an external schema document</span>
<a name="l00310"></a>00310 <span class="comment">      * for parsing.</span>
<a name="l00311"></a>00311 <span class="comment">      *</span>
<a name="l00312"></a>00312 <span class="comment">      * @param location A string representing the location of the external schema document</span>
<a name="l00313"></a>00313 <span class="comment">      */</span>
<a name="l00314"></a>00314     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00315"></a>00315     setExternalSchemaLocation(<span class="keyword">const</span> XalanDOMChar*   location);
<a name="l00316"></a>00316 <span class="comment"></span>
<a name="l00317"></a>00317 <span class="comment">    /**</span>
<a name="l00318"></a>00318 <span class="comment">      * This method returns the location for an external schema document</span>
<a name="l00319"></a>00319 <span class="comment">      * for parsing.</span>
<a name="l00320"></a>00320 <span class="comment">      *</span>
<a name="l00321"></a>00321 <span class="comment">      * @return A string representing the location of the external schema document</span>
<a name="l00322"></a>00322 <span class="comment">      */</span>
<a name="l00323"></a>00323     <span class="keyword">virtual</span> <span class="keyword">const</span> XalanDOMChar*
<a name="l00324"></a>00324     getExternalNoNamespaceSchemaLocation() <span class="keyword">const</span>;
<a name="l00325"></a>00325 <span class="comment"></span>
<a name="l00326"></a>00326 <span class="comment">    /**</span>
<a name="l00327"></a>00327 <span class="comment">      * This method sets the location for an external schema document</span>
<a name="l00328"></a>00328 <span class="comment">      * for parsing.</span>
<a name="l00329"></a>00329 <span class="comment">      *</span>
<a name="l00330"></a>00330 <span class="comment">      * @param location A string representing the location of the external schema document</span>
<a name="l00331"></a>00331 <span class="comment">      */</span>
<a name="l00332"></a>00332     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00333"></a>00333     setExternalNoNamespaceSchemaLocation(<span class="keyword">const</span> XalanDOMChar*    location);
<a name="l00334"></a>00334 <span class="comment"></span>
<a name="l00335"></a>00335 <span class="comment">    /** </span>
<a name="l00336"></a>00336 <span class="comment">     * Map a pointer to a XalanDocument instance to its implementation</span>
<a name="l00337"></a>00337 <span class="comment">     * class pointer.  Normally, you should have no reason for doing</span>
<a name="l00338"></a>00338 <span class="comment">     * this.  The liaison will return a null pointer if it did not</span>
<a name="l00339"></a>00339 <span class="comment">     * create the instance passed.</span>
<a name="l00340"></a>00340 <span class="comment">     *</span>
<a name="l00341"></a>00341 <span class="comment">     * @param theDocument A pointer to a XalanDocument instance.</span>
<a name="l00342"></a>00342 <span class="comment">     * @return A pointer to the XalanSourceTreeDocument instance.</span>
<a name="l00343"></a>00343 <span class="comment">     */</span>
<a name="l00344"></a>00344     XalanSourceTreeDocument*
<a name="l00345"></a>00345     mapDocument(<span class="keyword">const</span> <a class="code" href="classXalanDocument.html">XalanDocument</a>*    theDocument) <span class="keyword">const</span>;
<a name="l00346"></a>00346 <span class="comment"></span>
<a name="l00347"></a>00347 <span class="comment">    /** </span>
<a name="l00348"></a>00348 <span class="comment">     * Create a XalanSourceTreeDocument instance.</span>
<a name="l00349"></a>00349 <span class="comment">     *</span>
<a name="l00350"></a>00350 <span class="comment">     * @return A pointer to the XalanSourceTreeDocument instance.</span>
<a name="l00351"></a>00351 <span class="comment">     */</span>
<a name="l00352"></a>00352     XalanSourceTreeDocument*
<a name="l00353"></a>00353     createXalanSourceTreeDocument();
<a name="l00354"></a>00354 
<a name="l00355"></a>00355     <span class="keyword">typedef</span> <a class="code" href="classXalanMap.html" title="Xalan implementation of a hashtable.">XalanMap</a>&lt;<span class="keyword">const</span> <a class="code" href="classXalanDocument.html">XalanDocument</a>*,
<a name="l00356"></a><a class="code" href="classXalanSourceTreeParserLiaison.html#a8cbf19c7a956184f3f9cc0a01da03196">00356</a>                      XalanSourceTreeDocument*&gt;  <a class="code" href="classXalanMap.html">DocumentMapType</a>;
<a name="l00357"></a>00357 
<a name="l00358"></a>00358 
<a name="l00359"></a>00359 <span class="keyword">protected</span>:
<a name="l00360"></a>00360 
<a name="l00361"></a>00361     <span class="keyword">virtual</span> SAX2XMLReaderImpl*
<a name="l00362"></a>00362     createReader();
<a name="l00363"></a>00363 
<a name="l00364"></a>00364 <span class="keyword">private</span>:
<a name="l00365"></a>00365 
<a name="l00366"></a>00366     <span class="keywordtype">void</span>
<a name="l00367"></a>00367     ensureReader();
<a name="l00368"></a>00368 
<a name="l00369"></a>00369 
<a name="l00370"></a>00370     <span class="comment">// Not implemented...</span>
<a name="l00371"></a>00371     <a class="code" href="classXalanSourceTreeParserLiaison.html">XalanSourceTreeParserLiaison</a>(<span class="keyword">const</span> <a class="code" href="classXalanSourceTreeParserLiaison.html">XalanSourceTreeParserLiaison</a>&amp;);
<a name="l00372"></a>00372 
<a name="l00373"></a>00373     <a class="code" href="classXalanSourceTreeParserLiaison.html">XalanSourceTreeParserLiaison</a>&amp;
<a name="l00374"></a>00374     operator=(<span class="keyword">const</span> <a class="code" href="classXalanSourceTreeParserLiaison.html">XalanSourceTreeParserLiaison</a>&amp;);
<a name="l00375"></a>00375 
<a name="l00376"></a>00376 
<a name="l00377"></a>00377     <span class="comment">// Data members...</span>
<a name="l00378"></a>00378     <a class="code" href="classXercesParserLiaison.html">XercesParserLiaison</a>         m_xercesParserLiaison;
<a name="l00379"></a>00379 
<a name="l00380"></a>00380     DocumentMapType             m_documentMap;
<a name="l00381"></a>00381 
<a name="l00382"></a>00382     <span class="keywordtype">bool</span>                        m_poolAllText;
<a name="l00383"></a>00383 
<a name="l00384"></a>00384     SAX2XMLReaderImpl*          m_xmlReader;
<a name="l00385"></a>00385 };
<a name="l00386"></a>00386 
<a name="l00387"></a>00387 
<a name="l00388"></a>00388 
<a name="l00389"></a>00389 XALAN_CPP_NAMESPACE_END
<a name="l00390"></a>00390 
<a name="l00391"></a>00391 
<a name="l00392"></a>00392 
<a name="l00393"></a>00393 <span class="preprocessor">#endif  // XALANSOURCETREEPARSERLIAISON_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>
