IP Library Granted Patent US 9,298,679
Granted Patent B2
US 9,298,679 · App. 13/790,285 · Granted Mar 29, 2016

System and method providing a binary representation of a web page

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,298,679
App. No.
13/790,285
Granted
Mar 29, 2016
Kind
B2
Abstract

Systems and methods for providing a binary representation of a web page. A server may compile a source page, such as a hypertext markup language (“HTML”) document, to create a compiled representation of the source page. Creation of a compiled representation may include generating a document object model (“DOM”) for the content associated with the source page. The compiled page may be transmitted to a client as a random-access file or flat file, where the data is encoded in one or more data types other than a string representation. The client may receive the compiled page and load the compiled page directly as a DOM for the page without the need to parse HTML text strings. The server and client may reconcile the data format of the compiled page, such as by exchanging or verifying a compiler dictionary associated with the page.

Claims (43)

1. A computer-implemented method for providing a binary representation of a web page, the method comprising:

parsing a web page source document, using a processor, to identify one or more page elements, the source document comprising text that defines a web page, where the source document is written in hypertext markup language (“HTML”);

generating, with the processor, a binary representation corresponding to a document object model structure of a web page using the identified one or more page elements, the binary representation including a conversion of a type of each page element, syntax information of each page element, and the one or more page elements to a format other than plain text, wherein the binary representation is generated using a binary representation dictionary, the binary representation dictionary defining at least one binary instruction corresponding to each of the one or more page elements; and

providing the binary representation such that, in response to a request from a client device, the binary representation is provided to the client device to render the web page without parsing the web page source document.

2. The method of claim 1 , wherein the binary representation includes a datum identifying a version of the binary representation dictionary.

3. The method of claim 1 , wherein the binary representation is provided incrementally.

4. A computer-implemented method, the method comprising:

parsing a web page source document, using a processor, to identify one or more page elements, the source document comprising text that defines a web page, where the source document is written in hypertext markup language (“HTML”);

generating, with the processor, a binary representation corresponding to a document object model structure of a web page using the identified one or more page elements, the binary representation including a conversion of a type of each page element, syntax information of each page element, and the one or more page elements to a format other than plain text, wherein the binary representation includes a tree structure, and each of the one or more page elements is a node in the tree structure; and

providing the binary representation such that, in response to a request from a client device, the binary representation is provided to the client device to render the web page without parsing the web page source document.

5. A computer-implemented method, the method comprising:

parsing a web page source document, using a processor, to identify one or more page elements, the source document comprising text that defines a web page, where the source document is written in hypertext markup language (“HTML”);

generating, with the processor, a binary representation corresponding to a document object model structure of a web page using the identified one or more page elements, the binary representation including a conversion of a type of each page element, syntax information of each page element, and the one or more page elements to a format other than plain text, wherein the binary representation is associated with a version identifier, and the method further comprises:

determining if the web page source document has changed since the binary representation was generated using the version identifier, and

generating a new binary representation using the web page source document if the web page source document has changed since the binary representation was generated; and

providing the binary representation such that, in response to a request from a client device, the binary representation is provided to the client device to render the web page without parsing the web page source document.

6. The method of claim 5 , wherein the version identifier is at least one of a time stamp or a hash value.

7. A computer-implemented method for processing a web page received in a binary representation, the method comprising:

receiving a web page in a binary representation, the binary representation defining a type of each page element, syntax information of each page element, and a document object model of the web page, the document object model defining one or more hypertext markup language (“HTML”) page elements as including at least a pair of an integer value and one or more attributes associated with the integer value;

rendering the web page, using a processor, by processing the binary representation, the structure of the web page defined by the document object model; and

reconciling a first binary representation dictionary version used in rendering the web page with a second binary representation dictionary version used in compiling the web page.

8. The method of claim 7 , further comprising rendering the web page only when the first binary representation dictionary version is greater than or equal to the second binary representation dictionary version.

9. The method of claim 7 , further comprising requesting an updated binary representation dictionary when the first binary representation dictionary version is not greater than or equal to the second binary representation dictionary version.

10. A computer-implemented method, the method comprising:

receiving a web page in a binary representation, the binary representation defining a document object model of the web page, the document object model defining one or more hypertext markup language (“HTML”) page elements as including at least a pair of an integer value and one or more attributes associated with the integer value, wherein the binary representation comprises a tree structure defining the document object model and the one or more page elements, the binary representation is received incrementally, and the method further comprises requesting data corresponding to the one or more page elements as each page element is rendered; and

rendering the web page, using a processor, by processing the binary representation, the structure of the web page defined by the document object model.

11. A processing system for providing a binary representation of a web page, the processing system comprising:

a memory for storing a web page source document and a binary representation of the web page source document; and

at least one processor coupled to the memory, the at least one processor configured to:

parse the web page source document to identify one or more page elements, the web page source document comprising text that defines a web page, where the source document is written in hypertext markup language (“HTML”);

generate a binary representation corresponding to a document object model of a web page using the identified one or more page elements, the binary representation including a conversion of a type of each page element, syntax information of each page element, and the one or more page elements to a format other than plain text, wherein the binary representation is generated using a binary representation dictionary, the binary representation dictionary defining at least one binary instruction corresponding to each of the one or more page elements; and

provide the binary representation such that, in response to a request from a client device, the binary representation may be provided to the client device to render the web page without parsing the web page source document.

12. The processing system of claim 11 , wherein the binary representation includes a datum identifying a version of the binary representation dictionary.

13. The processing system of claim 12 , wherein the binary representation further comprises cascading style sheet information associated with the web page.

14. A processing system for providing a binary representation of a web page, the processing system comprising:

a memory for storing a web page source document and a binary representation of the web page source document; and

at least one processor coupled to the memory, the at least one processor configured to:

parse the web page source document to identify one or more page elements, the web page source document comprising text that defines a web page, where the source document is written in hypertext markup language (“HTML”);

generate a binary representation corresponding to a document object model of a web page using the identified one or more page elements, the binary representation including a conversion of a type of each page element, syntax information of each page element, and the one or more page elements to a format other than plain text, wherein the binary representation is associated with a version identifier, and the method further comprises:

determining if the web page source document has changed since the binary representation was generated using the version identifier, and

generating a new binary representation using the web page source document if the web page source document has changed since the binary representation was generated; and

providing the new binary representation such that, in response to a request from a client device, the new binary representation may be provided to the client device to render the web page without parsing the web page source document.

15. The method of claim 14 , wherein the version identifier is at least one of a time stamp or a hash value.

Assignments (1)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044566/0657 →