﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Namespace Lucene.Net.QueryParsers.Flexible.Standard.Config
   | Apache Lucene.NET 4.8.0-beta00013 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Namespace Lucene.Net.QueryParsers.Flexible.Standard.Config
   | 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="queryparser/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="Lucene.Net.QueryParsers.Flexible.Standard.Config">
  
  <h1 id="Lucene_Net_QueryParsers_Flexible_Standard_Config" data-uid="Lucene.Net.QueryParsers.Flexible.Standard.Config" class="text-break">Namespace Lucene.Net.QueryParsers.Flexible.Standard.Config
  </h1>
  <div class="markdown level0 summary"><!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->
<p>Standard Lucene Query Configuration.</p>
<h2 id="standard-lucene-query-configuration">Standard Lucene Query Configuration</h2>
<p> The package org.apache.lucene.queryparser.flexible.standard.config contains the Lucene query configuration handler (StandardQueryConfigHandler). This configuration handler reproduces almost everything that could be set on the old query parser. </p>
<p> StandardQueryConfigHandler is the class that should be used to configure the StandardQueryNodeProcessorPipeline. </p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="markdown level0 remarks"></div>
    <h3 id="classes">Classes
  </h3>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.ConfigurationKeys.html">ConfigurationKeys</a></h4>
      <section><p>Class holding keys for <a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Processors.StandardQueryNodeProcessorPipeline.html">StandardQueryNodeProcessorPipeline</a> options.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.FieldBoostMapFCListener.html">FieldBoostMapFCListener</a></h4>
      <section><p>This listener listens for every field configuration request and assign a
<a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.ConfigurationKeys.html#Lucene_Net_QueryParsers_Flexible_Standard_Config_ConfigurationKeys_BOOST">BOOST</a> to the
equivalent <a class="xref" href="Lucene.Net.QueryParsers.Flexible.Core.Config.FieldConfig.html">FieldConfig</a> based on a defined map: fieldName -&gt; boostValue stored in
<a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.ConfigurationKeys.html#Lucene_Net_QueryParsers_Flexible_Standard_Config_ConfigurationKeys_FIELD_BOOST_MAP">FIELD_BOOST_MAP</a>.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.FieldDateResolutionFCListener.html">FieldDateResolutionFCListener</a></h4>
      <section><p>This listener listens for every field configuration request and assign a
<a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.ConfigurationKeys.html#Lucene_Net_QueryParsers_Flexible_Standard_Config_ConfigurationKeys_DATE_RESOLUTION">DATE_RESOLUTION</a> to the equivalent <a class="xref" href="Lucene.Net.QueryParsers.Flexible.Core.Config.FieldConfig.html">FieldConfig</a> based
on a defined map: fieldName -&gt; <span class="xref">Lucene.Net.Documents.DateTools.Resolution</span> stored in
<a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.ConfigurationKeys.html#Lucene_Net_QueryParsers_Flexible_Standard_Config_ConfigurationKeys_FIELD_DATE_RESOLUTION_MAP">FIELD_DATE_RESOLUTION_MAP</a>.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.FuzzyConfig.html">FuzzyConfig</a></h4>
      <section><p>Configuration parameters for <a class="xref" href="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/Lucene.Net.Search.FuzzyQuery.html">FuzzyQuery</a>s</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.NumberDateFormat.html">NumberDateFormat</a></h4>
      <section><p>This <span class="xref">Lucene.Net.Util.NumberFormat</span> parses <span class="xref">System.Int64</span> into date strings and vice-versa. It
uses the given <code>dateFormat</code> and <span class="xref">System.Globalization.CultureInfo</span> to parse and format dates, but before, it
converts <span class="xref">System.Int64</span> to <span class="xref">System.DateTime</span> objects or vice-versa.
<p>
Note that the <span class="xref">System.Int64</span> value the dates are parsed into and out of represent the number of milliseconds
since January 1, 1970 0:00:00, also known as the &quot;epoch&quot;.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.NumericConfig.html">NumericConfig</a></h4>
      <section><p>This class holds the configuration used to parse numeric queries and create
<a class="xref" href="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/Lucene.Net.Search.NumericRangeQuery.html">NumericRangeQuery</a>s.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.NumericFieldConfigListener.html">NumericFieldConfigListener</a></h4>
      <section><p>This listener is used to listen to <a class="xref" href="Lucene.Net.QueryParsers.Flexible.Core.Config.FieldConfig.html">FieldConfig</a> requests in
<a class="xref" href="Lucene.Net.QueryParsers.Flexible.Core.Config.QueryConfigHandler.html">QueryConfigHandler</a> and add <a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.ConfigurationKeys.html#Lucene_Net_QueryParsers_Flexible_Standard_Config_ConfigurationKeys_NUMERIC_CONFIG">NUMERIC_CONFIG</a>
based on the <a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.ConfigurationKeys.html#Lucene_Net_QueryParsers_Flexible_Standard_Config_ConfigurationKeys_NUMERIC_CONFIG_MAP">NUMERIC_CONFIG_MAP</a> set in the
<a class="xref" href="Lucene.Net.QueryParsers.Flexible.Core.Config.QueryConfigHandler.html">QueryConfigHandler</a>.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.StandardQueryConfigHandler.html">StandardQueryConfigHandler</a></h4>
      <section><p>This query configuration handler is used for almost every processor defined
in the <a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Processors.StandardQueryNodeProcessorPipeline.html">StandardQueryNodeProcessorPipeline</a> processor pipeline. It holds
configuration methods that reproduce the configuration methods that could be set on the old
lucene 2.4 QueryParser class.</p>
</section>
    <h3 id="enums">Enums
  </h3>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.DateFormat.html">DateFormat</a></h4>
      <section><p>LUCENENET specific enum for mimicking the Java DateFormat</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Flexible.Standard.Config.StandardQueryConfigHandler.Operator.html">StandardQueryConfigHandler.Operator</a></h4>
      <section><p>Boolean Operator: AND or OR</p>
</section>
</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/blob/docs/4.8.0-beta00013/src/Lucene.Net.QueryParser/Flexible/Standard/Config/package.md/#L2" class="contribution-link">Improve this Doc</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>
