Backward chaining rules may refer to the object base using the standard (<class-name> <variable> [<slot-name> <term>]*)
syntax, and these expressions are instantiated directly without creating any sub-goals. The <class-name>
of any CLOS class or KnowledgeWorks structure may not coincide with any backward chaining <rule-name>
. The Common Prolog database may be used to record factual information but it is distinct from the object base in that it may contain variables, and anything in it is inaccessible to the forward chaining rule preconditions.