Localized Resource String Compression for Multilingual Software Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data compression techniques are inefficient for compressing short text strings like resource strings used in software applications, particularly when multiple languages are involved, leading to large resource files that occupy significant storage space and hinder deployment.

Innovation Solution

A translational similarity compression technique that uses resources in a first language, such as English, as a base for compressing and decompressing resources in other languages, leveraging a generic translation dictionary to significantly reduce file sizes by encoding localized resource strings with minimal bit usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If traditional compression techniques are used on localized resource strings, then some compression is achieved, but the compression ratio is insufficient and file sizes remain large

Engineering Contradiction:
Improveresource file sizeVSAvoidcompression efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments the localized resource string into individual words and creates a separate dictionary for each word. This allows each word to be compressed independently using its most frequent translation, achieving much higher compression ratios than treating the entire string as a single unit.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the compression parameter by using language-specific dictionaries that map words to their most frequent translations in the target language. This parameter change (from generic compression to language-aware compression) enables achieving 95-99.5% compression ratios for localized resources.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If resource files are stored in full size for all languages, then all localized resources are readily available, but storage space and download time increase significantly

Engineering Contradiction:
Improveresource availabilityVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent performs preliminary compression of localized resource files using language-specific dictionaries before deployment. This preliminary action reduces file sizes to 5-25% of their original size while maintaining the ability to fully reconstruct and retrieve all localized resources when needed.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If generic compression algorithms are used on short text strings, then compression is applied, but the compression effectiveness is poor for localized resource strings

Engineering Contradiction:
Improvecompressed file sizeVSAvoidcompression applicability
Core Design Contradiction:
Quantity of substanceVSEase of manufacture

Solution Approach 1:

The patent introduces language-specific dictionaries as an intermediary between the source language words and the target language translations. These dictionaries serve as a mediation layer that enables highly effective compression by capturing the most frequent translation mappings for each word in the localized resource.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11210465B2Efficient storage and retrieval of localized software resource data
Publication Date: 2021.12.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11210465B2 patent drawing
  • US11210465B2 patent drawing
  • US11210465B2 patent drawing

AI summary

A method of and system of for compressing and decompressing a localized software resource is disclosed. The method may include receiving a software resource, the software resource being in a first language, receiving a localized software resource for compression, where the software resource in the first language is a counterpart of the localized software resource in the second language. Upon receiving the software resources creating a first local dictionary for the localized software resource based at least in part on one or more first language words in the software resource and on data from a global dictionary, and compressing the localized software resource based on the local dictionary.