How are exceptions signalled?


Whenever possible, OKBC operations that experience erroneous conditions or arguments signal errors. OKBC uses condition signals that are analogous to COMMON LISP conditions or Java exceptions. Condition signals are defined for commonly occurring error situations. OKBC provides a user with some control over when the errors should be signaled.

The OKBC errors are said to be either continuable or not. An error is said to be continuable only if the state of the KB is not known to have been changed by the error in such a way that the behavior of subsequent OKBC operations becomes undefined. Thus, although the signaling of a continuable error will interrupt any processing currently being performed, subsequent OKBC calls will be unaffected. After a non-continuable error, the state of the KB and the behavior of the KRS and application are undefined. The operation continuable-error-p returns true only for continuable error objects, and is false otherwise.

OKBC conditions are defined in the section 3.8 of the OKBC Specifications


Next: Are the exceptions in the spec the only ones that can be signalled?
Top: OKBC FAQ Table of Contents