[From Builder UK
As applications become more and more complex, supporting business rules with triggers becomes more difficult. Triggers are useful for a wide range of applications, such as auditing, complex data validation, snapshots and data generation.
The problem is, within a single schema, a table or view can only have triggers of each of the four main types defined: before row, after row, before statement, and after statement. To avoid this kind of conflict, it's useful to define a standard pattern for trigger creation, which allows multiple PL/SQL or Java bodies to attach to trigger events easily.
The article continues at