This class implements the basic functionality of storing the value
of either an attribute to be validated, or the entity or application module
reference on which validation is to be invoked.
Subclasses must provide validateValue, which performs the actual
validation test.