Systems and methods for collaborative document editing
First Claim
1. A method for providing document services, the method comprising:
- receiving, at a server, a change to a first version of a document during a collaborative editing of the document by a plurality of users comprising a first user of a first user device and a second user of a second user device, wherein the server locally stores a first set of operational transformation rules;
determining that the first user device stores a second set of operational transformation rules;
in response to determining that the first user device stores the second set of operational transformation rules, transmitting the change to the first user device to cause the first user device to present a second version of the document during the collaborative editing of the document, the second version of the document including the change;
determining that the second user device does not store the second set of operational transformation rules and lacks capability to process the change to the document, wherein the second user device presents the first version that does not include the change, and the first user device presents the second version that includes the change during the collaborative editing;
in response to determining that the second user device does not store the second set of operational transformation rules, applying one of the first set of operational transformation rules stored by the server to the change to generate a transformed change capable of being processed by the second user device; and
transmitting the transformed change to the second user device to cause the second user device to apply the change to the first version of the document during the collaborative editing of the document.
2 Assignments
0 Petitions
Accused Products
Abstract
A collaborative development service manages a document that can be shared among multiple users. If multiple users are editing the document, the edits may need to have operational transformation rules applied thereon. The collaborative development service provides operational transformation rules to users of mobile devices that do not have copies of the operational transformation rules stored on their devices. When a change to the document is received by the collaborative development service, it is determined that a first user device has operational transformation capability. In response to determining that the first user device has operational transformation capability, the change is transmitted to the first user. The collaborative development service determines that a second user device does not have operational transformation capability and applies an operational transformation to the change to generate a transformed change. The transformed change is transmitted to the second user device.
-
Citations
20 Claims
-
1. A method for providing document services, the method comprising:
-
receiving, at a server, a change to a first version of a document during a collaborative editing of the document by a plurality of users comprising a first user of a first user device and a second user of a second user device, wherein the server locally stores a first set of operational transformation rules; determining that the first user device stores a second set of operational transformation rules; in response to determining that the first user device stores the second set of operational transformation rules, transmitting the change to the first user device to cause the first user device to present a second version of the document during the collaborative editing of the document, the second version of the document including the change; determining that the second user device does not store the second set of operational transformation rules and lacks capability to process the change to the document, wherein the second user device presents the first version that does not include the change, and the first user device presents the second version that includes the change during the collaborative editing; in response to determining that the second user device does not store the second set of operational transformation rules, applying one of the first set of operational transformation rules stored by the server to the change to generate a transformed change capable of being processed by the second user device; and transmitting the transformed change to the second user device to cause the second user device to apply the change to the first version of the document during the collaborative editing of the document. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A non-transitory computer readable medium having program instructions stored thereon, the instructions capable of execution by a processor and cause the processor to:
-
receive, at a server, a change to a first version of a document during a collaborative editing of the document by a plurality of users comprising a first user of a first user device and a second user of a second user device, wherein the server locally stores a first set of operational transformation rules; determine that a first user device stores a second set of operational transformation rules; in response to a determination that the first user device has operational transformation capability, transmit the change to the first user device to cause the first user device to present a second version of the document during the collaborative editing of the document, the second version of the document including the change; determine that a second user device does not store the second set of operational transformation rules and lacks capability to process the change to the document, wherein the second user device presents the first version that does not include the change, and the first user device presents the second version that includes the change during the collaborative editing; in response to a determination that the second user device does not store the second set of operational transformation rules, apply one of the first set of operational transformation rules stored by the server to the change to generate a transformed change capable of being processed by the second user device; and transmit the transformed change to the second user device to cause the second user device to apply the change to the first version of the document during the collaborative editing of the document. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A system for providing document services, the system comprising:
-
a memory; and a processor coupled to the memory, the processor configured to; receive a change to a first version of a document during a collaborative editing of the document by a plurality of users comprising a first user of a first user device and a second user of a second user device, wherein the memory locally stores a first set of operational transformation rules; determine that a first user device stores a second set of operational transformation rules; in response to a determination that the first user device has operational transformation capability, transmit the change to the first user device to cause the first user device to present a second version of the document during the collaborative editing of the document, the second version of the document including the change; determine that a second user device does not store the second set of operational transformation rules and lacks capability to process the change to the document, wherein the second user device presents the first version that does not include the change, and the first user device presents the second version that includes the change during the collaborative editing; in response to a determination that the second user device does not store the second set of operational transformation rules, apply one of the first set of operational transformation rules stored by the memory to the change to generate a transformed change capable of being processed by the second user device; and
transmit the transformed change to the second user device to cause the second user device to apply the change to the first version of the document during the collaborative editing of the document.
-
Specification