Figure 1. Track Changes With XML DataSets.
The entire current version of the DataSet is stored. Every row in the current version is tagged as "new," "modified," or "unchanged." Any record that has "modified" status is also stored in a "before" copy of the DataSet. A copy of all deleted records is stored in the "before" version of the DataSet.