Системи, бази знань іноді нараховують сотні правил, і для інженера знань при такій складності системи, процес оновлення складу правил і контроль зв'язків між ними стає дуже складною, оскільки додаються правила можуть дублювати наявні знання або вступати з ними у протиріччя.
Для виявлення подібних фактів можна використовувати програмні засоби, але включення їх у роботу системи призводить до ще більш негативних наслідків - втрати працездатності, так як в цьому випадку інженер знань втрачає уявлення про те, як взаємодіють правила.
Так як зростає кількість зв'язків між поняттями, інженеру знань важко їх контролювати.
Представлення знань, заснованих на фреймах, є альтернативним по відношенню до систем, заснованим на правилах: воно дає можливість зберігати ієрархію понять в базі знань в явній формі.
Фреймом називається структура для опису стереотипної ситуації, що складається з характеристик цієї ситуації і їх значень. Характеристики називаються слотами, а значення - заповнювачами слотів. Слот може містити не тільки конкретне значення, а й ім'я процедури, що дозволяє обчислити його по заданому алгоритму, а також одне або декілька правил, за допомогою яких це значення можна знайти. У слот може входити не одне, а кілька значень. Іноді слот включає компонент званий фасетів, який задає діапазон або перелік його можливих значень. Як вже зазначалося, крім конкретного значення, у слоті можуть зберігатися процедури і правила, які викликаються при необхідності обчислення цього значення. Якщо, наприклад, фрейм, що описує людину, включає слоти «Дата народження» і «Вік», і в першому з них знаходиться деяке значення, то в другому слоті може стояти процедура, що обчислює вік за датою народження та поточної дати.
Процедури, що розташовуються в слоті, називаються пов'язаними процедурами.
Найчастіше використовуються процедури:
«Якщо - додано» - виконується, коли нова інформація міститься у слот;
«Якщо - видалено» - виконується, коли інформація видаляється з слота;
«Якщо - потрібно» - виконується, коли запитується інформація з слота, а він порожній.
Ці процедури можуть перевіряти, що при зміні значення проводяться відповідні дії.
Сукупність фреймів, моделююча яку-небудь предметну область, являє собою ієрархічну структуру, до якої з'єднуються фрейми. На верхньому рівні ієрархії знаходиться фрейм, що містить найбільш загальну інформацію, дійсну для всіх інших фреймів. Фрейми мають здатність наслідувати значення характеристик своїх батьків, що знаходяться на більш високому рівні ієрархії. Значення характеристик фреймів можуть передаватися за замовчуванням фреймах, що знаходиться нижче них в ієрархії, але, якщо останні містять власні значення даних характеристик, то в якості істинних даних приймаються саме вони. Ця обставина дозволяє легко враховувати під фреймових системах різного роду виключення. Розрізняють статичні і динамічні системи фреймів. У системах статичних фрейми не можуть бути змінені в процесі виконання завдання, в динамічних системах це припустимо. Найбільш яскраво гідності фреймових систем представлення знань виявляється в тому випадку, якщо зв'язки між об'єктами змінюються нечасто і предметна область нараховує трохи винятків.
Значення слотів представляються в системі в єдиному екземплярі, оскільки включається тільки в один кадр, що описує найбільш загальне поняття з усіх тих, які містять слот з такою назвою. Така властивість систем фреймів дає можливість зменшити обсяг пам'яті, необхідний для їх розміщення в комп'ютері. Проте основнаперевага полягає не в економії пам'яті, а в поданні до БЗ зв'язків, що існують між поняттями предметної області.