Принцип организации свойств некоторого объекта или события для формирования прообраза реализуется с помощью нотации вида <фрейм>. Для иллюстрации этого опишем сведения о служащем компании, как это сделано в предыдущем разделе. Достоинство системы, использующей фреймы, заключается в том, что те элементы, которые традиционно присутствуют в описании объекта или события, группируются и благодаря этому могут извлекаться и обрабатываться как единое целое. Первый пример касается понятия <руководитель> (см. рис. 3.4) и иллюстрирует некоторые особенности фреймов.
|
имя: РУКОВОДИТЕЛЬ |
специальность: СЛУЖАЩИЙ |
имя: ________________________ |
возраст:______________________ |
адрес: _______________________ |
отдел:_______________________ |
заработная плата:_____________ |
дата начала: _________________ |
до: _________________________ |
|
Рисунок 3.4 Скелетный фрейм для понятия <РУКОВОДИТЕЛЬ>
Во-первых, фрейм имеет имя для идентификации описываемого им понятия. Во-вторых, его описание составляется из ряда описаний, приведенных на рисунке слева, которые получили название <слоты>. С помощью слотов идентифицируются основные структурные элементы понятий. За слотами следуют шпации (промежутки), в которые помещают некоторые объекты, представляющие текущие значения слотов.
имя: РУКОВОДИТЕЛЬ
специальность: СЛУЖАЩИЙ
имя: агрегат (фамилия, имя, отчество)
возраст; агрегат (годы)
адрес: АДРЕС
отдел: диапазон (производство, администрация)
заработная плата: ЗАРПЛАТА
дата начала: агрегат (месяц, год)
до: агрегат (месяц, год) (по умолчанию: теперь)
Рисунок 3.5 Фрейм для общего понятия <РУКОВОДИТЕЛЬ>
На рис. 3.5 дан тот же фрейм, что и на рис. 3.4, но только с заполненными слотами. При этом часть из них заполнена некими объектами, а не простыми именами. В данном примере фигурируют три различных типа таких заполнителей слотов. Заполнитель слота может быть или константой, или именем другого фрейма. Простейшими из них являются те, что представлены прописными буквами (например, АДРЕС, ЗАРПЛАТА). Это имена других фреймов данной системы, на которые делается ссылка. Кроме того, существуют обозначения <агрегат> и <интервал>. В процессе обработки систем фреймов иногда необходимо наложить ограничения на тип объекта, который может быть использован для заполнения некоторого слота. Обозначение <агрегат> указывает на то, что должны быть заданы определенные объекты, а обозначение <диапазон> - на то, что должен быть выбран один из множества объектов.
Фреймы сравнительно легко реализуются с помощью структуры языка Лисп в виде списка свойств, рассмотренного ранее в связи с обращением к семантическим сетям.
Существует ряд языков, специально разработанных для облегчения конструирования на основе фреймов различных процедур обработки знаний.