IP Library Granted Patent US 7,703,010
Granted Patent B2
US 7,703,010 · App. 12/154,680 · Granted Apr 20, 2010

Systems and methods for dynamic document generation

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 7,703,010
App. No.
12/154,680
Granted
Apr 20, 2010
Kind
B2
Abstract

Dynamic web page generation is optimized by reducing the processing overhead required to parse the web page HTML code for tokens and insert dynamic content. Using the invention, an HTML file for a dynamic web page need be read and parsed only once throughout the life of the server. A software object parses the HTML, decomposes the page into constituent pieces and saves them to data structures as byte streams, which are cached, along with the software object, rendering multiple disk accesses unnecessary when the page is reconstituted. For subsequent requests, the dynamic page is created from the cached version, which is shareable across users and across requests. The optimization reduces server resource usage for dynamic page generation to near zero. The invention is also applicable to other documents combining static and dynamic content that require composition tools for editing.

Claims (25)

1. A computer-implemented method for electronically creating a template for generating a computer readable document incorporating static and dynamic content on a server, the method comprising:

parsing a template for a computer readable document by a processor of a server, the template including one or more portions of static content and one or more placeholders corresponding to one or more portions of dynamic content, the parsing comprising deconstructing the template in order to separate the one or more portions of static content and the one or more placeholders;

storing the one or more portions of static content and the one or more placeholders in one or more traversable data structures in memory of the server;

receiving, at the server, a request for the document from a client computer in communication with the server;

composing the document by the processor by traversing the one or more data structures to retrieve the one or more portions of dynamic content and to retrieve the one or more portions of static content; and

causing the document to be sent from the server to the client computer,

wherein the dynamic content comprises content received from the client computer.

2. A computer-implemented method for generating a computer readable file based on a set of instructions comprising:

providing a set of instructions on a server system for generating a computer readable file, the set of instructions including at least one static content portion and at least one reference to at least one dynamic content portion, the server system including at least one storage data structure;

separating the at least one static content portion of the set of instructions from the at least one reference to the at least one dynamic content portion of the set of instructions;

storing the at least one static content portion of the set of instructions and the at least one reference to the at least once dynamic content portion of the set of instructions in the at least one data storage structure of the server system; and

wherein the at least one dynamic content portion comprises content received from a client system.

3. The method of claim 2 , wherein the computer readable file comprises a document.

4. The method of claim 2 , wherein the computer readable file comprises a web page.

5. The method of claim 2 , wherein the set of instructions comprises a template.

6. The method of claim 2 , wherein the at least one reference comprise a plurality of placeholders and the at least one dynamic content portion comprises a plurality of dynamic content portions.

7. The computer-implemented method of claim 2 , further comprising:

receiving a request for the file from a client system in communication with the server system;

composing the file by traversing the one or more data structures to retrieve the at least one dynamic content portion and to retrieve the at least one static content portion; and

sending the file to the client system.

8. The computer-implemented method of claim 7 , further comprising storing a first software object and storing it in the at least one data storage structure of the server system, the first software object comprising instructions for performing the separating and the composing steps.

9. The computer-implemented method of claim 7 , wherein composing the file further comprises writing the at least one static content portion and the at least one dynamic content portion to an output stream so as to replace the at least one reference with the at least one dynamic content portion.

10. The computer-implemented method of claim 2 , first comprising storing the at least one dynamic content portion in a hash map.

11. The computer-implemented method of claim 2 , wherein the server system include a cache, and further comprising storing the at least one data storage structure in a cache of the server system.

12. The computer-implemented method of claim 2 , wherein one or more of the set of instructions and the file include HTML code.

Assignments (7)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058961/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2012
From: AOL INC.
To: FACEBOOK, INC.
Reel/Frame 028487/0304 →
CHANGE OF NAME Recorded Jun 1, 2012
From: AMERICA ONLINE, INC.
To: AOL LLC
Reel/Frame 028315/0456 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2012
From: BERNSTEIN, KEITH; KIEFFER, ROBERT
To: AMERICA ONLINE, INC.
Reel/Frame 028303/0992 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 16, 2010
From: BANK OF AMERICA, N A
To: AOL INC; AOL ADVERTISING INC; GOING INC; LIGHTNINGCAST LLC; MAPQUEST, INC; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC; TACODA LLC; TRUVEO, INC; YEDDA, INC
Reel/Frame 025323/0416 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2009
From: AOL LLC
To: AOL INC.
Reel/Frame 023720/0309 →
SECURITY AGREEMENT Recorded Dec 14, 2009
From: AOL INC.; AOL ADVERTISING INC.; BEBO, INC.; ICQ LLC; GOING, INC.; LIGHTNINGCAST LLC; MAPQUEST, INC.; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC.; TACODA LLC; TRUVEO, INC.; YEDDA, INC.
To: BANK OF AMERICAN, N.A. AS COLLATERAL AGENT
Reel/Frame 023649/0061 →