Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

0    0    #1
06.09.2008 00:28

/gray_flannel
Участник (+8)
Откуда: Киев
Зарегистрирован: 08.08.2007
Сообщений: 52
Вебсайт

Порядок слов в имени

Возник следующий вопрос: имеет ли значение порядок слов в имени объекта при парсинге?

Например, у нас имеется красная деревянная байда

Как отреагируют современные системы на следующий запрос:
1. поднять деревянную красную байду
или
2. поднять байду деревянную
или
3. поднять байду любую

4. ...и как надо отреагировать на эти случаи?

Отредактировано /gray_flannel (06.09.2008 00:32)

Неактивен

0    0    #2
07.09.2008 19:24

yandexx
Z-машина (+46, -3)
Откуда: Санкт-Петербург
Зарегистрирован: 01.06.2007
Сообщений: 394
Вебсайт

Русский Информ
Информ Discord

Re: Порядок слов в имени

Возьмём Inform 6 (потому что я больше ничего не знаю).

Каждому объекту назначаются ключевые слова, в данном случае это были бы красн, деревянн, байд.  Если в команде встречается одно или больше слов из этого списка, то обрабатываем этот объект. Если также встречаются прочие слова, например, "любую", то получим "Здесь нет такого предмета.", хотя не всегда: например, "взять все байды" сработает.  Ну, и если есть несколько предметов с общими словами, и введённых в команде недостаточно, чтобы определить, какой именно пользователь имел ввиду, то парсер спросит, например: "Красную или зелёную?"  Порядок слов в команде значения не имеет, а вводить обработку слова "любой" не вижу смысла.

Отредактировано yandexx (07.09.2008 19:26)

Неактивен

0    0    #3
07.09.2008 22:39

/gray_flannel
Участник (+8)
Откуда: Киев
Зарегистрирован: 08.08.2007
Сообщений: 52
Вебсайт

Re: Порядок слов в имени

yandexx, спасибо, а как Inform 6 обработает такую хитрую ситуацию, что у нас в комнате присутствует кроме байды еще красное яблоко, и человек вводит:
подпереть байду красным

В данном случае можно подумать, что мы хотим или подпереть красную байду, или подпереть байду красным яблоком, а как воспримет это информ?

Неактивен

0    0    #4
07.09.2008 23:54

yandexx
Z-машина (+46, -3)
Откуда: Санкт-Петербург
Зарегистрирован: 01.06.2007
Сообщений: 394
Вебсайт

Русский Информ
Информ Discord

Re: Порядок слов в имени

Мы можем создавать собственные глаголы и изменять поведение уже имеющихся, и выглядит это так (для нового глагола):

Код:

Verb 'подпер' 
    * noun -> Support
    * noun noun -> Support;

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

EDIT:

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

Код:

Verb 'подпер' 
    * cAcc_noun -> Support
    * cAcc_noun cIns_noun -> Support;

Тогда подпереть байду красным будет пытаться подпирать яблоком, а подпереть байду красную подпирать байду просто.

Отредактировано yandexx (08.09.2008 17:20)

Неактивен

0    0    #5
08.09.2008 05:23

GrAndrey
папа RTADS и Бяка (+49, -2)
Откуда: Москва
Зарегистрирован: 15.09.2002
Сообщений: 1198
Вебсайт

меньше слов

Re: Порядок слов в имени

Постпозитивное определение - определение, стоящее после определяемого слова.

В RTADS определение после существительного будет связано с ним только в тех случаях, если между ними стоит свзяка "от", "из", "для", "про" и т.д. ('of' в англ. варианте) или у определения есть специальная пометка, сообщающая парсеру что оно приписывается без связки (обработчик все равно незаметно вставит связку).

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

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

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru