﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Interface IContentHandler
   | Apache Lucene.NET 4.8.0-beta00013 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Interface IContentHandler
   | Apache Lucene.NET 4.8.0-beta00013 Documentation ">
    <meta name="generator" content="docfx 2.56.2.0">
    
    <link rel="shortcut icon" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/favicon.ico">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.css">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.css">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.css">
    <meta property="docfx:navrel" content="toc.html">
    <meta property="docfx:tocrel" content="benchmark/toc.html">
    
    <meta property="docfx:rel" content="https://lucenenet.apache.org/docs/4.8.0-beta00009/">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <span id="forkongithub"><a href="https://github.com/apache/lucenenet" target="_blank">Fork me on GitHub</a></span>
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="/">
                <img id="logo" class="svg" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/lucene-net-color.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search">
            <ul class="level0 breadcrumb">
                <li>
                    <a href="https://lucenenet.apache.org/docs/4.8.0-beta00009/">API</a>
                     <span id="breadcrumb">
                        <ul class="breadcrumb">
                          <li></li>
                        </ul>
                    </span>   
                </li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items">
            <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
          </div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Sax.IContentHandler">
  
  
  <h1 id="Sax_IContentHandler" data-uid="Sax.IContentHandler" class="text-break">Interface IContentHandler
  </h1>
  <div class="markdown level0 summary"><p>Receive notification of the logical content of a document.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Sax.html">Sax</a></h6>
  <h6><strong>Assembly</strong>: Lucene.Net.Benchmark.dll</h6>
  <h5 id="Sax_IContentHandler_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public interface IContentHandler</code></pre>
  </div>
  <h5 id="Sax_IContentHandler_remarks"><strong>Remarks</strong></h5>
  <div class="markdown level0 remarks"><p><em>This module, both source code and documentation, is in the
Public Domain, and comes with<strong> NO WARRANTY</strong>.</em>
See<a href="http://www.saxproject.org">http://www.saxproject.org</a>
for further information.
<p>
This is the main interface that most SAX applications
implement: if the application needs to be informed of basic parsing
events, it implements this interface and registers an instance with
the SAX parser using the <a class="xref" href="Sax.IXMLReader.html#Sax_IXMLReader_ContentHandler">ContentHandler</a>
method.The parser uses the instance to report
basic document-related events like the start and end of elements
and character data.
<p>
The order of events in this interface is very important, and
mirrors the order of information in the document itself.For
example, all of an element&apos;s content (character data, processing
instructions, and/or subelements) will appear, in order, between
the startElement event and the corresponding endElement event.
<p>
This interface is similar to the now-deprecated SAX 1.0
DocumentHandler interface, but it adds support for Namespaces
and for reporting skipped entities(in non-validating XML
processors).</p>
</div>
  <h3 id="methods">Methods
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_Characters_System_Char___System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.Characters(System.Char%5B%5D%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L288">View Source</a>
  </span>
  <a id="Sax_IContentHandler_Characters_" data-uid="Sax.IContentHandler.Characters*"></a>
  <h4 id="Sax_IContentHandler_Characters_System_Char___System_Int32_System_Int32_" data-uid="Sax.IContentHandler.Characters(System.Char[],System.Int32,System.Int32)">Characters(Char[], Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Receive notification of character data.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void Characters(char[] ch, int start, int length)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Char</span>[]</td>
        <td><span class="parametername">ch</span></td>
        <td><p>the characters from the XML document</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">start</span></td>
        <td><p>the start position in the array</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">length</span></td>
        <td><p>the number of characters to read from the array</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_Characters_System_Char___System_Int32_System_Int32__remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>The Parser will call this method to report each chunk of
character data. SAX parsers may return all contiguous character
data in a single chunk, or they may split it into several
chunks; however, all of the characters in any single event
must come from the same external entity so that the Locator
provides useful information.
<p>
The application must not attempt to read from the array
outside of the specified range.
<p>
Individual characters may consist of more than one Java
<code>char</code> value.There are two important cases where this
happens, because characters can&apos;t be represented in just sixteen bits.
In one case, characters are represented in a <em>Surrogate Pair</em>,
using two special Unicode values. Such characters are in the so-called
&quot;Astral Planes&quot;, with a code point above U+FFFF.A second case involves
composite characters, such as a base character combining with one or
more accent characters. 
<p> Your code should not assume that algorithms using
<code>char</code>-at-a-time idioms will be working in character
units; in some cases they will split characters. This is relevant
wherever XML permits arbitrary characters, such as attribute values,
processing instruction data, and comments as well as in data reported
from this method. It&apos;s also generally relevant whenever Java code
manipulates internationalized text; the issue isn&apos;t unique to XML.
<p>Note that some parsers will report whitespace in element
content using the <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_IgnorableWhitespace_System_Char___System_Int32_System_Int32_">IgnorableWhitespace(Char[], Int32, Int32)</a>
method rather than this one (validating parsers <em>must</em>
do so).</p>
</div>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Sax.SAXException.html">SAXException</a></td>
        <td><p>any SAX exception, possibly
wrapping another exception</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_Characters_System_Char___System_Int32_System_Int32__seealso">See Also</h5>
  <div class="seealso">
      <div><a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_IgnorableWhitespace_System_Char___System_Int32_System_Int32_">IgnorableWhitespace(Char[], Int32, Int32)</a></div>
      <div><a class="xref" href="Sax.ILocator.html">ILocator</a></div>
  </div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_EndDocument.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.EndDocument%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L106">View Source</a>
  </span>
  <a id="Sax_IContentHandler_EndDocument_" data-uid="Sax.IContentHandler.EndDocument*"></a>
  <h4 id="Sax_IContentHandler_EndDocument" data-uid="Sax.IContentHandler.EndDocument">EndDocument()</h4>
  <div class="markdown level1 summary"><p>Receive notification of the end of a document.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void EndDocument()</code></pre>
  </div>
  <h5 id="Sax_IContentHandler_EndDocument_remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p><strong>There is an apparent contradiction between the
documentation for this method and the documentation for 
<a class="xref" href="Sax.IErrorHandler.html#Sax_IErrorHandler_FatalError_Sax_SAXParseException_">FatalError(SAXParseException)</a>.  Until this ambiguity is
resolved in a future major release, clients should make no
assumptions about whether <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndDocument">EndDocument()</a> will or will not be
invoked when the parser has reported a <a class="xref" href="Sax.IErrorHandler.html#Sax_IErrorHandler_FatalError_Sax_SAXParseException_">FatalError(SAXParseException)</a> or thrown
an exception.</strong>
<p>The SAX parser will invoke this method only once, and it will
be the last method invoked during the parse.The parser shall
not invoke this method until it has either abandoned parsing
(because of an unrecoverable error) or reached the end of
input.</p>
</div>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Sax.SAXException.html">SAXException</a></td>
        <td><p>any SAX exception, possibly
wrapping another exception</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_EndDocument_seealso">See Also</h5>
  <div class="seealso">
      <div><a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_StartDocument">StartDocument()</a></div>
  </div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_EndElement_System_String_System_String_System_String_.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.EndElement(System.String%2CSystem.String%2CSystem.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L245">View Source</a>
  </span>
  <a id="Sax_IContentHandler_EndElement_" data-uid="Sax.IContentHandler.EndElement*"></a>
  <h4 id="Sax_IContentHandler_EndElement_System_String_System_String_System_String_" data-uid="Sax.IContentHandler.EndElement(System.String,System.String,System.String)">EndElement(String, String, String)</h4>
  <div class="markdown level1 summary"><p>Receive notification of the end of an element.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void EndElement(string uri, string localName, string qName)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">uri</span></td>
        <td><p>the Namespace URI, or the empty string if the
element has no Namespace URI or if Namespace
processing is not being performed</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">localName</span></td>
        <td><p>the local name (without prefix), or the
empty string if Namespace processing is not being
performed</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">qName</span></td>
        <td><p>the qualified XML name (with prefix), or the
empty string if qualified names are not available</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_EndElement_System_String_System_String_System_String__remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>The SAX parser will invoke this method at the end of every
element in the XML document; there will be a corresponding
<a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_StartElement_System_String_System_String_System_String_Sax_IAttributes_">StartElement(String, String, String, IAttributes)</a> event for every endElement 
event (even when the element is empty).
<p>
For information on the names, see <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_StartElement_System_String_System_String_System_String_Sax_IAttributes_">StartElement(String, String, String, IAttributes)</a>.</p>
</div>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Sax.SAXException.html">SAXException</a></td>
        <td><p>any SAX exception, possibly
wrapping another exception</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_EndPrefixMapping_System_String_.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.EndPrefixMapping(System.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L162">View Source</a>
  </span>
  <a id="Sax_IContentHandler_EndPrefixMapping_" data-uid="Sax.IContentHandler.EndPrefixMapping*"></a>
  <h4 id="Sax_IContentHandler_EndPrefixMapping_System_String_" data-uid="Sax.IContentHandler.EndPrefixMapping(System.String)">EndPrefixMapping(String)</h4>
  <div class="markdown level1 summary"><p>End the scope of a prefix-URI mapping.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void EndPrefixMapping(string prefix)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">prefix</span></td>
        <td><p>the prefix that was being mapped.
This is the empty string when a default mapping scope ends.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_EndPrefixMapping_System_String__remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>See <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_StartPrefixMapping_System_String_System_String_">StartPrefixMapping(String, String)</a> for 
details. These events will always occur immediately after the
corresponding <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndElement_System_String_System_String_System_String_">EndElement(String, String, String)</a> event, but the order of 
<a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndPrefixMapping_System_String_">EndPrefixMapping(String)</a> events is not otherwise
guaranteed.</p>
</div>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Sax.SAXException.html">SAXException</a></td>
        <td><p>the client may throw
an exception during processing</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_EndPrefixMapping_System_String__seealso">See Also</h5>
  <div class="seealso">
      <div><a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndPrefixMapping_System_String_">EndPrefixMapping(String)</a></div>
      <div><a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndElement_System_String_System_String_System_String_">EndElement(String, String, String)</a></div>
  </div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_IgnorableWhitespace_System_Char___System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.IgnorableWhitespace(System.Char%5B%5D%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L315">View Source</a>
  </span>
  <a id="Sax_IContentHandler_IgnorableWhitespace_" data-uid="Sax.IContentHandler.IgnorableWhitespace*"></a>
  <h4 id="Sax_IContentHandler_IgnorableWhitespace_System_Char___System_Int32_System_Int32_" data-uid="Sax.IContentHandler.IgnorableWhitespace(System.Char[],System.Int32,System.Int32)">IgnorableWhitespace(Char[], Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Receive notification of ignorable whitespace in element content.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void IgnorableWhitespace(char[] ch, int start, int length)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Char</span>[]</td>
        <td><span class="parametername">ch</span></td>
        <td><p>the characters from the XML document</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">start</span></td>
        <td><p>the start position in the array</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">length</span></td>
        <td><p>the number of characters to read from the array</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_IgnorableWhitespace_System_Char___System_Int32_System_Int32__remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>Validating Parsers must use this method to report each chunk
of whitespace in element content (see the W3C XML 1.0
recommendation, section 2.10): non-validating parsers may also
use this method if they are capable of parsing and using
content models.
<p>
SAX parsers may return all contiguous whitespace in a single
chunk, or they may split it into several chunks; however, all of
the characters in any single event must come from the same
external entity, so that the Locator provides useful
information.
<p>
The application must not attempt to read from the array
outside of the specified range.</p>
</div>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Sax.SAXException.html">SAXException</a></td>
        <td><p>any SAX exception, possibly
wrapping another exception</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_IgnorableWhitespace_System_Char___System_Int32_System_Int32__seealso">See Also</h5>
  <div class="seealso">
      <div><a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_Characters_System_Char___System_Int32_System_Int32_">Characters(Char[], Int32, Int32)</a></div>
  </div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_ProcessingInstruction_System_String_System_String_.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.ProcessingInstruction(System.String%2CSystem.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L339">View Source</a>
  </span>
  <a id="Sax_IContentHandler_ProcessingInstruction_" data-uid="Sax.IContentHandler.ProcessingInstruction*"></a>
  <h4 id="Sax_IContentHandler_ProcessingInstruction_System_String_System_String_" data-uid="Sax.IContentHandler.ProcessingInstruction(System.String,System.String)">ProcessingInstruction(String, String)</h4>
  <div class="markdown level1 summary"><p>Receive notification of a processing instruction.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void ProcessingInstruction(string target, string data)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">target</span></td>
        <td><p>the processing instruction target</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">data</span></td>
        <td><p>the processing instruction data, or null if
none was supplied.  The data does not include any
whitespace separating it from the target</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_ProcessingInstruction_System_String_System_String__remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>The Parser will invoke this method once for each processing
instruction found: note that processing instructions may occur
before or after the main document element.
<p>
A SAX parser must never report an XML declaration(XML 1.0,
section 2.8) or a text declaration(XML 1.0, section 4.3.1)
using this method.
<p>
Like <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_Characters_System_Char___System_Int32_System_Int32_">Characters(Char[], Int32, Int32)</a>, processing instruction
data may have characters that need more than one <code>char</code>
value.</p>
</div>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Sax.SAXException.html">SAXException</a></td>
        <td><p>any SAX exception, possibly
wrapping another exception</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_SetDocumentLocator_Sax_ILocator_.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.SetDocumentLocator(Sax.ILocator)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L72">View Source</a>
  </span>
  <a id="Sax_IContentHandler_SetDocumentLocator_" data-uid="Sax.IContentHandler.SetDocumentLocator*"></a>
  <h4 id="Sax_IContentHandler_SetDocumentLocator_Sax_ILocator_" data-uid="Sax.IContentHandler.SetDocumentLocator(Sax.ILocator)">SetDocumentLocator(ILocator)</h4>
  <div class="markdown level1 summary"><p>Receive an object for locating the origin of SAX document events.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void SetDocumentLocator(ILocator locator)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Sax.ILocator.html">ILocator</a></td>
        <td><span class="parametername">locator</span></td>
        <td><p>an object that can return the location of
any SAX document event</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_SetDocumentLocator_Sax_ILocator__remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>SAX parsers are strongly encouraged (though not absolutely
required) to supply a locator: if it does so, it must supply
the locator to the application by invoking this method before
invoking any of the other methods in the ContentHandler
interface.
<p>
The locator allows the application to determine the end
position of any document-related event, even if the parser is
not reporting an error.  Typically, the application will
use this information for reporting its own errors (such as
character content that does not match an application&apos;s
business rules).  The information returned by the locator
is probably not sufficient for use with a search engine.
<p>
Note that the locator will return correct information only
during the invocation SAX event callbacks after
<a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_StartDocument">StartDocument()</a> returns and before
<a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndDocument">EndDocument()</a> is called.  The
application should not attempt to use it at any other time.</p>
</div>
  <h5 id="Sax_IContentHandler_SetDocumentLocator_Sax_ILocator__seealso">See Also</h5>
  <div class="seealso">
      <div><a class="xref" href="Sax.ILocator.html">ILocator</a></div>
  </div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_SkippedEntity_System_String_.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.SkippedEntity(System.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L364">View Source</a>
  </span>
  <a id="Sax_IContentHandler_SkippedEntity_" data-uid="Sax.IContentHandler.SkippedEntity*"></a>
  <h4 id="Sax_IContentHandler_SkippedEntity_System_String_" data-uid="Sax.IContentHandler.SkippedEntity(System.String)">SkippedEntity(String)</h4>
  <div class="markdown level1 summary"><p>Receive notification of a skipped entity.
This is not called for entity references within markup constructs
such as element start tags or markup declarations.  (The XML
recommendation requires reporting skipped external entities.
SAX also reports internal entity expansion/non-expansion, except
within markup constructs.)
<p>
The Parser will invoke this method each time the entity is
skipped.Non-validating processors may skip entities if they
have not seen the declarations(because, for example, the
entity was declared in an external DTD subset).  All processors
may skip external entities, depending on the values of the
<a href="http://xml.org/sax/features/external-general-entities">http://xml.org/sax/features/external-general-entities</a>
and the <a href="http://xml.org/sax/features/external-general-entities">http://xml.org/sax/features/external-general-entities</a>
properties.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void SkippedEntity(string name)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">name</span></td>
        <td><p>the name of the skipped entity.  If it is a 
parameter entity, the name will begin with &apos;%&apos;, and if
it is the external DTD subset, it will be the string
&quot;[dtd]&quot;</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_SkippedEntity_System_String__seealso">See Also</h5>
  <div class="seealso">
      <div><a class="xref" href="Sax.SAXException.html">SAXException</a></div>
  </div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_StartDocument.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.StartDocument%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L84">View Source</a>
  </span>
  <a id="Sax_IContentHandler_StartDocument_" data-uid="Sax.IContentHandler.StartDocument*"></a>
  <h4 id="Sax_IContentHandler_StartDocument" data-uid="Sax.IContentHandler.StartDocument">StartDocument()</h4>
  <div class="markdown level1 summary"><p>Receive notification of the beginning of a document.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void StartDocument()</code></pre>
  </div>
  <h5 id="Sax_IContentHandler_StartDocument_remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>The SAX parser will invoke this method only once, before any
other event callbacks (except for <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_SetDocumentLocator_Sax_ILocator_">SetDocumentLocator(ILocator)</a>.</p>
</div>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Sax.SAXException.html">SAXException</a></td>
        <td><p>any SAX exception, possibly
wrapping another exception</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_StartDocument_seealso">See Also</h5>
  <div class="seealso">
      <div><a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndDocument">EndDocument()</a></div>
  </div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_StartElement_System_String_System_String_System_String_Sax_IAttributes_.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.StartElement(System.String%2CSystem.String%2CSystem.String%2CSax.IAttributes)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L222">View Source</a>
  </span>
  <a id="Sax_IContentHandler_StartElement_" data-uid="Sax.IContentHandler.StartElement*"></a>
  <h4 id="Sax_IContentHandler_StartElement_System_String_System_String_System_String_Sax_IAttributes_" data-uid="Sax.IContentHandler.StartElement(System.String,System.String,System.String,Sax.IAttributes)">StartElement(String, String, String, IAttributes)</h4>
  <div class="markdown level1 summary"><p>Receive notification of the beginning of an element.
<p>
The Parser will invoke this method at the beginning of every
element in the XML document; there will be a corresponding
<a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndElement_System_String_System_String_System_String_">EndElement(String, String, String)</a> event for every <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_StartElement_System_String_System_String_System_String_Sax_IAttributes_">StartElement(String, String, String, IAttributes)</a> event
(even when the element is empty). All of the element&apos;s content will be
reported, in order, before the corresponding <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndElement_System_String_System_String_System_String_">EndElement(String, String, String)</a>
event.
<p>
This event allows up to three name components for each element:
<ol><li>the Namespace URI;</li><li>the local name; and</li><li>the qualified (prefixed) name.</li></ol>
<p>
Any or all of these may be provided, depending on the
values of the<var> <a href="http://xml.org/sax/features/namespaces">http://xml.org/sax/features/namespaces</a></var>
and the<var><a href="http://xml.org/sax/features/namespace-prefixes">http://xml.org/sax/features/namespace-prefixes</a></var>
properties:
<ul><li>the Namespace URI and local name are required when
    the namespaces property is <var>true</var> (the default), and are
    optional when the namespaces property is <var>false</var> (if one is
    specified, both must be);</li><li>the qualified name is required when the namespace-prefixes property
    is <var>true</var>, and is optional when the namespace-prefixes property
    is <var>false</var> (the default).</li></ul>
<p>Note that the attribute list provided will contain only
attributes with explicit values (specified or defaulted):</p>
<h1 id="implied-attributes-will-be-omitted--the-attribute-list">IMPLIED attributes will be omitted.  The attribute list</h1>
<p>will contain attributes used for Namespace declarations
(xmlns/// attributes) only if the
<a href="http://xml.org/sax/features/namespace-prefixes">http://xml.org/sax/features/namespace-prefixes</a>
property is true (it is false by default, and support for a
true value is optional).
<p>Like <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_Characters_System_Char___System_Int32_System_Int32_">Characters(Char[], Int32, Int32)</a>, attribute values may have
characters that need more than one <code>char</code> value.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void StartElement(string uri, string localName, string qName, IAttributes atts)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">uri</span></td>
        <td><p>uri the Namespace URI, or the empty string if the
element has no Namespace URI or if Namespace
processing is not being performed</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">localName</span></td>
        <td><p>the local name (without prefix), or the
empty string if Namespace processing is not being
performed</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">qName</span></td>
        <td><p>the qualified name (with prefix), or the
empty string if qualified names are not available</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="Sax.IAttributes.html">IAttributes</a></td>
        <td><span class="parametername">atts</span></td>
        <td><p>the attributes attached to the element.  If
there are no attributes, it shall be an empty
<a class="xref" href="Sax.IAttributes.html">IAttributes</a> object.  The value of this object after
<a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_StartElement_System_String_System_String_System_String_Sax_IAttributes_">StartElement(String, String, String, IAttributes)</a> returns is undefined</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Sax.SAXException.html">SAXException</a></td>
        <td><p>any SAX exception, possibly
wrapping another exception</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_StartElement_System_String_System_String_System_String_Sax_IAttributes__seealso">See Also</h5>
  <div class="seealso">
      <div><a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndElement_System_String_System_String_System_String_">EndElement(String, String, String)</a></div>
      <div><a class="xref" href="Sax.IAttributes.html">IAttributes</a></div>
      <div><a class="xref" href="Sax.Helpers.Attributes.html">Attributes</a></div>
  </div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler_StartPrefixMapping_System_String_System_String_.md&amp;value=---%0Auid%3A%20Sax.IContentHandler.StartPrefixMapping(System.String%2CSystem.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L144">View Source</a>
  </span>
  <a id="Sax_IContentHandler_StartPrefixMapping_" data-uid="Sax.IContentHandler.StartPrefixMapping*"></a>
  <h4 id="Sax_IContentHandler_StartPrefixMapping_System_String_System_String_" data-uid="Sax.IContentHandler.StartPrefixMapping(System.String,System.String)">StartPrefixMapping(String, String)</h4>
  <div class="markdown level1 summary"><p>Begin the scope of a prefix-URI Namespace mapping.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">void StartPrefixMapping(string prefix, string uri)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">prefix</span></td>
        <td><p>the Namespace prefix being declared.
An empty string is used for the default element namespace,
which has no prefix.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">uri</span></td>
        <td><p>the Namespace URI the prefix is mapped to</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_StartPrefixMapping_System_String_System_String__remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>The information from this event is not necessary for
normal Namespace processing: the SAX XML reader will
automatically replace prefixes for element and attribute
names when the<pre><code>http://xml.org/sax/features/namespaces</code></pre>
feature is <var>true</var> (the default).
<p>
There are cases, however, when applications need to
use prefixes in character data or in attribute values,
where they cannot safely be expanded automatically; the
start/endPrefixMapping event supplies the information
to the application to expand prefixes in those contexts
itself, if necessary.
<p>Note that start/endPrefixMapping events are not
guaranteed to be properly nested relative to each other:
all startPrefixMapping events will occur immediately before the
corresponding <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_StartElement_System_String_System_String_System_String_Sax_IAttributes_">StartElement(String, String, String, IAttributes)</a> event, 
and all <a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndPrefixMapping_System_String_">EndPrefixMapping(String)</a>
events will occur immediately after the corresponding
<a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndElement_System_String_System_String_System_String_">EndElement(String, String, String)</a> event,
but their order is not otherwise 
guaranteed.
<p>There should never be start/endPrefixMapping events for the
&quot;xml&quot; prefix, since it is predeclared and immutable.</p>
</div>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Sax.SAXException.html">SAXException</a></td>
        <td><p>the client may throw
an exception during processing</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 id="Sax_IContentHandler_StartPrefixMapping_System_String_System_String__seealso">See Also</h5>
  <div class="seealso">
      <div><a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_EndPrefixMapping_System_String_">EndPrefixMapping(String)</a></div>
      <div><a class="xref" href="Sax.IContentHandler.html#Sax_IContentHandler_StartElement_System_String_System_String_System_String_Sax_IAttributes_">StartElement(String, String, String, IAttributes)</a></div>
  </div>
  <h3 id="seealso">See Also</h3>
  <div class="seealso">
      <div><a class="xref" href="Sax.IXMLReader.html">IXMLReader</a></div>
      <div><a class="xref" href="Sax.IDTDHandler.html">IDTDHandler</a></div>
      <div><a class="xref" href="Sax.IErrorHandler.html">IErrorHandler</a></div>
  </div>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Sax_IContentHandler.md&amp;value=---%0Auid%3A%20Sax.IContentHandler%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
                  </li>
                  <li>
                    <a href="https://github.com/apache/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Benchmark/Support/Sax/ContentHandler.cs/#L43" class="contribution-link">View Source</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright © 2020 The Apache Software Foundation, Licensed under the <a href='http://www.apache.org/licenses/LICENSE-2.0' target='_blank'>Apache License, Version 2.0</a><br> <small>Apache Lucene.Net, Lucene.Net, Apache, the Apache feather logo, and the Apache Lucene.Net project logo are trademarks of The Apache Software Foundation. <br>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</small>
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.js"></script>
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.js"></script>
  </body>
</html>
