1. A computer-implemented method performed by a content management system, the method comprising: receiving, by the content management system from a first client device, a notification of a change to a content item stored on the first client device, the content item having a data format with data semantics unknown to the content management system, the notification of the change comprising an indication of a first semantic location of the change within the content item and an indication of a first version of the content item at a time of the change; determining, based on the indication of the first version of the content item, whether a second client device has already made a second change to the content item with respect to the first version of the content item; responsive to determining that the second client device has already made the second change, providing a notification of change rejection to the first client device, the notification of change rejection comprising an indication of a second semantic location of the second change within the content item, the indication of the second semantic location having been provided by the second client device; receiving a request from the second client device to receive changes to the content item; registering the second client device to receive changes to the content item; receiving from the first client device a notification of a third change resulting from the first client device combining the change and the second change, the notification of the third change comprising an indication of a third semantic location of the third change within the content item; and responsive to receiving the notification of the third change, providing a notification of the third change to the second client device.
1. A computer-implemented method performed by a content management system, the method comprising: receiving, by the content management system from a first client device, a notification of a change to a content item stored on the first client device, the content item having a data format with data semantics unknown to the content management system, the notification of the change comprising an indication of a first semantic location of the change within the content item and an indication of a first version of the content item at a time of the change; determining, based on the indication of the first version of the content item, whether a second client device has already made a second change to the content item with respect to the first version of the content item; responsive to determining that the second client device has already made the second change, providing a notification of change rejection to the first client device, the notification of change rejection comprising an indication of a second semantic location of the second change within the content item, the indication of the second semantic location having been provided by the second client device; receiving a request from the second client device to receive changes to the content item; registering the second client device to receive changes to the content item; receiving from the first client device a notification of a third change resulting from the first client device combining the change and the second change, the notification of the third change comprising an indication of a third semantic location of the third change within the content item; and responsive to receiving the notification of the third change, providing a notification of the third change to the second client device. 6. The computer-implemented method of claim 1 , wherein determining whether a second client device has stored a second change to the content item with respect to the first version of the content item comprises comparing a version indicator provided by the first client device along with the notification of the change, and a version indicator stored in association with the content item.