СОВМЕСТНАЯ АВТОРСКАЯ ПОДГОТОВКА ДОКУМЕНТА

1. Способ обеспечения совместного редактирования документа (2010) между первым пользователем на первом компьютерном устройстве (110, 810, 910, 1010) и по меньшей мере одним другим пользователем, содержащий этапы, на которых:
осуществляют доступ к пользовательской копии (155) документа на первом компьютерном устройстве (110, 810, 910, 1010), включая доступ к содержимому (152) документа и доступ к метаданным (154, 1011), ассоциированным с документом, причем содержимое (152) документа организовано в блоки данных (410-450);
периодически принимают обновления метаданных от устройства (120, 820, 1020) хранения, причем обновления метаданных включают в себя любые блокировки в отношении блоков данных (410-450) документа, которые ассоциированы с другим пользователем;
реализуют принятые обновления метаданных автоматически, при этом сохраняют блокировки в отношении блоков данных (410-450) документа с метаданными (154, 1011), ассоциированными с документом, при этом сохранение блокировок с метаданными, ассоциированными с документом, препятствует редактированию первым пользователем любых блоков данных, которые имеют блокировки, ассоциированные с другим пользователем; и
периодически принимают обновления содержимого от устройства (120, 820, 1020) хранения, причем обновления содержимого включают в себя любые модификации, выполненные в содержимом (152) документа другим пользователем.
2. Способ по п.1, в котором при осуществлении доступа к пользовательской копии документа в первом компьютерном устройстве:
получают от устройства хранения загружаемую копию документа, указывающую мастер-состояние документа;
формируют базовую копию и пользовательскую копию документа на основе загружаемой копии;
загружают из устройства хранения метаданные, ассоциированные с документом; и
сохраняют метаданные на первом вычислительном устройстве.
3. Способ по п.1, в котором при приеме обновлений содержимого периодически от пользовательского компьютерного устройства извлекают загружаемую копию документа из устройства хранения, при этом загружаемая копия указывает мастер-состояние документа.
4. Способ по п.3, дополнительно содержащий этап, на котором реализуют принятые обновления содержимого, только когда получена инструкция от первого пользователя, включая объединение извлеченной загружаемой копии документа с пользовательской копией документа.
5. Способ по п.1, дополнительно содержащий этапы, на которых:
принимают в первом компьютерном устройстве указание редактирования одного из блоков данных документа первым пользователем;
обновляют метаданные, сохраненные на первом компьютерном устройстве, чтобы блокировать блок данных, редактируемый первым пользователем, при этом блокировка блока данных связывает блок данных с первым пользователем; и
автоматически передают устройству хранения обновление метаданных на основе обновленных метаданных, сохраненных на первом компьютерном устройстве.
6. Способ по п.5, дополнительно содержащий этап, на котором:
передают устройству хранения обновление содержимого, указывающее модификации, выполненные в блоке данных, отредактированном первым пользователем, только когда инструкции на передачу обновления содержимого приняты от первого пользователя.
7. Способ по п.6, в котором при передаче обновления содержимого устройству хранения:
принимают инструкции от первого пользователя на передачу обновления содержимого в устройство хранения;
реализуют любые обновления содержимого, принятые ранее от устройства хранения, в пользовательской копии документа;
формируют выгружаемую копию документа на основе пользовательской копии документа, включающую в себя любые реализованные обновления содержимого; и
передают выгружаемую копию документа в устройство хранения.
8. Способ по п.7, в котором при приеме инструкций от первого пользователя на передачу обновления содержимого в устройство хранения принимают инструкции от первого пользователя на сохранение документа на первом вычислительном устройстве.
9. Способ по п.1, в котором при периодическом приеме обновлений метаданных от устройства хранения принимают информацию о присутствии, указывающую идентификационные данные других пользователей, которые выбраны из группы, состоящей из пользователей, осуществляющих доступ к документу, и пользователей, ассоциированных с блокировками, сохраненными в метаданных, ассоциированных с документом.
10. Среда авторской подготовки, реализованная на первом компьютерном устройстве (110, 810, 910, 1010), чтобы обеспечивать возможность совместной авторской подготовки документа между пользователями, при этом первое компьютерное устройство сконфигурировано осуществлять связь, по меньшей мере, с устройством (120, 820, 1020) хранения, при этом среда совместной авторской подготовки содержит:
a. кэш (814, 926, 1014, 1214, 1234), выполненный с возможностью хранить базовую копию (1013) документа, загружаемую копию (1019) документа, выгружаемую копию (1017) документа, рабочую копию (1015) документа и таблицу (500) блокировок;
b. приложение (812, 924, 1012) авторской подготовки, выполненное с возможностью манипулировать рабочей копией (1015) документа, включая манипулирование содержимым (152) рабочей копии и манипулирование метаданными (154, 1011) рабочей копии (1015);
c. сопрягающий объект (816, 1016), который предоставляет интерфейс между приложением (812, 924, 1012) авторской подготовки и кэшем (814, 926, 1014, 1214, 1234), при этом сопрягающий объект (816, 1026) сконфигурирован обновлять таблицу (500) блокировок, сохраненную в кэше (814, 926, 1014, 1214, 1234), автоматически обновленными метаданными, когда приложение авторской подготовки манипулирует метаданными рабочей копии (1015), причем сопрягающий объект также сконфигурирован формировать выгружаемую копию (1017) документа на основе рабочей копии документа, когда инструкции на формирование выгружаемой копии приняты от приложения авторской подготовки, при этом выгружаемая копия включает в себя обновления содержимого, полученные из загружаемой копии (1019) документа; и
d. менеджер (818, 1018) синхронизации, сконфигурированный управлять взаимодействиями между кэшем (814, 926, 1014, 1214, 1234) и устройством (120, 820, 1020) хранения, при этом менеджер синхронизации сконфигурирован принудительно отправлять обновленные метаданные из таблицы блокировок в устройство хранения автоматически и сконфигурирован принудительно передавать выгружаемую копию (1017) документа из кэша в устройство хранения, когда инструкции на предоставление обновлений в отношении содержимого приняты от приложения авторской подготовки.
11. Среда авторской подготовки по п.10, в которой менеджер синхронизации также выполнен с возможностью получать любую обновленную загружаемую копию периодически от устройства хранения и сохранять обновленную загружаемую копию в кэше первого компьютерного устройства; при этом обновленная загружаемая копия включает в себя обновления содержимого, сформированные другими пользователями.
12. Среда авторской подготовки по п.11, в которой приложение авторской подготовки предоставляет оповещения, указывающие, что обновленная загружаемая копия доступна для просмотра на первом компьютерном устройстве.
13. Среда авторской подготовки по п.11, в которой приложение авторской подготовки выполнено с возможностью принимать инструкции от пользователя приложения авторской подготовки на просмотр любых обновлений содержимого, содержащихся в обновленной загружаемой копии.
14. Среда авторской подготовки по п.10, в которой приложение авторской подготовки включает в себя приложение обработки текста.
15. Машиночитаемый носитель данных, хранящий машиноисполняемые инструкции, которыми при их исполнении компьютерным устройством осуществляется способ авторской подготовки документа, содержащий:
прием в первом приложении (812, 924, 1012) авторской подготовки инструкций на манипулирование первым блоком данных (410-450) документа, редактируемого посредством первого приложения авторской подготовки, причем первое приложение авторской подготовки используется первым пользователем и реализуется на первом компьютерном устройстве (110, 810, 910, 1010);
формирование блокировки содержимого на первом блоке данных (410-450) автоматически после приема инструкций на манипулирование путем связывания первого блока данных с первым пользователем в таблице (500) блокировок, причем таблица блокировок доступна множеству других приложений авторской подготовки, при этом только первый пользователь может манипулировать первым блоком данных, когда первый блок данных имеет блокировку содержимого;
манипулирование первым блоком данных (410-450) документа с помощью первого приложения авторской подготовки в соответствии с инструкциями на манипулирование; и
снятие блокировки содержимого на первом блоке данных (410-450), только когда инструкции на снятие блокировки содержимого предоставлены первому приложению авторской подготовки первым пользователем, при этом снятие блокировки содержимого содержит отвязывание первого блока данных от первого пользователя в таблице блокировок.
16. Машиночитаемый носитель данных по п.15, в котором способ дополнительно содержит:
расширение блокировки содержимого, чтобы охватывать дополнительные блоки данных, когда инструкции от первого пользователя на манипулирование дополнительными блоками данных, приняты первым приложением авторской подготовки, при этом расширение блокировки содержимого включает в себя связывание дополнительных блоков данных с первым пользователем в таблице блокировок.
17. Машиночитаемый носитель данных по п.15, в котором снятие блокировки на первом блоке данных содержит снятие блокировки на первом блоке данных, когда первый пользователь предоставляет первому приложению авторской подготовки указание того, что первый пользователь закончил корректировки в первом блоке данных.
18. Машиночитаемый носитель данных по п.15, в котором таблица блокировок сохранена на удаленном устройстве хранения, доступном другим приложениям авторской подготовки.
19. Машиночитаемый носитель данных по п.16, в котором способ дополнительно содержит:
автоматическую передачу любых обновлений блокировок в таблицу блокировок, сохраненную на устройстве хранения.
20. Машиночитаемый носитель данных по п.15, дополнительно содержащий:
извлечение обновлений в таблице блокировок из устройства хранения, причем обновления в таблице блокировок были сделаны по меньшей мере одним из других пользователей;
реализацию обновлений в таблице блокировок в документе автоматически.