Objects of a reactive class can match object patterns
in a rule. Objects of a non-reactive class can not
match object patterns in a rule and are not considered when the
list of applicable classes are determined for an object pattern.
An abstract class cannot be reactive. If the reactive
or nonreactive descriptor for a class is not specified, it is
determined by inheritance.