2.2. Редактор правил rule editor
На рис. 4 показано изображение редактора правил.
Рис. 4. Окно редактора правил
2.2.1. Подменю редактора правил
Среда Редактора правил, содержит следующие подменю:
NEW - создание нового правила;
MODIFY - изменение текущего правила;
COPY - копирование текущего правила;
DELETE - удаление текущего правила;
OK - подтверждение и сохранение текущего правила;
CANCEL - отмена;
CHECK - проверка;
QUIT - выход.
2.2.2. Описание ЯЧеек среды редактора правил
Под меню редактора правил располагается строка редактирования, в которой отображается вся вводимая в данный момент информация. Следущая строка называется "Имя правила" (Rule Name). По умолчанию система просто присваивает правилам номера: r.1, r.2, и т.д.; область редактора правил делится на левую часть (ЛЧ) и правую часть (ПЧ) (см. рис. 5).
Рис. 5. Среда редактора правил
В ЛЧ содержатся проверяемые условия, а в ПЧ - гипотеза и выполняемые в случае истинности гипотезы действия (Actions). Ячейка Inference Category (категория вывода) может содержать номер
категории вывода, по умолчанию это 1; ячейка Category Atom (атом категории) - номер атома категории; Comments - комментарии; Why - почему (объяснение). Кроме этого в левом нижнем углу есть прямоугольник, разделенный чертой по диагонали слева направо. Он используется для листания: если щелкнуть левой кнопкой мыши, находясь в верхней части этого прямоугольника, то осуществится переход к следующему правилу; в нижней - к предыдущему. Листание можно осуществить и другим способом: для этого в правой части экрана есть колонка “буквенный индекс”, которая состоит из пары букв (ab, cd, ef, gh, ij, kl, mn, . . . ); при нажатии той или иной ячейки с парой букв, можно перейти к правилу, гипотеза которого начинается с одной из букв пары.
2.2.3. Всплывающие меню редактора правил
При вызове всплывающего меню (нажатием правой кнопки мыши в нужном месте) в левой колонке ЛЧ правила (колонке оператора), появится список операторов:
Clear - очистить ячейку;
Yes - "истинно";
No - "ложно";
>
<
=
<>
>=
<=
Equal - равно (для строковых данных);
NotEqual - не равно (для строковых данных);
Is - является
IsNot - не является
Name - (имя) передает значения от одной переменной к другой
Show - показать файл
Member - член списка
NotMember- не член списка
Reset - сброс в исходное состояние
Execute - выполнить внешнюю программу
Retrieve - чтение файла базы данных
Insert Line - вставить строку
Delete Line- удалить строку
При вызове всплывающего меню в средней колонке ЛЧ (колонке выражения) появится список следующих операторов:
Clear - очистить ячейку
Copy Hypothesis - скопировать гипотезу (появляется список гипотез, из которого можно выбрать нужную и скопировать)
Copy Data - скопировать данное (появляется список данных)
Copy Class - скопировать класс (появляется список классов)
Copy Object - скопировать объект (появляется список объектов)
Insert Line - вставить строку
Delete Line - удалить строку
Операции копирования данных/классов/объектов/гипотез из списка, вызванного через всплывающее меню, помогают избежать синтаксических ошибок.
При вызове всплывающего меню в правой колонке ЛЧ (колонке значения) появится тот же список операторов, что и при вызове в колонке выражения.
При вызове всплывающего меню в поле гипотезы появится тот же список операторов, что и в колонке выражения ЛЧ, за исключением вставки/удаления.
При вызове всплывающего меню в поле действий (Actions), появятся различные команды по выполнению действий, которые в настоящем описании рассматриваться не будут.
2.2.4. Типы данных, применЯемые в правилах
В правилах системы NEXPERT применяются пять типов данных. Первый тип - Boolean (логический). Данные этого типа принимают значение "истина" или "ложь". Данные типа Boolean опознаются по применению операторов Yes, No. Второй тип данных - Multi-valued (многозначный). Такой тип данных имеют тексты (строки символов). Многозначный тип данных опознается по применению операторов: Is, IsNot, Name, Equal, Unequal. Третий тип - Numeric (числовой), значением которого являются числа с плавающей запятой. Данный тип опознается по применению операторов: >, <, =<, >=, =, =/=.
2.2.5. ЛексиЧеские правила
1. При работе в среде редактора правил система NEXPERT будет автоматически помещать знак подчеркивания ("_") между словами при нажатии на клавиатуре пробела. Если по какой-либо причине знак подчеркивания не вставился, его нужно вставить вручную.
2. Имена данных не должны содержать следующие символы:
"-" - тире; "/", "\" - слэши;
"." - точку; "(", ")" - скобки;
"*" - звездочку; "%" - знак процента;
"+" - плюс; "<", ">" - угловые скобки;
"{", "}" - фигурные скобки; "[", "]" - квадратные скобки; "^" - полиграфический знак вставки.
