Client–server architecture coordinates shared editing through a central server. Each collaborator’s device sends changes to the server, which broadcasts accepted changes to the other devices so their content stays synchronized. section 10.1
A collaborative editing flow typically works as follows:
- A collaborator edits local content, usually producing a small change such as a few keystrokes. section 10.1
- The client sends the change immediately to the central server. section 10.1
- The server checks the change against current content before broadcasting it. section 10.1
- When changes conflict, the server keeps the change received first, rolls back the other collaborator’s change, and lets it be redone. section 10.1
Shared document editing
Two collaborators edit the same document from separate devices. Network latency allows both to edit before receiving the other’s update; the server detects the conflict, broadcasts only the winning change, and rolls back the losing edit. section 10.1
{
"changeType": "valueUpdate",
"objectID": "<ID>",
"propertyName": "name",
"newValue": "bar",
"oldValue": "foo"
}
A structured change record can carry the change type, object identifier, property name, new value, and old value. section 10.1




