Spreadsheet Style Object Memory Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The processing of spreadsheet style data using markup languages like OOXML and SML leads to inefficiencies due to the loading of multiple objects into memory and repeated pointer traversals, resulting in increased memory usage and processing costs.

Innovation Solution

A method is introduced to store combined cell formatting information by obtaining cell formatting from a master style object, named style information, and cell-specific formatting, which overrides the master formatting, and storing this information in a cell format object, eliminating redundant references and optimizing memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all spreadsheet data and style objects are loaded into memory before processing, then complete formatting information is available for rendering, but memory resource usage increases significantly

Engineering Contradiction:
Improvecompleteness of formatting informationVSAvoidmemory resource usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the spreadsheet processing into distinct phases: pagination determination phase and rendering phase. During pagination, only essential structural data is loaded, while style objects are deferred to the rendering phase. This segmentation allows complete formatting information to be available when needed without loading everything into memory simultaneously, thus resolving the contradiction between reliability and memory usage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary pagination determination with minimal data loading, then prepares style objects in advance of the actual rendering operation. This preliminary action allows the system to plan memory usage efficiently - loading style objects just-in-time for rendering rather than all at once, maintaining completeness of formatting information while optimizing memory resource usage throughout the process.

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If multiple style objects and pointers are traversed repeatedly to determine cell formatting, then accurate formatting is achieved, but processing throughput decreases

Engineering Contradiction:
Improveaccuracy of cell formattingVSAvoidprocessing throughput
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent performs preliminary resolution of style references during the pagination phase, creating a simplified representation that captures the essential formatting hierarchy. This preliminary action eliminates the need for repeated pointer traversals during rendering, as the formatting relationships have already been established. The result maintains accurate cell formatting while significantly improving processing throughput by avoiding redundant traversal operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates simplified copies or representations of style relationships during pagination, rather than working with the full complex object structure throughout processing. These copied representations preserve the essential formatting information needed for accurate rendering while being much more efficient to process. This copying approach maintains manufacturing precision while eliminating the productivity loss from repeated traversals of the original complex structure.

Inventive Principle:
Principle #26Copying

3Productivity

If style data is processed and resolved before pagination, then rendering can proceed efficiently, but memory resources are consumed during a longer period

Engineering Contradiction:
Improverendering efficiencyVSAvoidmemory resource occupation duration
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent segments style data processing into two distinct stages: pagination stage with minimal style processing, and rendering stage with full style resolution. This segmentation allows rendering to proceed efficiently when actually needed, while minimizing the duration that style data occupies memory. The style data is loaded and processed only for the duration of the rendering operation, not held in memory throughout the entire pagination process, thus resolving the contradiction between rendering efficiency and memory occupation duration.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8365066B2Systems and methods for processing markup language specified spreadsheet styles
Publication Date: 2013.01.29 KONICA MINOLTA SYSTEMS LABORATORY INC
  • US8365066B2 patent drawing
  • US8365066B2 patent drawing
  • US8365066B2 patent drawing

AI summary

Methods to facilitate the processing of formatting information for cells in a spreadsheet document described in a markup language are presented. For spreadsheet documents that include a plurality of style objects, cell formatting information may be obtained from a master style object that stores master formatting information. In addition, named style information may be obtained from a style name object that stores named styles. Further, cell specific formatting information, which can override master formatting information, may be obtained from a cell-specific style object that includes cell specific formatting information. Combined cell formatting information for cells may be stored in a cell format object, wherein the combined cell formatting information can comprise named styles, cell-specific formatting information that overrides formatting information in the master style object, and master formatting information that has not been overridden by the cell-specific formatting information.