zbiór deklaracji odnoszących się do wybranych atrybutów. Blok faset zawiera wykaz wszystkich atrybutów używanych w BW i źródłach wiedzy, wraz z przypisanymi do nich fasetami. Nie wszystkie atrybuty muszą być opisane fasetami, lecz wszystkie muszą być zadeklarowane w bloku faset Ogólna struktura bloku faset: facets opis_faset end; opis_faset - składa się z deklaracji globalnych ask, single oraz zbioru atrybutów i związanych z nimi faset.
System przyjmuje domyślnie: askyes, single no.
Struktura opisu faset
[ ask {yes \ no }; ] [ single {yes \ no }; ] atrybut_ 1 [ deklaracje_faset_ 1 ]; atrybut_n [ deklaracje_faset_n Rodzaje faset: ask, single, unit, val, ąuery.
W boku faset musi wystąpić przynajmniej jedna faseta, kolejność deklaracji jest dowolna. Faseta ask (yes no } określa, czy system może stawiać pytania dotyczące danego atrybutu. Deklaracja umożliwia tworzenie wyjątków od globalnej deklaracji as/c, która dotyczy wszystkich atrybutów w BW. Opcja yes - system może zadawać pytania o prawdziwość warunków lub hipotezy, które nie mogą być potwierdzone w oparciu o wiedzę zawartą w BW; Opcja no system nie może zadawać pytań użytkownikowi, może jedynie wykorzystywać wiedzę zawartą w BW. facets ask no;
atrybuM: ask yes
qucry "Podaj temperaturę ciała:"; end;
Faseta error
umożliwia zdefiniowanie własnego komunikatu zastępującego standardowe komunikaty o błędnych wartościach danego atrybutu. Komunikaty o błędnej wartości mogą pojawić się gdy próbujemy przypisać błędną wartość do atrybutu, a więc dotyczy to etapu czytania i translacji bloku reguł, dodawania faktów za pomocą okna dialogowe lub za pomocą instrukcji, zapytań SE o wartość zmiennych. Standardowy komunikat mówi jedynie o nieprawidłowej wartości, nie podając jakie one powinny być. Dzięki tej fasecie możemy doprecyzować informację, error "treść komunikam użytkownika o błędzie,,
Np.
error "Podaj wartość numeryczną z zakresu od O do 50„
Faseta param
umożliwia zadeklarowanie zmiennych parametrycznych oraz przypisanie im wartości domyślnych, które nie mogą być sprzeczne z deklaracjami typu: oneof, someof, rangę, except param { zmienna_l = wartość_l,..., zmienna_n = wartość_n }
Np.
facets
• atrybuM:
val rangę < 1, 3>
param { PARMIN =2.1, PARMAX =2.8 }; end;
Faseta picture
wiąże atrybuty z rysunkami, np. w formie map bitowych. Przypisanie rysunku bezpośrednio do atrybutu: picture nazwa_pliku