(deffacts <имя-списка-фактов> [<необязательные-комментарии>] [<факт>*])
Добавление конструктора deffacts с именем уже существующего конструктора приведет к удалению предыдущего конструктора, даже если новый конструктор содержит ошибки. В среде CLIPS возможно наличие нескольких конструкций deffacts одновременно и любое число фактов в них (как упорядоченных, так и неупорядоченных). Факты всех созданных пользователем конструкторов deffacts будут добавлены при инициализации системы.
Все замечания по поводу использования комментариев в конструкторе deftemplate применимы и к конструктору deffacts.
В поля факта могут быть включены динамические выражения, значения которых будут вычисляться при добавлении этих фактов в текущую базу знаний CLIPS.
Пример 2.2.4. Использование конструктора deffacts
(deffacts startup "Refrigerator Status"
(refrigerator light on)
(refrigerator door open)
(refrigerator temp (+ 5 10 15))
Третий факт содержит выражение, в данном примере сумму трех констант, но в качестве выражения, инициализирующего значение факта, могут использоваться и более сложные выражения, например, вызовы функций CLIPS или функций, определенных пользователем.]

Рис. 1.2.3.Просмотр процесса добавления файлов
Функция assert
Функция assert позволяет добавлять факты в список фактов текущей базы знаний. Каждым вызовом этой функции можно добавить произвольное число фактов.