Падежи: различия между версиями

Материал из IFВики
Перейти к навигации Перейти к поиску
м (Реализация в существующих парсерных платформах)
(Реализация в существующих парсерных платформах: +ТОМ)
Строка 100: Строка 100:
 
При русскоязычной адаптации был разработан алгоритм предварительного разбора фразы и преведения к виду, указанному в предыдущем параграфе. Творительный и дательный падеж распознаются только с глаголами, к которым они пременимы (стукнуть тяжелым, подарить девушке), в остальных случаях трактуются как именительный. Родительный опознается только в прилагательных. <br>
 
При русскоязычной адаптации был разработан алгоритм предварительного разбора фразы и преведения к виду, указанному в предыдущем параграфе. Творительный и дательный падеж распознаются только с глаголами, к которым они пременимы (стукнуть тяжелым, подарить девушке), в остальных случаях трактуются как именительный. Родительный опознается только в прилагательных. <br>
 
Хотя подход нельзя назвать чистым, но если система понимает неправильно согласованные фразы (взять ботинке из тумбочкой), никому от этого большого вреда не будет (кроме случеев совпадения форм у разных объектов: прыгнуть с крыши => Имеете в виду "крыша" или "крыши"?)
 
Хотя подход нельзя назвать чистым, но если система понимает неправильно согласованные фразы (взять ботинке из тумбочкой), никому от этого большого вреда не будет (кроме случеев совпадения форм у разных объектов: прыгнуть с крыши => Имеете в виду "крыша" или "крыши"?)
 +
 +
 +
 +
''[[ТОМ]]''
 +
 +
 +
Для поддержки падежей используется универсальная система морфологического согласования на основе [[ТОМ: Лингвистический ключ|лингвистических ключей]]. При этом изначально платформа о падежах ничего не знает, а сами падежи задаются в коде игры, или в стандартных библиотеках.
 +
 +
Падежные формы задаются объектам с помощью [[ТОМ: Лексема|лексем]], и далее используются в согласовании по падежам и для определения правильных форм в парсере:
 +
мышонок.title="мышон%; Мр; Ип; Ип=ок; Рп=ка; Дп=ку; Вп=ка; Тп=ком; Пп=ке;" //для синтеза
 +
мышонок.lex = .title //та же лексема для анализа в парсере
 +
 +
Для изменения по падежам при синтезе текста используется оператор согласования:
 +
%дать {мышонок*Дп} {горох*Рп}.
 +
 +
Для указания формы слова в команде, согласование по падежам указывается в шаблоне команды:
 +
.шаблон = "дать=дай @Кому*Дп @Что*Вп"
 +
 +
Том в качестве команд принимает только правильно согласованные фразы. В случае ошибки выводится сообщение: ''"мышонком" - слово в неверной форме.''
  
 
== Ссылки ==
 
== Ссылки ==

Версия 09:24, 9 декабря 2008

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

Необходимость учитывать падежи - главная особенность русскоязычного синтаксического анализа, если сравнивать с англоязычным. При этом, в рамках ИЛ никаких принципиальных изменений не происходит, - вводимые предложения также являются командами из глаголов, прямых и косвенных объектов. Если это позволяет среда, англоязычный парсер всегда может быть достроен для русскоязычных фраз. Вопрос лишь в сложности и удобстве такого решения.


Падежи и их значение в РИЛ

Именительный

  1. Используется для отдачи приказов указанием действующего лица: "лиса, молчи"
  2. Для уточнений
  3. может вводиться как сокращение

Часто используется при формировании сообщений: "Но Илья Муромец ещё не проснулся!"


Родительный

  1. выражает определение или дополнение, что делает его прилагательным в терминах анализатора: обух топора
  2. указывает косвенный объект места действия: "взять все со стола"

Часто используется при формировании сообщений, обозначая отсутствие, принадлежность и ряд других случаев: "У Вас нет СПИДа", "Что вы хотите получить от козла?", "Вы не дотянетесь до кота"


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


Винительный
указывает как прямой, так и косвенный объекты: "сунуть палку в топку" В сообщениях используется аналогично


Творительный
также называется инструментальным, что ясно говорит об его роли.

  1. обозначает косвенный объект: "побрить злодея топором"
  2. указывает место: взять за стеклом ключи

В сообщениях используется аналогично


Второй творительный
Литературная или украинизированная форма с окончаниями -ою, -ею, -ёю
используется редко, главным образом для распознования ввода эстетствующих игроков: "окропить святою водою"


Предложный

  1. тема для разговора: "спросить о плинтусе"
  2. определение места: "сидеть на стуле"

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


Местный
малоизвестный падеж, который объединяет два последних случая в родительном и предложном падежах. Существование его вызвано тем, что у разных слов обстоятельство места указывается по разному - чаще в форме предложного, но порой и дательного падежа: "ящик на столе", "ящик на полу"
Указание местного падежа в системе позволяет учитывать эту неоднозначность.
Имеет смысл только для вывода и должен использоваться очень активно в любой стандартной библиотеке.


Звательный
Может использоваться в командах актерам: "Вась, наливай"


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


Лишительный
Совпадает либо с родительным, либо с винительным: нет вилки, не можешь взять вилку. Может влиять только на вывод фразы, но автор интуитивно поймет какой из падежей подставить в конкретном случае, а потому для РИЛ не актуален.


Счетный, превратительный, ждательный практически не актуальны для РИЛ


Особенности адаптации англоязычного парсера

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


Дательный:

  • дать корзину Плохишу -> дать корзина to Плохиш


Творительный:

  • забить гвоздь калькулятором -> забить гвоздь with калькулятор


Родительный:

  • прихлопнуть князя Гвидона -> прихлопнуть князя of Гвидона


В иных возможных случаях падежи также согласуются через предлоги и хорошо вписываются в англоязычную схему.


Реализация в существующих парсерных платформах

RTADS


из падежей TADS распознаёт только английский притяжательный (через 's), причем эта функция вшита в глубины системы и не вычленяется. Таким образом, изначально система все трактует как именительный и ожидает предлогов для указания косвенных объектов.
При русскоязычной адаптации был разработан алгоритм предварительного разбора фразы и преведения к виду, указанному в предыдущем параграфе. Творительный и дательный падеж распознаются только с глаголами, к которым они пременимы (стукнуть тяжелым, подарить девушке), в остальных случаях трактуются как именительный. Родительный опознается только в прилагательных.
Хотя подход нельзя назвать чистым, но если система понимает неправильно согласованные фразы (взять ботинке из тумбочкой), никому от этого большого вреда не будет (кроме случеев совпадения форм у разных объектов: прыгнуть с крыши => Имеете в виду "крыша" или "крыши"?)


ТОМ


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

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

мышонок.title="мышон%; Мр; Ип; Ип=ок; Рп=ка; Дп=ку; Вп=ка; Тп=ком; Пп=ке;" //для синтеза
мышонок.lex = .title //та же лексема для анализа в парсере

Для изменения по падежам при синтезе текста используется оператор согласования:

%дать {мышонок*Дп} {горох*Рп}.

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

.шаблон = "дать=дай @Кому*Дп @Что*Вп"

Том в качестве команд принимает только правильно согласованные фразы. В случае ошибки выводится сообщение: "мышонком" - слово в неверной форме.

Ссылки