Locale-Neutral Source Code Encoding via UTF-8 Transformation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software development methodologies face challenges in internationalization, as source code developed for specific locales often requires significant modifications to function correctly in different locales, and current encoding formats like UTF-16 in Windows and UTF-8 in Unix environments lead to inefficiencies and memory wastage due to the use of wide data types for ASCII/ANSI characters.

Innovation Solution

A system and method for statically processing source code using configurable rules to identify internationalization incompatibilities and transform it into a target format that corresponds to internationalized standards like UTF-8, UTF-16, or UTF-32, leveraging Unicode encoding formats, and incorporating third-party libraries to optimize encoding conversions and reduce overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If wide data types are used for ASCII/ANSI characters in UTF-16 encoding, then internationalization support is improved, but memory usage increases

Engineering Contradiction:
Improveinternationalization supportVSAvoidmemory usage
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent changes the encoding parameter from UTF-16 (2 bytes per character) to UTF-8 (1-4 bytes per character), allowing ASCII/ANSI characters to be stored in 1 byte instead of 2 bytes. This parameter change reduces memory usage while maintaining internationalization support through the ability to encode all Unicode characters.

Inventive Principle:
Principle #35Parameter changes

2Ease of manufacture

If source code is developed for specific locales, then development simplicity is improved, but adaptability to different locales deteriorates

Engineering Contradiction:
Improvedevelopment simplicityVSAvoidlocale compatibility
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent applies universality by using UTF-8 encoding throughout the system, which can represent all languages and scripts. This allows the source code to be developed in a neutral format that automatically adapts to any locale without requiring specific locale-dependent encoding, making the codebase universally compatible while maintaining development simplicity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces UTF-8 as an intermediary encoding format between the source code and various locale-specific displays. This mediator encoding allows the source code to remain locale-neutral while being correctly interpreted and displayed in any target locale, resolving the conflict between development simplicity and locale adaptability.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If encoding conversions are performed between different formats, then locale compatibility is improved, but system performance deteriorates

Engineering Contradiction:
Improvelocale compatibilityVSAvoidsystem performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent performs preliminary action by encoding all source code in UTF-8 format from the beginning of development. This eliminates the need for subsequent encoding conversions between different formats, as the UTF-8 encoding is already compatible with all locales. The preliminary establishment of a universal encoding format prevents performance degradation from repeated conversions.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8813046B2System and method for internationalization encoding
Publication Date: 2014.08.19 INFOSYS LTD
  • US8813046B2 patent drawing
  • US8813046B2 patent drawing
  • US8813046B2 patent drawing

AI summary

A system and computer-implemented method for transforming source code in an original natively encoded format to a locale neutral format, wherein data types and functions in the original format are estimated for compliance with the locale neutral format and an estimation is made as to the amount of code conversions necessary to comply with the locale neutral format. In addition, image files referenced by the source code is analyzed and embedded text extracted for enabling translation during the localization process.