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 determining exact position of each content element within said Web page, and said browsing means creating a compressed stream containing said visible information and the position information of each of said content elements;
(b) providing client browsing means on a client system for accepting a compressed stream representing display pages, said stream comprising at least text and images found in said web page and position information for each content element found in said web page, wherein said text is accumulated into a string on said server and sent to said client in compressed form; 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 position 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.
27 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 determining exact position of each content element within said Web page, and said browsing means creating a compressed stream containing said visible information and the position information of each of said content elements; (b) providing client browsing means on a client system for accepting a compressed stream representing display pages, said stream comprising at least text and images found in said web page and position information for each content element found in said web page, wherein said text is accumulated into a string on said server and sent to said client in compressed form; 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 position 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 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 determines exact position of each content element within said Web 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, said view tree and position information for each content element found in said web page; (b) providing client browsing means on a client system for accepting said 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, said view tree and said position information. - 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 determining exact position of each content element within said Web page; wherein said browsing means creates a compressed stream containing said visible information and said position information; (b) client browsing means on a client system for accepting a compressed stream representing display pages said compressed stream comprising at least text and images found in said web page and said position information, wherein said text and position information is accumulated into a string on said server and sent to said client in compressed form; 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 position 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 determines exact position of each content element within said Web 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, said view tree and position information for each content element found in said web page; (b) client browsing means on a client system for accepting said 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, said view tree and said position information. - 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 determining exact position of each content element within said Web page; and said browsing means creating a compressed stream containing said visible information and the position information; (b) providing client browsing means on a client system for accepting a compressed stream representing display pages said compressed stream comprising at least text and images found in said web page and said position information, wherein said text is accumulated into a string on said server and sent to said client in compressed form; 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 position 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 determines exact position of each content element within said Web 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, said view tree and position information for each content element found in said web page; (b) providing client browsing means on a client system for accepting said 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, said view tree and said position information. - View Dependent Claims (30, 31, 32, 33)
-
Specification