# US 2006/0136535 A1 · Method, system, and computer-readable medium for determining whether to reproduce chart images calculated from a workbook

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

- Number: US 2006/0136535 A1
- Document ID: US20060136535A1
- Status: Published application
- Kind: A1
- Application number: 11/019,059
- Filed: 2004-12-20
- Published: 2006-06-22
- Earliest claimed: 2004-12-20
- Assignees: Microsoft Corporation
- Inventors: Sean Boon
- Web page: https://patentgrep.com/patent/US20060136535A1

## CPC

- G06F 40/18: of spreadsheets (form-filling G06F40/174)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method, system, and computer-readable medium are provided for determining whether to reproduce a chart image from the contents of a spreadsheet application workbook on a server. A calculation server calculates chart data for defining a chart image from workbook data retrieved from the spreadsheet application workbook, generates a representation of the chart data, and calculates an identifier for the representation of the chart data. A charting component receives the representation of the chart data and the identifier from the calculation server and compares the calculated identifier to a previously stored identifier on the server. If the calculated identifier is equal to the previously stored identifier, then the charting component retrieves a previously produced chart image from the representation of the chart data from the server. If the calculated identifier is not equal to the previously stored identifier, then the charting component produces a chart image from the representation of the chart data.

## Claims

### Claim 1

A method for determining whether to reproduce a chart image from the contents of a spreadsheet application workbook on a server, comprising:
calculating chart data for defining a chart image from workbook data retrieved from the spreadsheet application workbook;
generating a representation of the chart data;
calculating an identifier for the representation of the chart data;
comparing the calculated identifier to a previously stored identifier on the server; and
if the calculated identifier is equal to the previously stored identifier, then retrieving a previously produced chart image from the representation of the chart data from the server.

### Claim 2 (depends on 1)

The method of claim 1 further comprising, if the calculated identifier is not equal to the previously stored identifier, then producing a chart image from the representation of the chart data.

### Claim 3 (depends on 1)

The method of claim 1 further comprising displaying the retrieved chart image in a web browser.

### Claim 4 (depends on 1)

The method of claim 1 further comprising caching the representation of the chart data and the calculated identifier.

### Claim 5 (depends on 1)

The method of claim 1, wherein calculating an identifier for the representation of the chart data comprises generating a hash value from the representation of the chart data.

### Claim 6 (depends on 1)

The method of claim 1, wherein generating a representation of the chart data comprises generating an extensible markup language (XML) representation of the chart data.

### Claim 7 (depends on 6)

The method of claim 6, wherein the XML representation of the chart data comprises individual chart series points and values associated with the chart series points.

### Claim 8 (depends on 1)

The method of claim 1, wherein the chart data comprises PivotChart data.

### Claim 9

A system for determining whether to reproduce a chart image from the contents of a spreadsheet application workbook on a server computer, comprising:
a calculation server component for calculating chart data for defining a chart image from workbook data retrieved from the spreadsheet application workbook, generating a representation of the chart data, and calculating an identifier for the representation of the chart data; and
a charting component for receiving the representation of the chart data and the identifier from the calculation server, the charting component further operative to compare the calculated identifier to a previously stored identifier on the server, if the calculated identifier is equal to the previously stored identifier, then retrieve a previously produced chart image from the representation of the chart data from the server, and if the calculated identifier is not equal to the previously stored identifier, then produce a chart image from the representation of the chart data.

### Claim 10 (depends on 9)

The system of claim 9, wherein the charting component displays the retrieved chart image in a web browser.

### Claim 11 (depends on 9)

The system of claim 9, wherein the calculation server component is further operative to cache the representation of the chart data and the calculated identifier.

### Claim 12 (depends on 9)

The system of claim 9, wherein calculating an identifier for the representation of the chart data comprises generating a hash value from the representation of the chart data.

### Claim 13 (depends on 9)

The system of claim 9, wherein generating a representation of the chart data comprises generating an extensible markup language (XML) representation of the chart data.

### Claim 14 (depends on 13)

The system of claim 13, wherein the XML representation of the chart data comprises individual chart series points and values associated with the chart series points.

### Claim 15 (depends on 9)

The system of claim 9, wherein the chart data comprises pivotChart data.

### Claim 16

A computer-readable medium having computer-executable instructions stored thereon which, when executed by a computer, will cause the computer to perform a method for determining whether to reproduce a chart image from the contents of a spreadsheet application workbook on a server, comprising:
calculating chart data for defining a chart image from workbook data retrieved from the spreadsheet application workbook;
generating a representation of the chart data;
calculating an identifier for the representation of the chart data;
caching the representation of the chart data and the calculated identifier;
comparing the calculated identifier to a previously stored identifier on the server;
if the calculated identifier is equal to the previously stored identifier, then retrieving a previously produced chart image from the representation of the chart data from the server;
if the calculated identifier is not equal to the previously stored identifier, then producing a chart image from the representation of the chart data; and
displaying the retrieved chart image in a web browser.

### Claim 17 (depends on 16)

The computer-readable medium claim 16, wherein calculating an identifier for the representation of the chart data comprises generating a hash value from the representation of the chart data.

### Claim 18 (depends on 16)

The computer-readable medium of claim 16, wherein generating a representation of the chart data comprises generating an extensible markup language (XML) representation of the chart data.

### Claim 19 (depends on 18)

The computer-readable medium of claim 18, wherein the XML representation of the chart data comprises individual chart series points and values associated with the chart series points.

### Claim 20 (depends on 16)

The computer-readable medium of claim 16, wherein the chart data comprises pivotChart data.
