Transaction object annotations are used for attaching additional user defined data to a transaction. This is sometimes useful, because the transaction system only remembers changes that are serializable on theUObjectthat a modification was performed on, but it does not see other changes that may have to be remembered in order to properly restore the object internals.