RK
Why object may change? Because you call some business logic that includes making of changes into selected object. And in this business logic you know what changes you made for this object, and maybe can generate some event, eg PersonChangedEvent with old and new values of replaced fields. And code that requires diff info, can be subscribed on those events.