mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-02-05 19:09:58 +08:00
5fcb079858
hard-to-maintain textual examples currently in the SGML docs. From Sergey Karpov.
53 lines
1.3 KiB
Plaintext
53 lines
1.3 KiB
Plaintext
Extended Synonym dictionary
|
|
===========================
|
|
|
|
This is a simple synonym dictionary. It replaces words with groups of their
|
|
synonyms, and so makes it possible to search for a word using any of its
|
|
synonyms.
|
|
|
|
* Configuration
|
|
|
|
It accepts the following options:
|
|
|
|
- KEEPORIG controls whether the original word is included, or only its
|
|
synonyms. Default is 'true'.
|
|
|
|
- RULES is the base name of the file containing the list of synonyms.
|
|
This file must be in $(prefix)/share/tsearch_data/, and its name must
|
|
end in ".rules" (which is not included in the RULES parameter).
|
|
|
|
The rules file has the following format:
|
|
|
|
- Each line represents a group of synonyms for a single word, which is
|
|
given first on the line. Synonyms are separated by whitespace:
|
|
|
|
word syn1 syn2 syn3
|
|
|
|
- Sharp ('#') sign is a comment delimiter. It may appear at any position
|
|
inside the line. The rest of the line will be skipped.
|
|
|
|
Look at xsyn_sample.rules, which is installed in $(prefix)/share/tsearch_data/,
|
|
for an example.
|
|
|
|
* Usage
|
|
|
|
1. Compile and install
|
|
|
|
2. Load dictionary
|
|
|
|
psql mydb < dict_xsyn.sql
|
|
|
|
3. Test it
|
|
|
|
mydb=# SELECT ts_lexize('xsyn','word');
|
|
ts_lexize
|
|
----------------
|
|
{word,syn1,syn2,syn3)
|
|
|
|
4. Change the dictionary options as you wish
|
|
|
|
mydb# ALTER TEXT SEARCH DICTIONARY xsyn (KEEPORIG=false);
|
|
ALTER TEXT SEARCH DICTIONARY
|
|
|
|
That's all.
|