Patent ID: 8453052

Claim:
A computer-implemented method, comprising: receiving, at a server, a first user's changes to a first instance of a document the first user is editing on a first client and a second user's changes to a second instance of the document the second user is editing on a second client, the first instance of the document and the second instance of the document being concurrently open for editing; updating, at the server, a server instance of the document to reflect one or more of the first user's changes; then determining, at the server, that at least one of the second user's changes to the second instance of the document conflicts with the server instance of the document that was updated to reflect one or more of the first user's changes; then updating, at the server, the server instance of the document to reflect the second user's changes that do not conflict with the server instance; providing, to the second client, the server instance of the document reflecting the first user's changes and the second user's changes that do not conflict with the server instance that was updated to reflect the one or more of the first user's changes; and while the second instance of the document is still open for editing, notifying the second user of the at least one of the second user's changes to the second instance of the document that conflicted with the server instance of the document that was updated to reflect the first user's change and that is not reflected in the updated server instance of the document.