From W3C Wiki
XML Memory and Change Tracking
Robin La Fontaine robin.lafontaine AT deltaxml.com
XML data is constantly changing - we are proposing a standard way to record the changes and encapsulate these in the XML document itself, providing a 'memory' of previous states or change tracking.
What do we mean by 'XML memory'?
- capture changes to an XML document within the document
- provide a memory of changes
- good for XML data and XML documents
What are the use cases?
- change tracking in documents using XML
- memory for data files in XML to roll-back or view changes
- executable audit trails
Why have a standard?
- easier for schema designers to access a standard than design bespoke change tracking
- easier for XML processors to understand generic way to handle memory/change tracking
- easier for XML editors to implement one way to handle change tracking
2. Overview of Proposal
(See  for further details)
Some design principles
- easy to get latest version: just ignore delta namespaces
- validation is for original schema, no need to validate changes
- capability to group changes
- capability to 'order' changes for dependencies
- Level 1 for basic, simple changes; Level 2 for more advanced changes preserving content
Level 1: intuitive and easy, not optimal
- add/delete elements and text
- add/delete/modify attributes
- sandbox demonstration here 
Level 2: allows structure changes round content
- add or remove elements without touching content
- split and merge elements
- move elements
- markup as normative encoding
- Processing Instruction encapsulation for XML editors
- external representation for updates and collaboration?
3. Questions for discussion
- what are other/new/possible use cases for this standard?
- what are implications for browsers?