LUCENE-1966: ArabicAnalyzer stopwords cleanup

git-svn-id: https://svn.apache.org/repos/asf/lucene/java/trunk@825110 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Robert Muir 2009-10-14 12:24:18 +00:00
parent 80ecb13e4a
commit e053d80455
3 changed files with 119 additions and 151 deletions

View File

@ -10,6 +10,10 @@ Changes in backwards compatibility policy
Changes in runtime behavior
* LUCENE-1966: Modified and cleaned the default Arabic stopwords list used
by ArabicAnalyzer. You'll need to fully re-index any previously created
indexes. (Basem Narmok via Robert Muir)
* LUCENE-1963: ArabicAnalyzer now lowercases before checking the stopword
list. This has no effect on Arabic text, but if you are using a custom
stopword list that contains some non-Arabic words, you'll need to fully

View File

@ -148,6 +148,7 @@ public final class ArabicAnalyzer extends Analyzer {
public final TokenStream tokenStream(String fieldName, Reader reader) {
TokenStream result = new ArabicLetterTokenizer( reader );
result = new LowerCaseFilter(result);
// the order here is important: the stopword list is not normalized!
result = new StopFilter( result, stoptable );
result = new ArabicNormalizationFilter( result );
result = new ArabicStemFilter( result );
@ -175,6 +176,7 @@ public final class ArabicAnalyzer extends Analyzer {
streams = new SavedStreams();
streams.source = new ArabicLetterTokenizer(reader);
streams.result = new LowerCaseFilter(streams.source);
// the order here is important: the stopword list is not normalized!
streams.result = new StopFilter(streams.result, stoptable);
streams.result = new ArabicNormalizationFilter(streams.result);
streams.result = new ArabicStemFilter(streams.result);

View File

@ -1,161 +1,123 @@
# This file was created by Jacques Savoy and is distributed under the BSD license.
# See http://members.unine.ch/jacques.savoy/clef/index.html.
# Also see http://www.opensource.org/licenses/bsd-license.html
# Cleaned on October 11, 2009 (not normalized, so use before normalization)
من
ومن
منها
منه
في
وفي
فيها
فيه
و
ف
ثم
او
أو
ب
بها
به
ا
أ
،
عبد
عدم
عام
عاما
عن
عند
عندما
على
عليه
عليها
تم
ضد
بعد
بعض
اعادة
اعلن
اعلنت
بسبب
حتى
اتفاق
اذا
احد
اثر
اجتماع
اطار
اربعة
اخرى
بان
ابو
اجل
غير
اطلاق
بشكل
حاليا
بن
به
ثم
اف
ان
او
اي
بها
جهة
حيث
اكد
الا
اما
العام
السابق
السلام
التعاون
التى
التي
اكثر
ايضا
الذاتي
الاخيرة
الثاني
الثانية
الذى
الذي
الان
خلال
حوالى
الذين
الحكم
الاول
الاولى
بين
ذلك
الى
انه
ضمن
انها
جميع
الماضي
المقبل
ف
و
و6
قد
لا
ما
مع
هذا
واضاف
واضافت
فان
قبل
كان
لدى
نحو
هذه
وان
يذكر
كانت
واوضح
فى
في
كل
لم
لن
له
من
هو
هي
كما
لها
منذ
ولا
مقابل
هناك
وكان
وكانت
فيه
لكن
وفي
ولم
ومن
وهو
وهي
فيها
منها
يكون
أخرى
إذا
أربعة
إطار
إعادة
أعلن
أعلنت
أف
أكثر
أكد
إلا
الأخيرة
الآن
الأول
الأولى
إلى
أما
أن
إن
إنه
أنه
أنها
إنها
أو
اى
اي
أي
أى
أيضا
لا
ولا
الا
ألا
إلا
لكن
ما
وما
كما
فما
عن
مع
اذا
إذا
ان
أن
إن
انها
أنها
إنها
انه
أنه
إنه
بان
بأن
فإن
فان
فأن
وان
وأن
وإن
التى
التي
الذى
الذي
الذين
الى
الي
إلى
إلي
على
عليها
عليه
اما
أما
إما
ايضا
أيضا
كل
وكل
لم
ولم
لن
ولن
هى
هي
هو
وهى
وهي
وهو
فهى
فهي
فهو
انت
أنت
لك
لها
له
هذه
هذا
تلك
ذلك
هناك
كانت
كان
يكون
تكون
وكانت
وكان
غير
بعض
قد
نحو
بين
بينما
منذ
ضمن
حيث
الان
الآن
خلال
بعد
قبل
حتى
عند
عندما
لدى
جميع