![]() | ![]() | ![]() | ensure-ks | ![]() |
| ks-name
&key
| [Function] |
Purpose
Programmatically define or redefine a knowledge source (KS).
Package :agenda-shell
Module :agenda-shell
Arguments and values
ks-name | A symbol naming the KS | |
activation-predicate | A function designator specifying a
function object of two arguments (the KS unit instance
and the event object) that returns a generalized boolean or
nil (default is nil )
| |
enabled | A generalized boolean (default is t )
| |
execution-function | A function designator specifying a
function object of one argument (the KSA
unit instance) or nil (default is nil )
| |
ks-class | A class or a symbol specifying a class | |
ksa-class | A class or a symbol specifying a class | |
obviation-events | An | |
obviation-predicate | A function designator specifying a
function object of two arguments (the KSA
unit instance and the event object) that returns a
generalized boolean or nil (default is nil )
| |
precondition-function | A function designator specifying a
function object of two arguments (the KS unit instance
and the event object) or nil (default is nil )
| |
rating | A rating (default is 1 )
| |
retrigger-events | An | |
retrigger-function | A function designator specifying a
function object of two arguments (the KSA
unit instance and the event object) or nil (default is
nil )
| |
revalidation-predicate | A function designator specifying a
function object of one argument (the KSA
unit instance) that returns a
generalized boolean or nil (default is nil )
| |
trigger-events | An | |
ks | A KS |
Returns
The unit instance representing the KS
Detailed syntax
| ( event-signature*) |
| ( event-class-specifier |
[unit-class-or-instance-specifier | |
[{:slot-name slot-name} |
{:slot-names slot-names} | | |
{:path path} |
{:paths paths}]]) | |
| atomic-event-class |
( atomic-event-class subeventing-specifier)
| t |
| event-class | event-class-name |
| :plus-subevents | :no-subevents
+ | = |
The shorthand +
subevents specifier is equivalent to
:plus-subevents
and =
to :no-subevents
.
| unit-instance |
( unit-instance*) | |
atomic-unit-class | | |
( atomic-unit-class subclassing-specifier) |
t | |
| unit-class | unit-class-name |
| :plus-subclasses | :no-subclasses |
+ | = |
The shorthand +
subclasses specifier is equivalent to
:plus-subclasses
and =
to :no-subclasses
.
Description
This function is called to define or redefine a KS. It
is the functional equivalent of
See also
define-ks
ks
ks-enabled-p
undefine-ks
Example
Define an initial KS that is triggered when the control shell is
started:
(ensure-ks 'initial :trigger-events '((control-shell-started-event)) :execution-function #'initial-ks-function)
The GBBopen Project
![]() | ![]() | ![]() | ensure-ks | ![]() |