GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
While working on #569 I noticed that data\Entity and data\entity\Document are not in sync, eg Document has an __unset where Entity does not. There is no docblock indicating this is by design. On entity __unset can be used to reset to default values if there is a corresponding data, otherwise unset may indeed be called.
This would be confusing, as the unset() implementation you're suggesting for Entity would mean something fundamentally different than for Document. However, I'm not opposed to a method implemented in Entity that would revert changes, or optionally reload the data from the data store.