﻿<!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.Analysis.Phonetic.Language
   | Apache Lucene.NET 4.8.0-beta00008 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Namespace Lucene.Net.Analysis.Phonetic.Language
   | Apache Lucene.NET 4.8.0-beta00008 Documentation ">
    <meta name="generator" content="docfx 2.50.0.0">
    
    <link rel="shortcut icon" href="../../logo/favicon.ico">
    <link rel="stylesheet" href="../../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../../styles/docfx.css">
    <link rel="stylesheet" href="../../styles/main.css">
    <meta property="docfx:navrel" content="../../toc.html">
    <meta property="docfx:tocrel" content="../toc.html">
    
    <meta property="docfx:rel" content="../../">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <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="../../index.html">
                <img id="logo" class="svg" src="../../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" id="breadcrumb">
            <ul class="breadcrumb">
              <li></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.Analysis.Phonetic.Language">
  
  <h1 id="Lucene_Net_Analysis_Phonetic_Language" data-uid="Lucene.Net.Analysis.Phonetic.Language" class="text-break">Namespace Lucene.Net.Analysis.Phonetic.Language
  </h1>
  <div class="markdown level0 summary"></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.Analysis.Phonetic.Language.AbstractCaverphone.html">AbstractCaverphone</a></h4>
      <section><p>Encodes a string into a Caverphone value.
<p>
This is an algorithm created by the Caversham Project at the University of Otago. It implements the Caverphone 2.0
algorithm:
<p>
This class is immutable and thread-safe.
<p>
See <a href="http://en.wikipedia.org/wiki/Caverphone">Wikipedia - Caverphone</a></p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.Caverphone1.html">Caverphone1</a></h4>
      <section><p>Encodes a string into a Caverphone 1.0 value.
<p>
This is an algorithm created by the Caversham Project at the University of Otago. It implements the Caverphone 1.0
algorithm:
<p>
See: <a href="http://en.wikipedia.org/wiki/Caverphone">Wikipedia - Caverphone</a>
<p>
See: <a href="http://caversham.otago.ac.nz/files/working/ctp060902.pdf">Caverphone 1.0 specification</a>
<p>
This class is immutable and thread-safe.
<p>
since 1.5</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.Caverphone2.html">Caverphone2</a></h4>
      <section><p>Encodes a string into a Caverphone 2.0 value.
<p>
This is an algorithm created by the Caversham Project at the University of Otago. It implements the Caverphone 2.0
algorithm:
<p>
See: <a href="http://en.wikipedia.org/wiki/Caverphone">Wikipedia - Caverphone</a>
<p>
See: <a href="http://caversham.otago.ac.nz/files/working/ctp150804.pdf">Caverphone 2.0 specification</a>
<p>
This class is immutable and thread-safe.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.ColognePhonetic.html">ColognePhonetic</a></h4>
      <section><p>Encodes a string into a Cologne Phonetic value.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.DaitchMokotoffSoundex.html">DaitchMokotoffSoundex</a></h4>
      <section><p>Encodes a string into a Daitch-Mokotoff Soundex value.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.DoubleMetaphone.html">DoubleMetaphone</a></h4>
      <section><p>Encodes a string into a double metaphone value. This Implementation is based on the algorithm by <code>Lawrence
Philips</code>.
<p>
This class is conditionally thread-safe. The instance field <span class="xref">Lucene.Net.Analysis.Phonetic.Language.DoubleMetaphone.maxCodeLen</span> is mutable
<a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.DoubleMetaphone.html#Lucene_Net_Analysis_Phonetic_Language_DoubleMetaphone_MaxCodeLen">MaxCodeLen</a> but is not volatile, and accesses are not synchronized. If an instance of the class is
shared between threads, the caller needs to ensure that suitable synchronization is used to ensure safe publication
of the value between threads, and must not set <a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.DoubleMetaphone.html#Lucene_Net_Analysis_Phonetic_Language_DoubleMetaphone_MaxCodeLen">MaxCodeLen</a> after initial setup.
<p>
See <a href="http://drdobbs.com/184401251?pgno=2">Original Article</a>
<p>
See <a href="http://en.wikipedia.org/wiki/Metaphone">http://en.wikipedia.org/wiki/Metaphone</a></p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.DoubleMetaphone.DoubleMetaphoneResult.html">DoubleMetaphone.DoubleMetaphoneResult</a></h4>
      <section><p>Inner class for storing results, since there is the optional alternate encoding.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.MatchRatingApproachEncoder.html">MatchRatingApproachEncoder</a></h4>
      <section><p>Match Rating Approach Phonetic Algorithm Developed by <code>Western Airlines</code> in 1977.
<p>
This class is immutable and thread-safe.
<p>
See: <a href="http://en.wikipedia.org/wiki/Match_rating_approach">Wikipedia - Match Rating Approach</a>
<p>
since 1.8</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.Metaphone.html">Metaphone</a></h4>
      <section><p>Encodes a string into a Metaphone value.
<p>
Initial Java implementation by <code>William B. Brogden. December, 1997</code>.
Permission given by <code>wbrogden</code> for code to be used anywhere.
<p>
<code>Hanging on the Metaphone</code> by <code>Lawrence Philips</code> in <code>Computer Language of Dec. 1990,
p 39.</code>
<p>
Note, that this does not match the algorithm that ships with PHP, or the algorithm found in the Perl implementations:
<p>
<ul><li><a href="http://search.cpan.org/~mschwern/Text-Metaphone-1.96/Metaphone.pm">Text:Metaphone-1.96</a> (broken link 4/30/2013) </li><li><a href="https://metacpan.org/source/MSCHWERN/Text-Metaphone-1.96//Metaphone.pm">Text:Metaphone-1.96</a> (link checked 4/30/2013) </li></ul>
<p>
They have had undocumented changes from the originally published algorithm.
For more information, see <a href="https://issues.apache.org/jira/browse/CODEC-57">CODEC-57</a>.
<p>
This class is conditionally thread-safe.
The instance field <span class="xref">Lucene.Net.Analysis.Phonetic.Language.Metaphone.maxCodeLen</span> is mutable <a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.Metaphone.html#Lucene_Net_Analysis_Phonetic_Language_Metaphone_MaxCodeLen">MaxCodeLen</a>
but is not volatile, and accesses are not synchronized.
If an instance of the class is shared between threads, the caller needs to ensure that suitable synchronization
is used to ensure safe publication of the value between threads, and must not set <a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.Metaphone.html#Lucene_Net_Analysis_Phonetic_Language_Metaphone_MaxCodeLen">MaxCodeLen</a>
after initial setup.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.Nysiis.html">Nysiis</a></h4>
      <section><p>Encodes a string into a NYSIIS value. NYSIIS is an encoding used to relate similar names, but can also be used as a
general purpose scheme to find word with similar phonemes.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.RefinedSoundex.html">RefinedSoundex</a></h4>
      <section><p>Encodes a string into a Refined Soundex value. A refined soundex code is
optimized for spell checking words. Soundex method originally developed by
<code>Margaret Odell</code> and <code>Robert Russell</code>.
<p>
This class is immutable and thread-safe.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.Soundex.html">Soundex</a></h4>
      <section><p>Encodes a string into a Soundex value. Soundex is an encoding used to relate similar names, but can also be used as a
general purpose scheme to find word with similar phonemes.
<p>
This class is thread-safe.
Although not strictly immutable, the <span class="xref">Lucene.Net.Analysis.Phonetic.Language.Soundex.maxLength</span> field is not actually used.</p>
</section>
    <h3 id="interfaces">Interfaces
  </h3>
      <h4><a class="xref" href="Lucene.Net.Analysis.Phonetic.Language.IStringEncoder.html">IStringEncoder</a></h4>
      <section><p>Defines common encoding methods for <span class="xref">System.String</span> encoders.</p>
</section>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                </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 Licensed to the Apache Software Foundation (ASF)
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../../styles/docfx.js"></script>
    <script type="text/javascript" src="../../styles/main.js"></script>
  </body>
</html>
