Software globalization of distributed packages

US10169020B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10169020-B2
Application numberUS-201715422003-A
CountryUS
Kind codeB2
Filing dateFeb 1, 2017
Priority dateFeb 1, 2017
Publication dateJan 1, 2019
Grant dateJan 1, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method, system, and computer program product for globalizing distributed software packages using a global API is disclosed. A text string in a source language is extracted from an independent package source code. An algorithm is used to calculate a resource message key for the text string. The resource message key and the text string are stored in a source language resource file. The text string is translated into an additional language to create a translated text string. The translated text string is stored with the resource message key in an additional language resource file. The independent package is distributed with the source language resource file, the additional language resource file, and the independent package program code bundled in the independent package.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for globalizing distributed software packages using a global application programming interface (API), the method comprising: extracting, by a computer, a text string in a source language from an independent package program code; calculating, by the computer using an algorithm, a resource message key for the extracted text string from content of the extracted text string; storing, by the computer, the resource message key and the extracted text string in a source language resource file; translating, by the computer, the extracted text string into an additional language to create a translated text string; storing, by the computer, the translated text string with the resource message key in an additional language resource file; and distributing, by the computer, an independent package with the source language resource file, the additional language resource file, and the independent package program code bundled in the independent package. 2. The method of claim 1 , further comprising: parsing, by the computer, a dependency tree of application packages; identifying, by the computer, a dependent package; extracting, by the computer, a dependent package text string in the source language from dependent package program code; calculating, by the computer using the algorithm, a dependent resource message key for the extracted dependent package text string from content of the extracted dependent package text string; storing, by the computer, the dependent resource message key and the extracted dependent package text string in a dependent package source language resource file; translating, by the computer, the extracted dependent package text string into the additional language to create a translated dependent package text string; storing, by the computer, the translated dependent package text string with the dependent resource message key in a dependent package additional language resource file; and distributing, by the computer, the independent package with the dependent package source language resource file and the dependent package additional language resource file bundled in the independent package. 3. The method of claim 2 , further comprising: loading, by the computer, the dependent package program code, the dependent package source language resource file, and the dependent package additional language resource file into a memory at runtime; calculating, by the computer using the algorithm, a runtime message key for the extracted dependent package text string in the dependent package program code from content of the extracted dependent package text string; determining, by the computer at runtime, that a desired language is the additional language; determining, by the computer, whether a match exists between the runtime message key for the extracted dependent package text string and the dependent resource message key; and responsive to finding the match, replacing, by the computer, the extracted dependent package text string with the translated dependent package text string. 4. The method of claim 2 , further comprising: responsive to loading the independent package at runtime, identifying, by the computer, a default language; and loading, by the computer, dependent resource files from no dependent packages; or loading, by the computer, dependent resource files from all dependent packages and overriding a resource file loaded from the independent package; or selectively allowing, by the computer, one or more dependent packages to load one or more dependent package resources files; or selectively disallowing, by the computer, one or more dependent packages to load one or more dependent package resource files. 5. The method of claim 2 , wherein a fallback routine of the global API comprises: responsive to finding no match between a runtime message key for the extracted text string and the dependent resource message key, replacing, by the computer at runtime, the extracted dependent package text string with a default language text string associated with the resource message key; or responsive to finding no match between the runtime message key for the extracted text string and the dependent resource message key, and responsive to finding no match in the default language text string associated with the resource message key, loading, by the computer at runtime, the extracted dependent package text string. 6. The method of claim 1 , further comprising: loading, by the computer, the independent package program code, the source language resource file, and the additional language resource file into a memory at runtime; calculating, by the computer using the algorithm, a runtime message key for the extracted text string in the independent package program code from content of the extracted text string; determining, by the computer at runtime, that a desired language is the additional language; determining, by the computer, whether a match exists between the runtime message key for the extracted text string and an additional language message key in the additional language resource file; and responsive to finding the match, replacing, by the computer, the extracted text string with the translated text string. 7. The method of claim 1 , further comprising: identifying, by the computer, one or more non-globalized text strings; and responsive to identifying the one or more non-globalized text strings, storing, by the computer, the one or more non-globalized text strings in a non-globalized resource file in the independent package. 8. A computer system for globalizing distributed software packages using a global application programming interface (API), the computer system comprising: a bus system; a storage device connected to the bus system, wherein the storage device stores program instructions; and a processor connected to the bus system, wherein the processor executes the program instructions to extract a text string in a source language from an independent package program code; to calculate, using an algorithm, a resource message key for the extracted text string from content of the extracted text string; to store the resource message key and the extracted text string in a source language resource file; to translate the extracted text string into an additional language to create a translated text string; to store the translated text string with the resource message key in an additional language resource file; and to distribute an independent package with the source language resource file, the additional language resource file, and the independent package program code bundled in the independent package. 9. The computer system of claim 8 , wherein the processor further executes the program instructions to parse a dependency tree of application packages; to identify a dependent package; to extract a dependent package text string in the source language from dependent package program code; to calculate, using the algorithm, a dependent resource message key for the extracted dependent package text string from content of the extracted dependent package text string; to store the dependent resource message key and the extracted dependent package text string in a dependent package source language resource file; to translate the extracted dependent package text string into the additional language to create a translated dependent package text string; to store the translated dependent package text string with the dependent resource message key in a dependent package additional language resource file; and to distribute the independent package with the dependent package source language resource file and the dependent package additional language resource file bundled in the independent package.

Assignees

Inventors

Classifications

  • Installation · CPC title

  • Machine-assisted translation, e.g. using translation memory · CPC title

  • G06F40/58Primary

    Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation · CPC title

  • G06F8/60Primary

    Software deployment · CPC title

  • Multi-language systems; Localisation; Internationalisation · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10169020B2 cover?
A method, system, and computer program product for globalizing distributed software packages using a global API is disclosed. A text string in a source language is extracted from an independent package source code. An algorithm is used to calculate a resource message key for the text string. The resource message key and the text string are stored in a source language resource file. The text str…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F40/58. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 01 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).