Типы словарных баз. ESlovoEdContainerDatabaseTypeEnum

Тип контейнера – наиболее общая характеристика словарной базы: определяет то, какой контент внутри содержится и как приложение в целом должно работать с целой базой (при этом адаптируется ui, выбираются методы поиск данных в базе и т.д.)

Список типов

Разговорник (eDatabaseType_Phrasebook, “Phrasebook”)

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

Пример использования

  • Insight Guides Russian Phrasebook (54EE.sdc)
  • Langenscheidt Russian – English Phrasebook (5374.sdc)
  • Также в силу того, что это значение по умолчанию, оно ошибочно может быть указано в ряде баз, где явно не было специфицировано

Словарь (eDatabaseType_Dictionary, “Dictionary”)

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

Пример использования

подавляющее большинство выпускаемых баз, например:

  • Slovoed Deluxe English-Russian (5170.sdc) – как пример простого словаря с переводами
  • Oxford Advanced Learner’s Dictionary  10 ed. (5607.sdc) – толковый словарь с большим набором фич
  • Oxford Collocations (545D.sdc) – база словосочетаний с иерархическим построением основного списка

Как видно из примеров, они не обязательно содержат линейные списки (в Collocations есть иерархия), а также не обязательно являются простыми переводными словарями: этим типом размечаются и тематические словари (например, Medical), и специализированные (тезаурусы). Также важно отметить, что этот тип не накладывает ограничений на состав списков слов – словарь может быть толковым (только язык From), двунаправленным (From ↔ To) и однонаправленным (From → To)

База озвучки (eDatabaseType_Sound, “Sound”)

База предназначена для поиска записей по ключу (известному запрашивающей стороне) и получению привязанной к найденному слову озвучки

Пример использования

  • Slovoed Deluxe English sound (530E.sdc)
  • PONS English sound (54AF.sdc)

Техническая морфология prc (eDatabaseType_Morphology, “Morphology”)

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

  • поиск всех базовых форм (их может быть несколько) по заданной производной форме
  • поиск всех производных форм для заданной базовой
  • построение морфологической таблицы, содержащей все формы слова с их описаниями

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

Если рассматривать области применения морфологии более детально, то это:

  • индексация контента и генерация списков полнотекстового поиска с помощью FTSGenerator
  • подключение морфологии при полнотекстовом поиске и сортировке его результатов в приложении
  • построение морфотаблиц для отображения в приложении
  • поиск базовой формы для фич морфоподсказки и кроссрефов в приложении

Пример использования

Все случаи prc2sdc cконвертированной морфологии, например:

  • Slovoed Russian morphology (4000.sdc)
  • Duden German Morphology (400A.sdc)

Бандл (eDatabaseType_Bundle)

Deprecated, Использовалось для бандлов (наборов словарей)

Пример использования

Изначально не использовалось в sdc базах (legacy, пришедшее из prc формата)

База лингвистических игр и тестов (eDatabaseType_Games, “Games”)

База, содержащая контент для лингвистических игр (угадывания слов, “виселицы” и т.п.)

Пример использования

  • Van Dale Dikke 15 Games (54A7.sdc)

Также все лингвистические игры Slovoed Spelling games (всего 6 баз), например:

  • Slovoed English Spelling game (5080.sdc)
  • Slovoed Spanish Spelling game (5084.sdc)

Демо-база (eDatabaseType_InApp)

Deprecated. Использовалось для маркировки демо-баз; актуальная реализация предполагает простановку флага демо-базы, который используется в паре со значениями данного перечисления

Пример использования

Устаревшее значение, не должно встречаться в базах с версией ядра 116+. Более старые должны обновляться пересборкой с использованием InAppCreator

Учебник (eDatabaseType_TextBook, “TextBook”)

База, содержащая систематизированную информацию определенного учебного курса или вспомогательные учебные пособия

Пример использования

Учебники, которые разрабатывались в рамках проекта ЛЭУ, например:

  • Физика для 8 класса (Пёрышкин) (000001F5.datf)
  • Oxford Bookworms Teacher’s materials. New Yorkers (activity answers) (000002E7.datf)
  • Oxford Bookworms Teacher’s materials. New Yorkers (tests) (000002E8.datf)

В рамках словарных проектов встречаться не должны (unless you know what you’re doing)

База изображений (eDatabaseType_Images, “Images”)

База предназначена для поиска записей по ключу (известному запрашивающей стороне) и получению привязанного к найденному слову изображения

Пример использования

Oxford ALD 9 ed. (images) (5498.sdc)

Книга (eDatabaseType_Book, “Book”)

Содержит книгу или ее отрывок (например, художественную литературу) и обычно является вспомогательным источником данных для базы другого типа (например, учебника)

Пример использования

Разрабатывались в рамках проекта ЛЭУ; примеров в инфраструктуре парагона нет (тем не менее, является допустимым значением)

Визуальный словарь (eDatabaseType_PictureDictionary, “PictureDictionary”)

Тип, объединяющий направления словаря и разговорника, но с фокусом на толкование понятия с помощью изображений: переводимые слова разделены по тематическим категориям, статьи содержат иллюстрирующие термин изображения и текстовый перевод (обычно краткий)

Пример использования

Используется только в двух словарях: PONS Picture Dictionary и Van Dale Picture Dictionary:

  • PONS Picture dictionary (multilingual base) (54FA.sdc)
  • PONS Picture dictionary (dummy Russian-Spanish base) (5512.sdc)
  • Van Dale Picture dictionary (multilingual base) (55AF.sdc)

Подобными по смыслу (но не по структуре и не по фактически указанному типы базы – сейчас это Phrasebook) являются:

  • Langenscheidt Picture Talk (527C.sdc)
  • набор баз Vox Picture Dictionary (в частности, 508A.sdc)

Потенциально они (особенно VOX) требуют переработки на близкую к существующим PictureDictionary структуру и указания этого типа базы

Морфологические таблицы (eDatabaseType_DisplayMorphology, “DisplayMorphology”)

База морфологических таблиц. В отличие от технических морфологий обоих форматов (prc/sdc), таблицы свёрстаны заранее и хранятся в переводах слов. Сами записи списка слов на практике обычно не отображаются (хотя это не является запрещенным поведением), а статьи для отображения осуществляется поиском (выбор типа поиска остается за приложением)

Пример использования

По факту не используется нигде, что ошибочно. Должно применяться в базах:

  • Duden morphomagics (5449.sdc)
  • PONS Display morphology English (54C0.sdc)
  • PONS Display morphology French (54C2.sdc)
  • PONS Display morphology Spanish (54C1.sdc)

Техническая морфология sdc (eDatabaseType_InflectionMorphology, “InflectionMorphology”)

По аналогии с технической морфологией prc-формата (eDatabaseType_Morphology), предназначена для поиска морфологических форм слова. При этом структура хранения данных – стандартная для sdc формата, в виде набора списков (eWordListType_MorphologyBaseForm, eWordListType_MorphologyInflectionForm). В отличие от вшитых в конкретную базу списков, позволяет в рамках продукта с несколькими словарями пользоваться единой морфобазой, не дублируя её контент

Пример использования

Используется в двух базах:

  • Oxford Morphology (5595.sdc)
  • Van Dale Groot Dutch (55AC.sdc)

Информация для разработчиков приложений

/// Разновидность типа содержимого контейнера
enum ESlovoEdContainerDatabaseTypeEnum
{
	/// Разговорник
	eDatabaseType_Phrasebook = 0,
	/// Словарная база
	eDatabaseType_Dictionary,
	/// Звуковая база
	eDatabaseType_Sound,
	/// Морфологическая база
	eDatabaseType_Morphology,
	/// Бандл
	eDatabaseType_Bundle,
	/// База лингвистических игр
	eDatabaseType_Games,
	/// База, загружаемая через механизм встроенных покупок
	eDatabaseType_InApp,
	/// База, содержащая контент учебника
	eDatabaseType_TextBook,
	/// База с изображениями
	eDatabaseType_Images,
	/// Книга
	eDatabaseType_Book,
	/// Визуальный словарь
	eDatabaseType_PictureDictionary,
	/// Отображаемые морфо таблицы
	eDatabaseType_DisplayMorphology,
	/// Морфология, содержащая только базовые и производные формы
	eDatabaseType_InflectionMorphology,
	/// Неизвестный тип - ошибка
	eDatabaseType_Unknown = 0xFFFF
};

Фичи словаря. ESldFeatures

Набор фич словаря, которые требуют отдельной подготовки – ui, логики работы – при их наличии в словаре:

  • наличие скрываемых блоков (eFeature_SkeletalMode, “SkeletalMode”) – указывает на наличие в базе hide/switch блоков (обычно готовится ui для их настройки в рантайме)
  • наличие мата и обсценной лексики (eFeature_Taboo, “Taboo”) – требует подготовки определенного safe search/parent mode
  • наличие настраиваемых ударений (eFeature_Stress, “Stress”) – требует отдельного экрана настройки внешнего вида ударений в рантайме

Пример использования

  • eFeature_SkeletalMode – Oxford Advanced Learner’s Dictionary 10 ed. (5607.sdc)
  • eFeature_Taboo – на практике не используется. Изначально планировался к использованию в Oxford Advanced Learner’s Dictionary 8 ed. (53CC.sdc, на тот момент еще 524С.sdc) и реализовывался бы через тип hide-блоков “taboo”, который настраивался бы отдельно от остальных hide-ов. Далее была попытка реализовать проект OALD HP Safe search на основе той же базы: с удалением обсценной лексики из списка слов полностью и предупреждением при открытии переводов статей, лишь часть переводов которых маркирована как taboo words. Также не было реализовано в приложениях
  • eFeature_Stress:
  • Slovoed Deluxe English-Russian (5170.sdc)

Словенско-русский словарь Кузнецова (54AC.sdc)

Информация для разработчиков приложений

/// Битовый набор свойств словаря
enum ESldFeatures
{
    eFeature_SkeletalMode = 0,
    eFeature_Taboo,
    eFeature_Stress,
};

If you have found a spelling error, please, notify us by selecting that text and pressing Ctrl+Enter.