Server-based browser system
First Claim
1. A process for providing a server-based Web browser that interacts with a plurality of client device types, comprising the steps of:
- (a) providing browsing means on a server for accepting a Web page from a Web server, said browsing means comprising Web page layout means for laying out said Web page in a two-dimensional virtual page, said Web page layout means determining what information is visible on said virtual page, said Web page layout means calculating positioning of said visible information within said Web page, and said browsing means creating a compressed stream containing said visible information and the positioning information of said visible information;
(b) providing client browsing means on a client system for accepting compressed streams representing display pages; and
(c) providing means on said server for sending said compressed stream to said client browsing means;
wherein said client browsing means decompresses said compressed stream and displays said visible information using said positioning information.
8 Assignments
0 Petitions
Accused Products
Abstract
A server-based browser system provides a server-based browser and a client system browser. The client browser reports the position of a user click on its display screen, hotspot ID, or URL to the server-side browser which retrieves a Document Object Model (DOM) model and view tree for the client and finds the location on the Web page that the user clicked on using the coordinates or hotspot ID received from the client. If there is a script associated with the location, it is executed and the resulting page location is requested from the appropriate server. If there is a URL associated with the location, it is requested from the appropriate server. The response Web page HTML definition is parsed and a DOM tree model is created which is used to create a view tree model. The server-side browser retrieves a style sheet, layout algorithms, and device constraints for the client device and lays out the view model using them onto a virtual page and determines the visual content. Textual and positional information are highly compressed and formatted into a stream and sent to the client browser which decodes the stream and displays the page to the user using the textual and positional information.
104 Citations
33 Claims
-
1. A process for providing a server-based Web browser that interacts with a plurality of client device types, comprising the steps of:
-
(a) providing browsing means on a server for accepting a Web page from a Web server, said browsing means comprising Web page layout means for laying out said Web page in a two-dimensional virtual page, said Web page layout means determining what information is visible on said virtual page, said Web page layout means calculating positioning of said visible information within said Web page, and said browsing means creating a compressed stream containing said visible information and the positioning information of said visible information;
(b) providing client browsing means on a client system for accepting compressed streams representing display pages; and
(c) providing means on said server for sending said compressed stream to said client browsing means;
wherein said client browsing means decompresses said compressed stream and displays said visible information using said positioning information. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A process for providing a cross platform Web browser that interacts with a plurality of client device types, comprising the steps of:
-
(a) providing browsing means on a server for accepting a Web page from a Web server;
said step pf providing browsing means further comprising the sub-steps of;
parsing said Web page'"'"'s HTML code to create a Document Object Model (DOM) tree;
creating a view tree using said DOM tree;
providing Web page layout means for laying out said Web page in a two-dimensional virtual page;
wherein said Web page layout means determines what information is visible on said virtual page;
wherein said Web page layout means removes unnecessary structural information and retains visible information in said view tree; and
storing said DOM tree and said view tree on a storage device for said client system;
wherein said browsing means creates a compressed stream containing said DOM tree and said view tree;
(b) providing client browsing means on a client system for accepting compressed streams; and
(c) providing means on said server for sending said compressed stream to said client browsing means;
wherein said client browsing means decompresses said compressed stream and displays said visible information using said DOM tree and said view tree. - View Dependent Claims (8, 9, 10, 11)
-
-
12. An apparatus for a server-based Web browser that interacts with a plurality of client device types, comprising:
-
(a) browsing means on a server for accepting a Web page from a Web server, said browsing means further comprising Web page layout means for laying out said Web page in a two-dimensional virtual page, said Web page layout means determining what information is visible on said virtual page, and said Web page layout means calculating positioning of said visible information within said Web page;
wherein said browsing means creates a compressed stream containing said visible information and the positioning information of said visible information;
(b) client browsing means on a client system for accepting compressed streams representing display pages; and
(c) means on said server for sending said compressed stream to said client browsing means;
wherein said client browsing means decompresses said compressed stream and displays said visible information using said positioning information. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. An apparatus for a cross platform Web browser that interacts with a plurality of client device types, comprising:
-
(a) browsing means on a server for accepting a Web page from a Web server;
said browsing means further comprising;
a module for parsing said Web page'"'"'s HTML code to create a Document Object Model (DOM) tree;
a module for creating a view tree using said DOM tree;
Web page layout means for laying out said Web page in a two-dimensional virtual page;
wherein said Web page layout means determines what information is visible on said virtual page;
wherein said Web page layout means removes unnecessary structural information and retains visible information in said view tree; and
a module for storing said DOM tree and said view tree on a storage device for said client system;
wherein said browsing means creates a compressed stream containing said DOM tree and said view tree;
(b) client browsing means on a client system for accepting compressed streams;
(c) means on said server for sending said compressed stream to said client browsing means; and
wherein said client browsing means decompresses said compressed stream and displays said visible information using said DOM tree and said view tree. - View Dependent Claims (19, 20, 21, 22)
-
-
23. A program storage medium readable by a computer, tangibly embodying a program of instructions executable by the computer to perform method steps for a server-based Web browser that interacts with a plurality of client device types, comprising the steps of:
-
(a) providing browsing means on a server for accepting a Web page from a Web server, said browsing means providing Web page layout means for laying out said Web page in a two-dimensional virtual page, said Web page layout means determining what information is visible on said virtual page, said Web page layout means calculating positioning of said visible information within said Web page; and
said browsing means creating a compressed stream containing said visible information and the positioning information of said visible information;
(b) providing client browsing means on a client system for accepting compressed streams representing display pages; and
(c) providing means on said server for sending said compressed stream to said client browsing means;
wherein said client browsing means decompresses said compressed stream and displays said visible information using said positioning information. - View Dependent Claims (24, 25, 26, 27, 28)
-
-
29. A program storage medium readable by a computer, tangibly embodying a program of instructions executable by the computer to perform method steps for a cross platform Web browser that interacts with a plurality of client device types, comprising the steps of:
-
(a) providing browsing means on a server for accepting a Web page from a Web server;
said step of providing browsing means further comprising the sub-steps of;
parsing said Web page'"'"'s HTML code to create a Document Object Model (DOM) tree;
creating a view tree using said DOM tree;
providing Web page layout means for laying out said Web page in a two-dimensional virtual page;
wherein said Web page layout means determines what information is visible on said virtual page;
wherein said Web page layout means removes unnecessary structural information and retains visible information in said view tree; and
storing said DOM tree and said view tree on a storage device for said client system;
wherein said browsing means creates a compressed stream containing said DOM tree and said view tree;
(b) providing client browsing means on a client system for accepting compressed streams; and
(c) providing means on said server for sending said compressed stream to said client browsing means;
wherein said client browsing means decompresses said compressed stream and displays said visible information using said DOM tree and said view tree. - View Dependent Claims (30, 31, 32, 33)
-
Specification