Д. Храпов
Geiriadur 0.4 объединяет в себе словарный движок и систему редактирования словарей. Он развивается как средство создания русско-валлийского и валлийско-русского словарей, но может быть использован и для других языков, например, бретонского или ирландского.
Основными элементами системы являются "слова" и "переводы".
"Перевод" представляет собой либо пару слов, либо слово с толкованием. Он может быть снабжен примерами.
Под "словом" подразумевается набор букв без пробелов, наделенный самостоятельным смыслом в каком-либо языке. Слово может обладать транскрипцией и рядом атрибутов (род, вид и т.п.), а кроме того, одной или несколькими графическими основами ("корнями") и нерегулярными словоформами. Регулярные словоформы строятся динамически в момент поиска на основе "корней" и хранящихся в базе "окончаний".
Система понимает мутации и варианты написания (орфографические ошибки, американский английский, средневаллийский и т. п.)
В случае, если прямой поиск (по первому слову в таблице переводов) не дает результатов, система предпринимает обратный поиск или предлагает пользователю попробовать поиск через третий язык. При наличии у пользователя достаточных прав он может приказать системе "запомнить" правильные переводы (см. пример).
Некоторую статистику словаря можно посмотреть тут. В настоящий момент "Гейриáдир" содержит:
Код системы распространяется на условиях GPL (официальный английский текст, русский перевод, валлийский перевод).
Словарная база распространяется на
условиях GNU FDL (официальный
английский
текст, валлийский
перевод). Также можно скачать словари в виде простого текста: cy-ru.txt, ru-cy.txt, br-ru.txt, ga-ru.txt.
Система состоит из двух компонентов: словарного сервера и веб-интерфейса к нему, использующего веб-сервер Araneida. Они разрабатываются на языке Common Lisp. Долговременное хранение данных обеспечивается СУБД PostgreSQL.
Взаимодействие клиента и сервера осуществляется посредством CORBA. ORB'ом системы служит CLORB. Объект, реализующий интерфейс поиска и кэширующий содержимое базы в памяти, слушает на 2628 порту (IOR). Его кэш обновляется раз в сутки. Объект (IOR), реализующий интерфейс поиска и смотрящий непосредственно в базу, а также объект (IOR), реализующий интерфейс редактирования, слушают на 2629 порту. Интерфейсы описаны в файле dictionary.idl.
Данное описание является пока весьма неполным. Если у вас есть вопросы или предложения, пишите: [email protected]. Вы можете помочь, создавая переводы через сервер, или прислав список слов в нашем входном формате (и кодировке UTF-8).