Die Seite wurde neu angelegt: „Die nachfolgende Datei schema.xml definiert die Feldtypen und Felder, die in einem Core für Dovecot angelegt werden. Es gibt drei Feldtypen: * string * long * text Folgende Felder werden definiert: * id * uid * box * user * body * hdr * from * to * cc * bcc * subject <syntaxhighlight lang="xml" line="1"> <?xml version="1.0" encoding="UTF-8"?> <schema name="dovecot" version="2.1"> <uniqueKey>id</uniqueKey> <fieldType name="string" class="solr.StrF…“
 
Keine Bearbeitungszusammenfassung
Zeile 20: Zeile 20:
* bcc
* bcc
* subject
* subject
<syntaxhighlight lang="xml" line="1">
Des Weiteren werden mehrere Dateien für Spezialbegriffe in schema.xml festgelegt, über die die Suche beeinflusst werden kann.
 
* synonyms.txt – Definiert synonyme Begriffe, so dass wenn ein Begriff gesucht wird, dann auch andere Synonyme gefunden werden.
* protwords.txt – Definiert geschützte Begriffe, so dass Solr nicht versucht einen Wortstamm zu ermitteln und danach zu suchen.
* stopwords.txt – Definiert Wörter, die bei der Textanalyse ausgelassen werden sollen.
 
Diese Dateien können initial leer gelassen werden.<syntaxhighlight lang="xml" line="1">
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<schema name="dovecot" version="2.1">
<schema name="dovecot" version="2.1">

Version vom 3. Mai 2026, 12:51 Uhr

Die nachfolgende Datei schema.xml definiert die Feldtypen und Felder, die in einem Core für Dovecot angelegt werden.

Es gibt drei Feldtypen:

  • string
  • long
  • text

Folgende Felder werden definiert:

  • id
  • uid
  • box
  • user
  • body
  • hdr
  • from
  • to
  • cc
  • bcc
  • subject

Des Weiteren werden mehrere Dateien für Spezialbegriffe in schema.xml festgelegt, über die die Suche beeinflusst werden kann.

  • synonyms.txt – Definiert synonyme Begriffe, so dass wenn ein Begriff gesucht wird, dann auch andere Synonyme gefunden werden.
  • protwords.txt – Definiert geschützte Begriffe, so dass Solr nicht versucht einen Wortstamm zu ermitteln und danach zu suchen.
  • stopwords.txt – Definiert Wörter, die bei der Textanalyse ausgelassen werden sollen.

Diese Dateien können initial leer gelassen werden.

<?xml version="1.0" encoding="UTF-8"?>
<schema name="dovecot" version="2.1">
  <uniqueKey>id</uniqueKey>
  <fieldType name="string" class="solr.StrField" omitNorms="true" sortMissingLast="true"/>
  <fieldType name="plong" class="solr.LongPointField"/>
  <fieldType name="text" class="solr.TextField" autoGeneratePhraseQueries="true" positionIncrementGap="100">
    <analyzer type="index">
      <tokenizer class="solr.ICUTokenizerFactory"/>
      <filter class="solr.ICUFoldingFilterFactory"/>
      <filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/>
      <filter class="solr.WordDelimiterGraphFilterFactory" splitOnCaseChange="1" catenateWords="1" splitOnNumerics="1" catenateNumbers="1" generateNumberParts="1" generateWordParts="1" catenateAll="1"/>
      <filter class="solr.PorterStemFilterFactory"/>
      <filter class="solr.SynonymGraphFilterFactory" synonyms="synonyms.txt" expand="true" ignoreCase="true"/>
      <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
      <filter class="solr.FlattenGraphFilterFactory"/>
    </analyzer>
    <analyzer type="query">
      <tokenizer class="solr.ICUTokenizerFactory"/>
      <filter class="solr.ICUFoldingFilterFactory"/>
      <filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/>
      <filter class="solr.WordDelimiterGraphFilterFactory" splitOnCaseChange="1" catenateWords="1" splitOnNumerics="1" catenateNumbers="1" generateNumberParts="1" generateWordParts="1" catenateAll="1"/>
      <filter class="solr.PorterStemFilterFactory"/>
      <filter class="solr.SynonymGraphFilterFactory" synonyms="synonyms.txt" expand="true" ignoreCase="true"/>
      <filter class="solr.SuggestStopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
    </analyzer>
  </fieldType>
  
  <field name="id" type="string" indexed="true" required="true" stored="true"/>
  <field name="uid" type="plong" indexed="true" required="true" stored="true"/>
  <field name="box" type="string" indexed="true" required="true" stored="true"/>
  <field name="user" type="string" indexed="true" required="true" stored="true"/>

  <field name="body" type="text" indexed="true" stored="false"/>
  <field name="hdr" type="text" indexed="true" stored="false"/>

  <field name="from" type="text" indexed="true" stored="false"/>
  <field name="to" type="text" indexed="true" stored="false"/>
  <field name="cc" type="text" indexed="true" stored="false"/>
  <field name="bcc" type="text" indexed="true" stored="false"/>
  <field name="subject" type="text" indexed="true" stored="false"/>

  <field name="_version_" type="plong" indexed="true" stored="true"/>
</schema>