State-Based Revision Records for Document Collaboration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Document collaboration systems face challenges in scaling logical complexity while maintaining rapid change propagation, as existing approaches either result in poor scaling or inadequate change propagation.
Innovation Solution
The implementation of state-based revisions in document collaboration systems, where a state-based revision record with a header and body section is created and transmitted, allowing for rapid change propagation by describing the type of object edited and its modified state, and enabling operational transforms for consistency maintenance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If operational transformation is used to merge small custom records with changes from other clients, then rapid change propagation is achieved, but the system's logical complexity scales poorly with complex documents and voluminous operations
Solution Approach 1:
The document is segmented into discrete editable objects (text, images, tables, etc.), each with a unique identifier. Instead of tracking changes at the character or word level, the system segments changes into object-level operations, reducing the volume of operations that need to be transformed and propagated across clients.
Solution Approach 2:
The patent introduces an intermediary data structure called a state-based revision (SBR) record that acts as a mediator between local edits and remote propagation. The SBR record captures the before and after states of edited objects, allowing the system to propagate changes without requiring complex operational transformation logic for every individual operation.
2Device complexity
If an entire new copy of the document is sent to a receiving client for change detection, then scaling of system logical complexity is achieved, but rapid change propagation is not provided
Solution Approach 1:
The patent extracts only the essential change information from the full document state by creating SBR records that contain only the header (object type, object ID, state description) and body (modified state) of edited objects. This extracted change data is then propagated to clients, eliminating the need to transmit or process entire document copies while maintaining the ability to handle complex documents.
3Productivity
If small custom records are merged through operational transformation, then rapid change propagation is achieved, but scalability with voluminous operations is poor
Solution Approach 1:
The patent merges multiple small custom records into a single state-based revision record that consolidates changes to one or more editable objects. Instead of propagating and transforming numerous individual operation records, the system merges them into SBR records that represent the net state change, significantly reducing the volume of data that needs to be propagated and processed across the collaboration system.
Data Source
AI summary
The present disclosure provides methods, systems, and computer products for providing state-based revisions in a document collaboration system. In some aspects, a plurality of users may be simultaneously editing the same document on their respective computing devices. The document may comprise a plurality of editable objects having unique objects identifiers. In such aspects, when a user edits an object in a local version of the document, a state-based revision (“SBR”) record is created. The SBR is populated with information such as, information describing the type of object being edited, a descriptor that uniquely identifies the specific instance of the object being edited, a collection of common references that can be adjusted by the document collaboration engine and an opaque binary stream comprising the modified state of the edited object. The SBR record is then transmitted to one or more additional devices.


