Patent ID: 8825758

Claim:
An authoring system for editing a first user copy of a document on a user device, the first user copy being generated based on a master copy of the document, the authoring system comprising: a processing unit; a local cache stored on the user device, the local cache including a store cache and an upload cache; an authoring application configured to execute on the user device, the authoring application being configured to edit the first user copy of the document, the authoring application being adapted to be selectively configured into an operating mode selected from the group consisting of a public operating mode and a private operating mode, the authoring application being configured to generate metadata updates based on edits made to the first user copy of the document and to generate content updates based on edits made to the first user copy of the document, the metadata updates including presence information indicating presence of a user at a data unit of the first user copy of the document, the metadata updates including at least one lock indicating that the user has locked at least one data unit of the first user copy of the document, the at least one lock being generated by the authoring application around the at least one data unit of the first user copy of the document, the lock inhibiting other authoring applications from editing the at least one data unit on any other user copy of the document, the data unit being visible on at least one other user copy of the document, the at least one data unit comprising a portion of the document, the portion of the document being less than an entirety of all data units within the document, the lock being associated with the at least one data unit, the lock allowing the other authoring applications to edit any data unit of the document not associated with the lock; a metadata sync module configured to synchronize the metadata updates between the first user copy of the document and the master copy of the document regardless of the mode of operation into which the authoring application is configured; a protect module configured to store the generated content updates into the store content cache of the local cache when the protect module receives instructions to store the document, the protect module also being further configured to store the generated content updates into the upload cache when the generated content updates are stored into the store cache if the authoring application is configured into the public operating mode; and a publish module configured to share the content updates stored in the upload cache with the master copy of the document, wherein sharing the content updates with the master copy of the document integrates the content updates into the master copy.