このリポジトリには、PostgreSQLでの全文検索用のブルガリアのispell ( affix and dict )とstopword辞書が含まれています。
ispell辞書ファイル( bulgarian.affixおよびbulgarian.dict )は、BGOFFICE/すれば、OpenOfficeで使用するために作成され、LGPL 3.0でライセンスされています。
このリポジトリには、これらのファイルの変更されたバージョン(マイナーな変更)が含まれており、PostgreSQLが予想される形式と互換性のあるものにします。元のispellファイル( bulgarian.aff and bulgarian.dic )は、http://bgoffice.sourceforge.net/ispell/index.htmlからダウンロードできます。
このリポジトリ( bulgarian.stop )で使用されているSTOP Wordsリストは、Jacques Savoy教授による記事「Bulgarian Languageの検索戦略」 (リストは表A.1)に掲載されているリストの修正版です。
3つのファイルをコピーbulgarian.affix 、 bulgarian.dict 、 bulgarian.stop to top to stop to your $SHAREDIR/tsearch_data/ directory(例: C:Program FilesPostgreSQL12sharetsearch_data )。 pg_config --sharedirを実行することで、 $SHAREDIRが何であるかを判断できます。
次のSQLスクリプトを実行します。
CREATE TEXT SEARCH CONFIGURATION bulgarian (COPY = simple);
CREATE TEXT SEARCH DICTIONARY bulgarian_ispell (
TEMPLATE = ispell,
DictFile = bulgarian,
AffFile = bulgarian,
StopWords = bulgarian
);
CREATE TEXT SEARCH DICTIONARY bulgarian_simple (
TEMPLATE = pg_catalog.simple,
STOPWORDS = bulgarian
);
ALTER TEXT SEARCH CONFIGURATION bulgarian ALTER MAPPING FOR asciiword, asciihword, hword, hword_part, word WITH bulgarian_ispell, bulgarian_simple;
全文検索クエリを実行して、その動作を確認してください。
このようなクエリ:
SELECT to_tsvector('bulgarian', 'текстовете');
単語のベースのみを出力する必要があります( текст ):
`"'текст':1"`