ТОМ: Лексема

Материал из IFВики
Перейти к навигации Перейти к поиску

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

Структура лексемы

Лексема состоит из 4х частей:

  • основа лексемы (1 шт.);
  • ключ постоянных свойств лексемы (1 шт.);
  • ключ словоформы по умолчанию (1 шт.);
  • модификаторы лексемы (списком);

Части лексемы разделяются точкой с запятой.


Пример:

"лес%; НдЕчМр; Ип; Ип=; Рп=а; Дп=у; Вп=; Тп=ом; ПпИ2=е; ПпМ2=у"

Где:


Основа лексемы

Основа - это строка модифицируемая в словоформу. Основа может содержать спец.символы % и #. При формировании словоформы символы % замещаются подобранным модификатором, а символы # замещаются числом - количеством объектов.

Ключ постоянных свойств

Ключ словоформы по умолчанию

При формировании словоформы ключ по умолчанию добавляется к согласующему ключу. Свойства согласующего ключа при этом более приоритетны.

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

Модификаторы лексемы

модификатор лексемы имеет следующие форматы:

ключ = модификатор;

или

ключ = модификатор1, модификатор2, ... модификаторN;

или

ключ < модификатор;

Использование лексем для синтеза текста

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

Использование лексем в парсинге команд