В праздники нашлось немного времени.
В первую очередь занимался стороной developer-friendliness.
- Теперь файл class.php является более самодостаточным: удалена папка QUERIES2, где лежали шаблоны запросов. Сами запросы перенесены внутрь класса.
- Отказался от движка шаблонов ( ?BLABLABLA? ). Перешел на использование префиксов в именах таблиц, как в PHPBB2. Следовательно, теперь требуется гораздо меньше данных о метаданных обьектов (таблиц), с которыми будут работать эти классы (см. примеры) и работает несколько быстрее.
Начал прикручивать опциональность морфологии. Пока не работает, но и ничему не мешает
Вроде работает с mysql 4.1.8, осталось разобраться с кодировками
Поукрашал/посокращал код.
Рекомендуется перезапустить все инсталляторы-импортеры-индексаторы на чистой бд.
http://development1.key-soft.net/wicked/ENC11_1.1.RAR
-~{}~ 09.03.05 11:58:
PS: Что-то все никак не могу нарисовать нормальную презентацию, повествующую о том, как это все работает
Наверное придется рисовать на бумаге и сканировать
-~{}~ 09.03.05 16:00:
Вот сделал самую общую презентацию на тему того, какие роли у SHC
http://development1.key-soft.net/wicked/presentation.pdf
-~{}~ 20.04.05 17:21:
Если можно так сказать, вышел ENC12
* Сделал мало-мальскую "административную панель"
позволяет более осмысленно и более быстро совершать необходимые действия. см. index.html.
* Настройки теперь задаются через функции типа SetVar(). Те, которые считаю нужным уметь получать обратно, снабжены GetVar()'ом. Прошу обратить особое внимание на строчки типа
PHP:
extract($this->_settings, EXTR_SKIP);
в методах. Это чтобы не париться с $this->_settings["..."] и писать покороче.
* Теперь можно задать режим индексации, который будет добавлять в ispell слова, которых там еще нету, но которые встретились в индексируемом тексте. Ни о какой морфологии, понятное дело, речи не идет. Сделано это просто чтобы назначать ID начальным формам и словоформам, которые бы можно было использовать в инверсных индексах.
* В связи с пред. пунктом добавилась возможность backup'ить и restore'ить текущее состояние ISPELL (доступно так же через админку).
* Теперь используется стандартный TFxIDF. С нормированием по длине текста и т.д. Должно быть получше.
* вычисление TFxIDF теперь стало опциональным. В задачах классификации, например, оно просто не имеет смысла.
* добавилась таблица `{$prefix}CONFIG`, в которую при индексации складывается некоторая потенциально интересная информация.
* При переиндексации в `{$prefix}CONFIG`сохраняется "переменная" FINISHED, которая позволяет избежать работы с некорректными (недостроенными) инверсными индексами.
* дальнейшая работа по developer-friendly. Многии функции переименованы во что-нибудь более осмысленное.
* дальнейшая работа по оптимизации. Например таблицы теперь удаляются одним запросом, а не как попало.
* В поставку включен пример по одному процессу классификационной системы. Работает с математическими текстами на русском языке. (см. раздел "Classification:" в админке)
* В поставку поисковика включен финансовый словарь. (см. пункт "Enc (./TEXTS/)" в админке)
* В поставку поисковика включена еще одна независимая коллекция "текстов"
(см. пункт "Bench (./BENCH/split/)" в админке)
http://development1.key-soft.net/wicked/ENC12.rar
-~{}~ 20.04.05 17:36:
забыл
* более правильный тест кодировок
* на старых версиях PHP больше не ворнингать из-за __FUNCTION__, __CLASS__
* "SET NAMES ..." выполняется в зависимости от версии mysql'я но теперь уже c этой проверкой на стороне PHP. Т.к. старые mysql'и ломались на конструкции /*!40100 ... */
* значительно доработан пример поисковика (см. ENC -> Search form)
* ...