Define an inheritance relationship between facts. This allows future modules to extend referenced facts by defining derived facts that participate in a predecessor's query. The query does not know the derived fact name. It only knows the base fact name.
Do not require extension points to be explicitly defined ahead of time. For example, do not require that base facts be abstract, or that they have interfaces.
Do not require extension points to be explicitly defined ahead of time. For example, do not require that base facts be abstract, or that they have interfaces.