<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.help.base">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.help.base" id="luceneAnalyzer" name="Lucene Analyzer"/>
      </appInfo>
      <documentation>
         This extension point is used to register text analyzers for use by help when indexing and searching documentation.
&lt;p&gt;
Help exploits capabilities of the Lucene search engine, that allows indexing of token streams (streams of words).
Analyzers create tokens from the character stream.  They examine text content and provide tokens for use with the index.
The text stream can be tokenized in many unique ways.  A trivial analyzer can tokenize streams at white space,
a different one can perform filtering of tokens, based on the application needs.
Since the documentation is mostly human-readable text, it is desired that analyzers used by the help system
perform language and grammar aware tokenization and normalization of indexed text.
For some languages, the quality of search increases significantly if stop word removal and stemming is performed
on the indexed text.
&lt;p&gt;
The analyzer contributed to this extension point will override the one provided by the Eclipse help system for a given locale.
&lt;/p&gt;
      </documentation>
   </annotation>

   <element name="extension">
      <complexType>
         <sequence>
            <element ref="analyzer" minOccurs="0" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string">
            <annotation>
               <documentation>
                  
               </documentation>
               <appInfo>
                  <meta.attribute translatable="true"/>
               </appInfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="analyzer">
      <complexType>
         <attribute name="locale" type="string" use="required">
            <annotation>
               <documentation>
                  a string identifying locale for which the supplied analyzer is
to bue sued.
If two letters, language is provided, and the analyzer will be
available to all locales of that language.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  a fully qualified name of the Java class extending &lt;samp&gt;org.apache.lucene.analysis.Analyzer&lt;/samp&gt;.
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.apache.lucene.analysis.Analyzer"/>
               </appInfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appInfo>
         <meta.section type="since"/>
      </appInfo>
      <documentation>
         3.0 (originally added in release 2.0 as org.eclipse.help.luceneAnalyzer)
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         Following is an example of Lucene Analyzer configuration:

&lt;p&gt;
&lt;pre&gt;
 &lt;extension id=&quot;com.xyx.XYZ&quot; point=&quot;org.eclipse.help.base.luceneAnalyzer&quot;&gt;
  &lt;analyzer locale=&quot;ll_CC&quot; class=&quot;com.xyz.ll_CCAnalyzer&quot;/&gt;
 &lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         The value of the &lt;samp&gt;locale&lt;/samp&gt; attribute must represent either a five- or two-charcter locale string.
If the analyzer is configured for a language by specifying two-letter language designation, the analyzer is
going to be used for all locales of this language.  If the analyzer is configured that matchs a five-character
locale, it is going to be used instead.
&lt;p&gt;
The value of the &lt;samp&gt;class&lt;/samp&gt; attribute must represent a class that extends &lt;samp&gt;org.apache.lucene.analysis.Analyzer&lt;/samp&gt;.
It is recommended that this analyzer performs lowercase filtering for languages where it is possible to increase
number of search hits by making search case-sensitive.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="implementation"/>
      </appInfo>
      <documentation>
         The Eclipse help system provides analyzers for all languages. For English and German, the analyzers perform stop word filtering, lowercase filtering, and stemming. For all the other languages the supplied analyzer only performs lowercase filtering.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="copyright"/>
      </appInfo>
      <documentation>
         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

This program and the accompanying materials are made 
available under the terms of the Eclipse Public License 2.0 which accompanies 
this distribution, and is available at &lt;a href=&quot;https://www.eclipse.org/legal/epl-2.0&quot;&gt;https://www.eclipse.org/legal/epl-v20.html&lt;/a&gt;/

SPDX-License-Identifier: EPL-2.0
      </documentation>
   </annotation>

</schema>
