Synchronisation problems, though diverse, can be categorized into distinct classes. For example, collaborative document editing often involves complex merging of multiple XML documents, with rule sets such as “mark conflicting edits for manual attention but accept all other edits” – a different rule set would typically be used in translation, synchronising Original English, Modified English and Original Japanese texts.
In practice the execution of this merge, while falling into clear categories, is different in each case, leading to the need to express and formalise rule sets. Thus, there being a need for a general synchronisation grammar which can describe synchronization rule sets.