Диалог Watson Сохранение и доступ к имени и значению объекта

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

<entities>
    <entity name="Employee">
        <value name="chat test" value="84"/>
        <value name="Bill Bu" value="85"/>
        <value name="Tim Roberts" value="86"/>
     </entity>
 <entities>

Я пытаюсь сохранить оба значения и имена в двух разных переменных, чтобы сделать это, я делаю это

 <input>
     <grammar>
         <item>Who is (Employee)={employeename}</item>
     </grammar>
     <action operator="SET_TO" varName="employeename">{employeename.value:name}</action>
     <action operator="SET_TO" varName="employeeid">{employeename.value:main}</action>
     <goto ref="employeeData_whois"/>
 </input>

и вот где я установил переменные....

    <variables>
        <var_folder name="Home">
            <var description="The current employee being inquired on" name="employeename" type="TEXT"/>
            <var description="The current ID of employee being inquired on" name="employeeid" type="NUMBER"/>
        </var_folder>
    </variables>

По какой-то причине, когда я пытаюсь получить доступ к имени сотрудника, все работает отлично, но я не могу получить доступ к идентификатору сотрудника (я хочу сослаться на идентификатор внешней системы). Любой совет?

Спасибо!

1 ответ

Основной смысл установки типа переменной в виде числа - это операторы, которые вы можете задать для него: приращение на, больше чем и т. Д. Если не делать слишком много отладки, я думаю, что самым простым решением для вас было бы просто установить тип employeeid должен быть текстовым, и он должен работать правильно. Вы можете иметь номер в тексте просто отлично.

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

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

Другие вопросы по тегам