A Multi-Versioning Scheme for Intention Preservation in Collaborative Editing Systems*
Although the multi-version approach to consistency maintenance has been widely discussed and implemented in database systems, version control systems, and asynchronous groupware systems, its potential in real-time groupware systems is largely unexplored. Intention preservation is an important aspect of consistency maintenance in real-time collaborative editing systems, where multiple users cooperate with each other by concurrently editing the same document. The multi-version approach is supposed to be able to preserve individual users’ concurrent conflicting intentions. In this article, we propose a new multi-versioning scheme that can preserve not only concurrent conflicting intentions but also contextual intentions while achieving convergence of the document under editing. By extending an existing multi-versioning scheme to a general one that specifies the conditions for convergence, we decouple the discussion of convergence from that of intention preservation. By constraining the general scheme, we arrive at the novel scheme that guarantees to preserve users’ intentions. The correctness of the scheme has been formally verified. The design of an algorithm for consistent version composition and identification has been discussed in detail.