Редактор грамматического словаря в SQL БД

Назначение редактора

Программа SQLex позволяет создавать, редактировать и удалять словарные и фразовые статьи, а также создавать, редактировать и удалять связи между статьями (тезаурус).

Благодаря тому, что в качестве хранилища данных используется реляционная многопользовательская СУБД (FireBird, MySql, Oracle, MS SQL), возможен режим коллективной и удаленной работы со словарем.

Платформа

Программа SQLex написана на языке Delphi и работает на MS Windows.

В настоящее время проверена работа редактора с MySQL v.5 и FireBird v.2.

Установка

Сама программа не требует установки.

Так как работа со словарем будет идти в SQL СУБД, то необходимо скачать подходящий для платформы дистрибутив БД и ODBC драйвер (например FireBird или MySQL ).

Связь программы с БД осуществляется через ODBC, поэтому необходимо создать соответствующий источник данных в панели управления ОС.

Закачка словаря в БД

После установки сервера БД и драйвера ODBC, можно закачивать словарь в БД. SQL скрипт, создающий схему БД и данные для русского языка, не входит в состав архива программы - вариант для целевой СУБД можно скачать на странице загрузок. Обратите внимание, что доступные бесплатно демо-версии скриптов содержат урезанный вариант русского словаря - только словарные статьи на букву "А".

При наличии полного SDK можно конвертировать любой из поддерживаемых языков в формат SQL скрипта и залить его в БД. Статистику по количеству информации в разных словарях можно увидеть здесь.

Конфигурация

Ряд настроек программы находится в файле sqleditor.ini.

Параметры подключения к БД собраны в секциях [db] и [dbaux]. Можно обойтись одной секцией [db], так как [dbaux] задает параметры второго словаря.

Наличие двух альтернативных секций подключения позволяет огранизовать работу пользователя с одним из двух словарей на выбор. На практике это редко изменяемый базовый (полный) словарь и небольшой активно меняющийся пользовательский словарь.

Если заданы обе секции [db] и [dbaux], то программа при старте предложит выбрать подключение.

Набор переменных в каждой из вышеупомянутых секций полностью идентичен:

odbc - строка подключения к серверу базы данных

name - условное название базы данных, например "Basic dictionary" или "User dictionary"

export - полный путь к командному файлу, который исполняется при выборе пункта меню File | Export, в рамках парадигмы базовый-пользовательский словарь это могут быть скрипты для выгрузки и полной пересборки базового словаря и выгрузки и добавления пользовательского словаря.

id_user - условный идентификатор пользователя, от имени которого выполняются модификации данных в базе

Запуск

После выполнения ранее описанных подготовительных шагов можно запускать программу - исполнимый файл SQLEditor.exe находится в корне архива.

Если в ini-файле задано несколько альтернативных подключений, например для большого базового и небольшого пользовательского словарей, появится диалоговое окно для выбора словаря:

подключение к БД словаря

Если соединение с сервером базы данных успешно установлено, то появится основное окно программы с полями для поиска словарных и фразовых статей, списком найденных статей и полями редактирования их содержимого и связей между ними:

Русско-японский словарь

Внесение и редактирование словарных статей

Прилагательные и причастия

В текущей реализации русской грамматики прилагательные и причастия объединены в одном грамматическом классе, поэтому для внесения причастия следует создавать словарную статью для класса прилагательное.

Чтобы ввести специфическую для причастия глагольную информацию, следует задать его связь с базовым инфинитивом. Для этого необходимо включить флажок "причастие" на парадигме и выбрать базовый инфинитив:

русское причастие

Разумеется, для причастия нет кратких, сравнительных и превосходных форм. Впрочем, для многих прилагательных эти формы также могут отсутствовать в разных сочетаниях.

Деепричастия

Русские деепричастия выделены в отдельный грамматический класс, поэтому их надо вносить в словарь как отдельные словарные статьи. Как и для причастий, необходимо задавать базовый глагол.

Глаголы

Из-за особенностей реализации русской грамматики инфинитивы храняться как отдельные словарные статьи. При поиске слов это хорошо видно:

русский глагол и инфинитив

При создании новой статьи для глагола программа самостоятельно создаст необходимую инфинитивную статью.

На вкладке с парадигмой глагола можно увидеть группу полей для задания специфических для глагола сведений - модальности, переходности и падежной валентности:

парадигма русского глагола

Японские словарные статьи

При внесении новых словарных статей в данный языковой раздел следует задавать написание слова - кана или кандзи. Это необходимо, чтобы при сборке бинарного словаря правильно сработали генераторы связей, которые создадут переводы кана-форм на русский из переводов кандзи-форм.

Автозаполнение грамматических форм

Для таких частей речи, как русские прилагательные, существительные и глаголы, создание новой словарной статьи связано с трудоемким процессом внесения всех его грамматических форм. Для прилагательных это может потребовать ввода до 60 форм.

Чтобы облегчить работу пользователя, в Редакторе есть функция автозаполнения. Соответствующий алгоритм подбирает подходящие образцы склонения или спряжения и генерирует формы новой словарной статьи. В случаях, когда подходит несколько образцов, выбор предоставляется пользователю:

Генерация грамматических форм слова по образцу

Данная функция основана на сохраняемых в словаре парадигмах - таблицах формообразования, у которых есть маски (регулярные выражения) для подбора.

Фразовые статьи

Выбор ведущего слова

Для правильной подстановки фраз в переводчике желательно вручную указывать ведущее слово в словосочетаниях:

выбор ведущего слова в русском словосочетании

Ведущее слово - это член словосочетания, который отвечает за грамматическую роль словосочетания в предложении.

Зная ведущее слово в правой и левой частях связи-перевода, алгоритм переводчика может правильно отобразить грамматическую форму одного языка на другой язык. К примеру, время для японского глагола отобразить на глагольное время русского:

фраза на японском языке

Обратите внимание, что Редактор Словаря использует сервис API грамматического движка для сегментации японского текста. Таким образом, выбирая ведущее слово кликом на отображенном списке, мы гарантированно получим тот же результат в ходе анализа японского предложения переводчиком:

перевод с японского

Экспорт словаря

Если скорость получения данных, например извлечения синонимов или переводов, из БД устраивает, вполне можно обойтись обычными средствами работы с информацией в БД в прикладном коде, начиная с ODBC до нативных клиентских библиотек.

Однако в некоторых случаях скорость критически важна и поэтому желателен переход на более быстрый вариант работы со словарем - через процедурный API, который работает с бинарным файлом словаря.

Чтобы использовать хранящийся в БД словарь в других программах проекта, например в поисковой системе, грамматическом словаре или в переводчике, также необходимо получить бинарный образ словаря с помощью компилятора.

Так как компилятор словаря в качестве исходного материала воспринимает только текстовые файлы, нужно выгрузить данные из SQL БД в текстовые файлы корректного формата. Данную работу выполняет консольная утилита sql2sol - она подключается к указанной в командной строке БД, читает данные из таблиц и формирует описания словарных и фразовых статей и связей тезауруса.

Программу SQLex можно настроить на автоматический вызов командного скрипта для выгрузки и сборки словаря. Для этого надо полный путь к файлу скрипта прописать в переменной export в секциях [db] и [dbaux]. Выбрав пункт меню File | Export в окне программы, пользователь запустит этот скрипт.

Покупка программы

Программа входит в состав SDK SQL Словаря и доступна для приобретения.

Рассмотрим также вариант доработки программы по Вашим спецификациям с последующей передачей как бинарных модулей, так и всех необходимых исходных текстов.

Дополнительная информация

Утилита sql2sol

Компилятор словаря

Структура словаря в SQL базе данных

Тезаурус

Лексикон

  © Elijah Koziev 2010
прикладные проекты на основе грамматического словаря API грамматической машины компоненты для доступа к грамматическому словарю условия получения SDK токенизатор и сегментатор морфологический анализ и синтез лемматизатор база N-грамм синтаксический анализатор словоформы морфология и синтаксис русского языка падеж число род совершенный и несовершенный вид экспорт в SQL формат экспорт в XML формат скрипт SQL словаря структура SQL словаря структура XML словаря компоненты для доступа к грамматическому словарю ORM Persistent Dictionary Library лемматизация стемминг примеры использования грамматического словаря склонение существительных в русском языке склонение русских прилагательных спряжение глаголов в русском языке поиск текста с учетом морфологии OCR подсистема расширенные регулярные выражения генератор текста генератор случайного текста и имитатор рандомизатор синонимизатор перефразировщик Статистика буквенных паттернов

Грамматический словарь русского языка



Грамматический словарь
склонение и спряжение глаголов, существительных, прилагательных

В состав входит русский и английский словарь.

платформа:  Windows 2000 ... Windows 7
требования: 512 Mb свободной памяти, 300 Мб на диске
размер:         34 Мб

  скачать грамматический словарь купить грамматический словарь SDK грамматического словаря
грамматический словарь русского языка



SDK Грамматического словаря



SDK Грамматического Словаря
склонение и спряжение глаголов, существительных, прилагательных

В состав входит русский и английский словарь.

платформа:  Windows 2000 ... Windows 7
размер:         13 Мб

SQL словарь (демо):
sqlite mysql oracle firebird mssql

скачать демо-версию SDK купить SDK API грамматического словаря



Поисковая система



Integra
настольная и сетевая поисковая система 

платформа:  Windows XP ... Windows 7
требования: 512 Mb свободной памяти
размер:         21 Мб

Дополнительные компоненты:
MySQL поисковый сервер 13.5 Мб
Integra.Premium MySQL 3.9 Мб

скачать поисковую систему SDK поисковой системыописание поисковой системы



SDK Поисковой системы



SDK Поискового движка
API для настольной и сетевой поисковая система 

платформа:  Windows XP ... Windows 7
размер:         17 Мб

Дополнительные компоненты:

MySQL поисковый сервер 13.5 Мб
Integra.Premium MySQL 3.9 Мб

скачать SDK SDK поисковой системы



Экранный переводчик



Translator
экранный переводчик

платформа:  Windows XP ... Windows 7
требования: 256 Mb свободной памяти
размер:         4.4 Мб

Дополнительные компоненты:
расширенный англо-русский словарь 6.4 Мб


скачать экранный переводчикописание экранного переводчика



последние изменения 16-Oct-10