# US 7,412,644 B2 · System and process for delivering and rendering scalable web pages

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,412,644 B2
- Document ID: US7412644B2
- Status: Granted
- Kind: B2
- Application number: 10/203,044
- Filed: 2001-01-31
- Published: 2004-09-09
- Granted: 2008-08-12
- Earliest claimed: 2001-01-31
- Assignees: AOL LLC, a Delaware Limited Liability Company
- Inventors: Robert Kieffer
- Web page: https://patentgrep.com/patent/US7412644B2

## CPC

- G06F 16/9577: {Optimising the visualization of content, e.g. distillation of HTML documents}
- G06F 40/103: Formatting, i.e. changing of presentation of documents (automatic justification G06F40/189; automatic line break hyphenation G06F40/191)
- G06F 40/143: Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A system and process for displaying and redisplaying an HTML document that conforms to the limitations of a viewer's browser. The system comprises a browser, a script, and a document object model (DOM). The script comprises a data structure and an interpretation code. The DOM is a document model representing a Web page's elements, such as text, images, URL links, etc. The process includes using the script to create a document data structure that describes the essential information in the document and using the interpretation code to interpret the data structure in a fashion that allows it to manipulate the DOM for the purpose of rendering the document in the browser. The data structure can be modified and the corresponding HTML can be subsequently regenerated in response to user events so that after initially being created, the document can be updated to reflect changes to the viewer's browser. if the viewer resizes the browser, the page elements can be automatically resized.

## Claims

### Claim 1

A system, tangibly stored on a computer-readable medium, for delivering and rendering scalable Web pages said system comprising:
a browser;
a script, which is associated with an interpretation code; and
a document object model;
wherein said script, when executed, creates a data structure that describes an entire web document created by a page author;
wherein said data structure comprises:
a root object;
wherein said root object comprises an array of slides and each said slide is an object representing a single slide in a presentation; and
wherein each said slide comprises a plurality of content entities and each said content entity has a variety of properties;
wherein said content entities comprise:
a text entity;
an outline entity; and
an image entity; wherein each said content entity comprises:
a plurality of attributes which collectively define the rectangle occupied by each said content entity;
an attribute to store each said content entity;
an attribute to indicate the name of each said content entity; and
an attribute to indicate the z-ordering of the layer entities in said slide; and
wherein said interpretation code interprets, said data structure in a fashion that allows said data structure to manipulate said document object model for the purpose of rendering said entire web document to said browser.

### Claim 2 (depends on 1)

The system of claim 1, wherein said browser may be any kind of Web browser that supports a scripting language with a means of modifying the contents of the displayed Web pages.

### Claim 3 (depends on 1)

The system of claim 1, wherein said data structure can be optimized to include only the essential information of said entire web document.

### Claim 4 (depends on 1)

The system of claim 1, wherein said data structure and said interpretation code may be contained in a single file.

### Claim 5 (depends on 1)

The system of claim 1, wherein said data structure may be separated out from said interpretation code.

### Claim 6 (depends on 1)

The system of claim 1, wherein said root object further comprises:
an array of strings that contains the titles of each said slide in said presentation.

### Claim 7 (depends on 1)

The system of claim 1, wherein said root object further comprises:
a first attribute, which is an index of the current slide in said presentation; a second attribute, which Is true for sample presentations;
a third attribute, which is true for style presentations;
a fourth attribute, which is true for template presentations;
a fifth attribute, which indicates the database ID of said presentation;
a sixth attribute, which indicates the total number of slides in said presentation; and
a seventh attribute, which indicates the type to which said object belongs.

### Claim 8 (depends on 1)

The system of claim 1, wherein each said slide further comprises:
a first attribute, which indicates the type of effect to use when showing said slide;
a second attribute, which indicates the name of the layout that said presentation is based on;
a third attribute, which is a set of user supplied notes for said slide;
a fourth attribute, which indicates the title of said slide; and
a fifth attribute, which indicates the type to which said slide belongs.

### Claim 9 (depends on 8)

The system of claim 8, wherein said first attribute comprises:
a first value, which is a set of slide elements to slide in from the right;
a second value, which is a set of slide elements to slide in from the left;
a third value, which is a set of slide elements to slide in from the bottom;
a fourth value, which is a set of slide elements to indicate slide in from the top;
a fifth value, which is a set of slide elements to flash briefly; and
a sixth value, which is a set of slide elements that reveals progressively on each mouse crick.

### Claim 10 (depends on 1)

The system of claim 1, wherein said text entity further comprises:
an attribute to define font point size;
an attribute to define font style;
an attribute to define font family;
an attribute to define font weight;
an attribute to define text color;
an attribute to define background color;
an attribute to define horizontal alignment;
an attribute to define vertical alignment; and
an attribute to define URL to navigate.

### Claim 11 (depends on 1)

The system of claim 1, wherein said outline entity inherits all the attributes of said text entity and further comprises:
an attribute to define the type of bullet;
an attribute to define the value specifying how said bullet should look like; and
an attribute to define an array of sub-outlines.

### Claim 12 (depends on 1)

The system of claim 1, wherein said image entity further comprises:
an attribute to define horizontal alignment;
an attribute to define background color;
an attribute to define the scaling mode to use when displaying said image;
an attribute to define URL of the image to display;
an attribute to define URL to navigate; and
an attribute to define vertical alignment.

### Claim 13 (depends on 12)

The system of claim 12, wherein said attribute to define the scaling mode to use when displaying said image comprises:
a fit value, with which said image is scaled to fit exactly within the bounds of said slide;
a width value, with which said image is scaled, retaining the aspect ratio, so that the width of said image fits exactly in the bounds of said slide;
a height value, with which said image is scaled, retaining the aspect ratio, so that the height of said image fits exactly in the bounds of said slide; and
a tile value, with which said image is tiled at said image's native size to exactly fill the image bounds.

### Claim 14 (depends on 12)

The system of claim 12, wherein said image entity comprises a background element, and wherein said background element always keeps its bounds corresponding to the bounds of said slide.

### Claim 15 (depends on 14)

The system of claim 14, wherein said background element always maintains its z-index at zero.

### Claim 16

A computer-implemented method for delivering and rendering scalable Web pages said method comprises the steps of:
creating, by executing a script, a data structure that describes an entire web document;
interpreting, by an interpretation code, said data structure in a fashion that allows said data structure to manipulate a document object model for the purpose of rendering said entire web document to a browser;
wherein said data structure comprises:
a root object;
wherein said root object comprises an array of slides and each said slide is an object representing a single slide in a presentation; and
wherein each said slide comprises a plurality of content entities and each said content entity has a variety of properties;
wherein said content entities comprise:
a text entity:
an outline entity; and
an image entity: wherein each said content entity comprises:
a plurality of attributes which collectively define the rectangle occupied by each said content entity;
an attribute to store each said content entity;
an attribute to indicate the name of each said content entity; and
an attribute to indicate the z-ordering of the layer entities in said slide;
wherein said entire web document is automatically updated to reflect changes to said browser whenever said browser is resized.

### Claim 17 (depends on 16)

The method of claim 16, wherein said data structure can be optimized to include only the essential information of said entire web document.

### Claim 18 (depends on 16)

The method of claim 16, wherein said data structure and said interpretation code may be contained in a single file.

### Claim 19 (depends on 16)

The method of claim 16, wherein said data structure may be separated out from said interpretation code.
