# US 7,610,406 B2 · Updating a web user interface on a client device

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

- Number: US 7,610,406 B2
- Document ID: US7610406B2
- Status: Granted
- Kind: B2
- Application number: 11/879,541
- Filed: 2007-07-17
- Published: 2007-11-15
- Granted: 2009-10-27
- Earliest claimed: 2000-10-20
- Inventors: Jonathan Wu
- Web page: https://patentgrep.com/patent/US7610406B2

## CPC

- G06F 40/143: Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
- G06F 9/45529: {Embedded in an application, e.g. JavaScript in a Web browser}
- G06F 16/9535: Search customisation based on user profiles and personalisation
- G06F 16/9577: {Optimising the visualization of content, e.g. distillation of HTML documents}
- G06F 40/154: Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/34: {involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416)}
- H04L 67/55: Push-based network services
- H04L 67/63: Routing a service request depending on the request content or context
- H04L 69/28: Timers or timing mechanisms used in protocols
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A computer-implemented method for updating a web user interface on a client device is provided. A router back-boned to the Internet communicates with the client device web-user interface data defined in markup language to dynamically update the web-user interface on the client device. The router contains no logic regarding the web-user interface running on the client device. The client device has a browser server for dynamically updating the web-user interface through downloading and caching the data from the router. The browser server on the client device has (i) a user interface model of the web-user interface running on the client device defined in Javascript, and (ii) a JavaScript Runtime Engine for dynamically converting the downloaded and/or cached web-user interface markup language data into JavaScript objects. The web-user interface is dynamically updated by combining steps (i) and (ii).

## Claims

### Claim 1

A computer-implemented method for updating a web user interface on a client device, comprising:
(a) a router back-boned to the Internet communicating with said client device in a markup language web user interface data obtained from the Internet and intended to dynamically update said web user interface running on said client device, wherein said router contains no logic regarding said web user interface running on said client device;
(b) said client device having a browser server for dynamically updating said web user interface running on said client device through downloading and caching said web user interface data in said markup language from said router, wherein said downloaded web user interface data is dynamically used when said client device is in a synchronous mode with said router and wherein said cached web user interface data is accessed from said client device when said client device is in an a-synchronous mode with said router;
(c) said browser server on said client device having:
(i) a user interface model of said web user interface running on said client device defined in Javascript, wherein said Javascript-defined user interface model defines the view of said webpage running on said client device, and
(ii) a JavaScript Runtime Engine for dynamically converting said downloaded and/or cached web user interface markup language data into JavaScript objects; and
(d) dynamically updating said web user interface running on said client device by combining said steps c(i) and c(ii).

### Claim 2 (depends on 1)

The method as set forth in claim 1, further comprising an API for manipulating on said client device markup language using Javascript.
