Пример 5.3. Применение конструктора deftemplate


 

(deftemplate MyObject

(slot name)

(slot location)

(slot weight)

(multislot contents))

Как и все конструкторы CLIPS, конструктор deftemplate не возвращает ни­какого значения. При вводе данной команды в CLIPS вы должны увидеть результат, приведенный на рис. 5.1.

 

Рис. 5.1.Использование конструктораdeftemplate

Подобная реакция среды говорит об удачном добавлении определения шаблона в систему. Для просмотра всех определенных в текущей базе зна­ний шаблонов можно воспользоваться командой get-deftemplate-list, речь о которой пойдет ниже, или специальным инструментом Deftemplate Manager(Менеджер шаблонов), доступным в Windows-версии среды CLIPS. Для за­пуска менеджера шаблонов воспользуйтесь меню Browseи выберите пункт Deftemplate Manager(рис. 5.2).

Менеджер шаблонов позволяет в отдельном окне просматривать список всех шаблонов, доступных в текущей базе знаний, удалять выбранный шаб­лон и отображать все его свойства (например, такие как имена и типы сло­тов). Внешний вид менеджера шаблонов представлен на рис. 5.3.

После выполненной нами операции в текущей базе знаний находится два шаблона, о чем сообщается в заголовке окна менеджера (Deftemplate Man­ager — 2 Items).Первый шаблон является предопределенным шаблоном initial-fact. Он не имеет слотов и всегда добавляется при запуске среды. Его нельзя удалить с помощью менеджера, или просмотреть его определе­ние. Назначение и примеры использования факта initial-fact будут рас­смотрены ниже. Вторым шаблоном является только что добавленный шаб­лон MyObject. Менеджер шаблонов позволяет вывести в главное окно среды его определение с помощью кнопки Pprintили удалить его из среды по­средством кнопки Remove.На рис. 5.4 приведен результат последовательных операций вывода информации об определении шаблона и удалении его из текущей базы знаний.

 

Рис. 5.2.Запуск менеджера шаблонов

Рис. 5.З.Окно менеджера шаблонов

Рис. 5.4.Получение информации и удаление шаблона

Флажок Watchпозволяет включать/выключать режим отображения сообще­ний об использовании шаблонов для каждого присутствующего в системе шаблона в главном окне среды CLIPS. Если этот режим включен, пользова­тель будет получать сообщения при добавлении и удалении неупорядочен­ных фактов, использующих данный шаблон.

В случае, если при добавлении нового шаблона с помощью конструктора deftemplate произошла ошибка, пользователь получит соответствующее предупреждение. Полный список сообщений об ошибках в системе CLIPS приведен в приложениях 2 и 3.

Переопределение уже существующего шаблона приводит к исключению предыдущего определения. Шаблон не может быть переопределен до тех пор, пока он используется (например, фактом или правилом). Шаблон мо­жет иметь любое количество простых или составных слотов. CLIPS отличает простые и составные слоты в шаблоне. Например, будет ошибкой сохранять значение составного слота в простой слот.

Рассмотрим полный синтаксис конструктора deftemplate:

 



Дата добавления: 2021-12-14; просмотров: 261;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.007 сек.