Client server conversion for representing hierarchical data structures
First Claim
1. A method for representing a hierarchical data structure at a server, as a tree on a client, comprising the steps of:
- receiving, from a client having a processor and a browser application executing thereon, requests to access or display a hierarchical data structure at a server within a session;
providing, to the client, a rendering module for use by the client,wherein the rendering module is configured for each different type of client according to the different type or capabilities of the client, andwherein the rendering module receives, during the session, information from the server defining a current state of a tree representing the hierarchical data structure at the server, including one or more nodes therein;
generating an instance of a tree state manager, which manages the state of a tree for the client during the session;
determining, using the tree state manager at the server, in response to receiving the requests from the client, the current state of the tree representing the hierarchical data structure, and generating information defining the current state of the tree;
transmitting the information defining the current state of the tree, in an object format, from the server to the client;
receiving, at the client, the information defining the current state of the tree;
using the rendering module at the client to convert the information from the object format to a script format representing the hierarchical data structure at the server and including the current state of the tree, according to the capabilities of the client;
executing the script, as converted, in the client'"'"'s browser application, to display the current state of the tree;
subsequently receiving from the client, further requests to access or display additional nodes, or to expand, collapse or zoom nodes in the hierarchical data structure at the server; and
determining, using the tree state manager at the server, in response to receiving the further requests from the client, a new state of the tree representing the hierarchical data structures, generating further information defining the new state of the tree, and transmitting the further information to the client, for use by the client during the session in displaying an updated representation of the hierarchical data structure in the client'"'"'s browser application.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for the creation of trees for representing hierarchical data structures are provided. Trees are created on a server, with the tree having nodes that are associated with paths on a server. Each node is associated with a resource locator indicating data that can be accessed through the tree. A tree manager module generates a state of a tree that is then rendered on a client browser for access by a user. Embodiments of the present invention generate a rendering module that is transmitted to a client for use. The rendering module receives tree information from the server, from which it generates javascript that renders the tree on a client web browser. The present invention is advantageous as it allows customizable client-based rendering of tree structures while utilizing well-known mechanisms for creating trees.
100 Citations
17 Claims
-
1. A method for representing a hierarchical data structure at a server, as a tree on a client, comprising the steps of:
-
receiving, from a client having a processor and a browser application executing thereon, requests to access or display a hierarchical data structure at a server within a session; providing, to the client, a rendering module for use by the client, wherein the rendering module is configured for each different type of client according to the different type or capabilities of the client, and wherein the rendering module receives, during the session, information from the server defining a current state of a tree representing the hierarchical data structure at the server, including one or more nodes therein; generating an instance of a tree state manager, which manages the state of a tree for the client during the session; determining, using the tree state manager at the server, in response to receiving the requests from the client, the current state of the tree representing the hierarchical data structure, and generating information defining the current state of the tree; transmitting the information defining the current state of the tree, in an object format, from the server to the client; receiving, at the client, the information defining the current state of the tree; using the rendering module at the client to convert the information from the object format to a script format representing the hierarchical data structure at the server and including the current state of the tree, according to the capabilities of the client; executing the script, as converted, in the client'"'"'s browser application, to display the current state of the tree; subsequently receiving from the client, further requests to access or display additional nodes, or to expand, collapse or zoom nodes in the hierarchical data structure at the server; and determining, using the tree state manager at the server, in response to receiving the further requests from the client, a new state of the tree representing the hierarchical data structures, generating further information defining the new state of the tree, and transmitting the further information to the client, for use by the client during the session in displaying an updated representation of the hierarchical data structure in the client'"'"'s browser application. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A machine readable storage medium having instructions stored thereon that when executed by a processor cause a system to:
-
receive, from a client having a processor and a browser application executing thereon, requests to access or display a hierarchical data structure at a server within a session; provide, to the client, a rendering module for use by the client, wherein the rendering module is configured for each different type of client according to the different type or capabilities of the client, and wherein the rendering module receives, during the session, information from the server defining a current state of a tree representing the hierarchical data structure at the server, including one or more nodes therein; generate an instance of a tree state manager, which manages the state of a tree for the client during the session; determine, using the tree state manager at the server, in response to receiving the requests from the client, the current state of the tree representing the hierarchical data structure, and generating information defining the current state of the tree; transmit the information defining the current state of the tree, in an object format, from the server to the client; receive, at the client, the information defining the current state of the tree; use the rendering module at the client to convert the information from the object format to a script format representing the hierarchical data structure at the server and including the current state of the tree, according to the capabilities of the client; execute the script, as converted, in the client'"'"'s browser application, to display the current state of the tree; subsequently receive from the client, further requests to access or display additional nodes, or to expand, collapse or zoom nodes in the hierarchical data structure at the server; and determine, using the tree state manager at the server, in response to receiving the further requests from the client, a new state of the tree representing the hierarchical data structures, generating further information defining the new state of the tree, and transmitting the further information to the client, for use by the client during the session in displaying an updated representation of the hierarchical data structure in the client'"'"'s browser application. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A system for representing a hierarchical data structure at a server as a tree on a client comprising:
-
a client having a processor and a browser application executing thereon, for sending requests to access or display a hierarchical data structure at a server; a server for providing to the client a rendering module for use by the client during a session, wherein the rendering module is configured for each different type of client according to the different type of capabilities of the client, and wherein the rendering module receives, during the session, information from the server defining a current state of a tree representing the hierarchical data structure at the server, including one or more nodes therein; wherein the client and server are configured to generate an instance of a tree state manager, which manages the state of a tree for the client during the session; determine, using the tree state manager at the server, in response to receiving the requests from the client, the current state of the tree representing the hierarchical data structure, and generating information defining the current state of the tree; transmit the information defining the current state of the tree, in an object format, from the server to the client; receive, at the client, the information defining the current state of the tree; use the rendering module at the client to convert the information from the object format to a script format representing the hierarchical data structure at the server and including the current state of the tree, according to the capabilities of the client; execute the script, as converted, in the client'"'"'s browser application, to display the current state of the tree; subsequently receive from the client, further requests to access or display additional nodes, or to expand, collapse or zoom nodes in the hierarchical data structure at the server; and determine, using the tree state manager at the server, in response to receiving the further requests from the client, a new state of the tree representing the hierarchical data structures, generating further information defining the new state of the tree, and transmitting the further information to the client, for use by the client during the session in displaying an updated representation of the hierarchical data structure in the client'"'"'s browser application. - View Dependent Claims (14, 15, 16, 17)
-
Specification