Automated project localization into multiple languages by using machine translation
AssigneeGoogle Inc.
InventorsJun Yin, Piotr Powalowski, Peter Yung Sen Chen
Life of this patent
Estimating the term…
Abstract
Applications can be localized by localization experts to allow them to be used by a broader customer base. The localization can be done given resource files containing localization resources. A localization resource may contain a programming component and non-programming component. The non-programming component can be sent to a machine localizer. The machine localizer may provide a plurality of localizations corresponding to a plurality of languages based on the non-programming component of the localization resource. A plurality of localized applications can be complied based on the localized non-programming components and the original programming component.
Claims17
A method comprising:
- receiving, at a computing system having one or more processors, a message file corresponding to an application, the message file comprising a first element that includes a text string to be translated and corresponding metadata that describes how the text string is to be shown in a user interface of the application;
- determining a plurality of languages into which at least part of the message file is to be translated;
- sending the text string to be translated to a machine-translation system;
- sending language identifiers corresponding to the plurality of languages to the machine-translation system;
- receiving from the machine-translation system a plurality of translations of the text string, the plurality of translations corresponding to the plurality of languages;
- comparing, by the computing system, at least one translation of the text string received from the machine-translation system to a prior localization of the same text string;
- determining, by the computing system, that the prior localization is different than the translation received from the machine-translation system;
- updating the at least one translation of the text string based on the determining that the prior localization is different than the translation received from the machine-translation system;
- generating a plurality of second elements, each of which includes a translation of the text string and the metadata corresponding to the first element;
- generating a plurality of localized message files based on the plurality of second elements;
- and
- sending the localized message files to the developer for use in generating a plurality of localized versions of the application.
A method comprising:
- receiving, at a computing system having one or more processors, a resource file corresponding to an application, the resource file comprising a first localization resource having a programming component and a non-programming component;
- sending the non-programming component to a machine localizer;
- receiving a plurality of localized non-programming components;
- comparing, by the computing system, at least one of the plurality of localized non-programming components to a prior localized non-programming component;
- determining, by the computing system, that the at least one prior localized non-programming component is different than the prior localized non-programming component;
- updating the at least one of the plurality of localized non-programming components based on the determining that the at least one prior localized non-programming component is different than the prior localized non-programming component;
- generating a plurality of second localization resources based on the localized non-programming components and the programming component;
- and
- generating a plurality of localized resource files based on the second localization resources.
A system comprising:
- a database storing a resource file corresponding to an application, the resource file comprising a first localization resource having a programming component and a non-programming component;
- a processor in connection with said database, the processor configured to:
- send the non-programming component to a machine localizer;
- receive a plurality of localized non-programming components;
- compare at least one of the plurality of localized non-programming components to a prior localized non-programming component;
- determine that the at least one prior localized non-programming component is different than the prior localized non-programming component;
- update the at least one of the plurality of localized non-programming components based on the determining that the at least one prior localized non-programming component is different than the prior localized non-programming component;
- generate a plurality of second localization resources based on the localized non-programming components and the programming component;
- and
- generate a plurality of localized resource files based on the second localization resources.
Dependencies are inferred from the claim text.