Shared state manager and system and method for collaboration
First Claim
Patent Images
1. A shared state manager (SSM) for collaboration, said shared state manager comprising:
- a storage device for storing a shared state object (SSO) comprising an abstract representation of a shared state of data which is shared by a plurality of clients which are authorized to edit the data, the abstract representation identifying the plurality of clients and their privileges;
an updating module for updating the shared state of data by updating the abstract representation of the shared state based on a request to edit said data made by a client in the plurality of clients; and
a notifying module for, upon said updating said shared state, notifying another client in the plurality of clients of said updated shared state,wherein the updating module separates formatting information and content in the shared state of data, and the abstract representation comprises the formatting information, the content, and semantic information which describes a meaning of the content, andwherein the abstract representation comprises an abstract tree representation, and the semantic information is associated with a subtree of the shared state of data and is inherited by subnodes within the subtree.
2 Assignments
0 Petitions
Accused Products
Abstract
A shared state manager (SSM) for collaboration includes an updating module for updating a shared state of data based on a request to edit the data made by a client, and a notifying module for, upon the updating the shared state, notifying another client of the updated state.
-
Citations
26 Claims
-
1. A shared state manager (SSM) for collaboration, said shared state manager comprising:
-
a storage device for storing a shared state object (SSO) comprising an abstract representation of a shared state of data which is shared by a plurality of clients which are authorized to edit the data, the abstract representation identifying the plurality of clients and their privileges; an updating module for updating the shared state of data by updating the abstract representation of the shared state based on a request to edit said data made by a client in the plurality of clients; and a notifying module for, upon said updating said shared state, notifying another client in the plurality of clients of said updated shared state, wherein the updating module separates formatting information and content in the shared state of data, and the abstract representation comprises the formatting information, the content, and semantic information which describes a meaning of the content, and wherein the abstract representation comprises an abstract tree representation, and the semantic information is associated with a subtree of the shared state of data and is inherited by subnodes within the subtree. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A system for collaboration, comprising:
-
a plurality of clients which are authorized to edit data; and a server connected to a network, said server comprising; a shared state manager (SSM) for collaboration, said SSM being accessible by said plurality of clients and comprising; a storage device for storing a shared state object (SSO) comprising an abstract representation of a shared state of the data which is shared by the plurality of clients, the abstract representation identifying the plurality of clients and their editing privileges; an updating module for updating the shared state of data by updating the abstract representation of the shared state based on a request to edit said data made by a client in the plurality of clients; and a notifying module for, upon said updating said shared state, notifying another client in the plurality of clients of said updated shared state, wherein the updating module separates formatting information and content in the shared state of data, and the abstract representation comprises the formatting information, the content, and semantic information which describes a meaning of the content, and wherein the abstract representation comprises an abstract tree representation, and the semantic information is associated with a subtree of the shared state of data and is inherited by subnodes within the subtree. - View Dependent Claims (17, 18)
-
-
19. A method of collaboration, comprising:
-
storing a shared state object (SSO) comprising an abstract representation of a shared state of data which is shared by a plurality of clients which are authorized to edit the data, the abstract representation identifying the plurality of clients and their privileges; updating the shared state of data by updating the abstract representation of the shared state based on a request to edit said data made by a client in the plurality of clients; and upon said updating said shared state, notifying another client in the plurality of clients of said updated shared state, wherein the updating of the shared state of data comprises separating formatting information and content in the shared state of data, and the abstract representation comprises the formatting information, the content, and semantic information which describes a meaning of the content, and wherein the abstract representation comprises an abstract tree representation, and the semantic information is associated with a subtree of the shared state of data and is inherited by subnodes within the subtree. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A non-transitory programmable storage medium tangibly embodying a program of machine-readable instructions executable by a digital processing apparatus to perform a method of collaboration, said method comprising:
-
storing a shared state object (SSO) comprising an abstract representation of a shared state of data which is shared by a plurality of clients which are authorized to edit the data, the abstract representation identifying the plurality of clients and their privileges; updating the shared state of data by updating the abstract representation of the shared state based on a request to edit said data made by a client in the plurality of clients; and upon said updating said shared state, notifying another client in the plurality of clients of said updated shared state, wherein the updating of the shared state of data comprises separating formatting information and content in the shared state of data, and the abstract representation comprises the formatting information, the content, and semantic information which describes a meaning of the content, and wherein the abstract representation comprises an abstract tree representation, and the semantic information is associated with a subtree of the shared state of data and is inherited by subnodes within the subtree.
-
-
26. A method of deploying computing infrastructure in which computer-readable code is integrated into a computing system, such that said code and said computing system combine to perform a method of collaboration, said method of collaboration comprising:
-
storing a shared state object (SSO) comprising an abstract representation of a shared state of data which is shared by a plurality of clients which are authorized to edit the data, the abstract representation identifying the plurality of clients and their privileges; updating the shared state of data by updating the abstract representation of the shared state based on a request to edit said data made by a client in the plurality of clients; and upon said updating said shared state, notifying another client in the plurality of clients of said updated shared state, wherein the updating of the shared state of data comprises separating formatting information and content in the shared state of data, and the abstract representation comprises the formatting information, the content, and semantic information which describes a meaning of the content, and wherein the abstract representation comprises an abstract tree representation and the semantic information is associated with a subtree of the shared state of data and is inherited by subnodes within the subtree.
-
Specification