Observers allow for custom callbacks to be defined at critical locations in the DataMapper core, which could be used to pre- or post process the object's data, add additional logic, etc.
Original issue from DataMapper v1.
see http://codeigniter.com/forums/viewthread/149388/P530/#783616 and http://codeigniter.com/forums/viewthread/149388/P540/#783667