← Back to Patent Explorer
US5664206A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for automating the localization of a computer program

Assignee: Sun Microsystems Inc
•
Filing: 1995-03-17
•
Granted: 1997-09-02
•
Expires: 2015-03-17
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention provides a system and process which has the advantages of shortening the time and cost required to create a new localized version of a software product by automating much of the language translation process; by providing tools to automate the modifications to the program being localized, thereby reducing the probability of creating errors in the localization process and providing some measure of consistency between subsequently localized new releases of the product, and between different locales. The system disclosed includes an environment and tools to develop software modules to create methods to display, enter or print various single and multi-byte character sets. Moreover the system disclosed provides a mechanism for an independent software developer to localize a software product, using only a binary copy of the target program and the localization tool kit for that product. This will permit the Software manufacturer to contract with developers in various countries to perform the product localization for their respective countries, minimizing risks by not having to provide the developers with a source code version of the portions of the product which do not require localization, and assuring rapid and consistent versions of the localized product through the use of the tool kit provided for that product. The invention provides a method and apparatus for creating a localized version of a target computer program product by first creating a binary version of the localized materials using the localization kit, and then using the localization kit to overlay this binary version of the localized materials onto a binary version of the target computer program product. The localization of certain locale date in the target computer program binary image is also facilitated. The localization kit also provides tools to test and verify the localized version of the target computer program product. The system disclosed also provides a framework wherein new localization tools can be easily incorporated into the overall process.

Inventors

  • 👤 Jaime Murow
  • 👤 Gary D. Hethcoat
  • 👤 Richard J. Kwan
  • 👤 Hideki Hiura

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 18:33
CPC Classifications
G; G06; G06F; G06F40/00; G06F40/40; G06F40/42; G06F40/47; G06F9/00; G06F9/06; G06F9/44; G06F9/451; G06F9/454; G06F40/45; G06F40/55; G06F40/58

Claims Analysis

Total Claims: 42
Claim 1
Independent Claim 174 words
A system for localizing a target computer program, said system comprising: a computer system having a central processing unit ("CPU"), a memory and an input and an output device; an executable binary version of a target computer program loaded in said memory of said computer system: and a localization kit loaded in said memory of said computer system, said localization kit comprising an integrated set of tools, said localization kit for use by a user of said computer system to localize a portion of said target computer program into a language different from said target computer program's language, said portion of said target computer program comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; said localization kit also for use by said user to bind a binary version of said localized portion with said executable binary version of said target computer program to produce a localized version of said executable binary version of said target computer program.
Claim 2
Independent Claim 174 words
A system for localizing a target computer program, said system comprising: a computer system having a central processing unit ("CPU"), a memory and an input and an output device; an executable binary version of a target computer program loaded in said memory of said computer system: and a localization kit loaded in said memory of said computer system, said localization kit comprising an integrated set of tools, said localization kit for use by a user of said computer system to localize a portion of said target computer program into a language different from said target computer program's language, said portion of said target computer program comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; said localization kit also for use by said user to bind a binary version of said localized portion with said executable binary version of said target computer program to produce a localized version of said executable binary version of said target computer program.
Claim 3
Dependent Claim 62 words
A system as recited in claim 1 wherein said target computer program is an internationalized target computer program wherein messages, menus and other locale specific data are located in one or more portions of said target computer program which are separate from executable code of said target program, said executable code comprising portions of said target computer program which require no localization.
Claim 4
Dependent Claim 58 words
A system as recited in claim 1 wherein said localization kit comprises: a plurality of program tools and files which are independent of said target program; and a plurality of files which are dependent upon a release version of said target program comprising one or more portions of said target computer program which contain data to be localized.
Claim 5
Dependent Claim 53 words
A system as recited in claim 3 wherein said plurality of program tools and files which are independent of said target program comprises a computer aided localization tool ("CALtool") which comprises a plurality of computer display icons, said icons comprising symbols which depict steps to guide a user in localizing said target program.
Claim 6
Dependent Claim 75 words
A system as recited in claim 3 wherein said plurality of program tools and files which are independent of said target program further comprises: a glossary tool for assisting a user in translating existing terminology into a different language; a data base manager program for use by said glossary tool; and a data base of technical terms and their translations into a plurality of languages, said data base for use by said data base manager.
Claim 7
Dependent Claim 70 words
A system as recited in claim 3 wherein said plurality of program tools and files which are independent of said target program further comprises: a translation tool for assisting a user in translating existing internal messages and external documentation for said target program into a different language; and an on-line publishing tool for use by said translation tool to store and retrieve messages and documentation in a plurality of formats.
Claim 8
Dependent Claim 52 words
A system as recited in claim 3 wherein said plurality of program tools and files which are independent of said target program further comprises a problem reporting tool for use to record, store and report a problem defined by a user, said problem related to an attempt to localize said target program.
Claim 9
Dependent Claim 95 words
A system as recited in claim 3 wherein said plurality of program tools and files which are independent of said target program further comprises a build tool portion of said localization kit, said build tool for use to assemble localized materials into a binary version of said localized materials, said localized materials comprising said localized portion of said target computer program, said build tool also for use to connect said binary version of said localized materials with said binary version of said target computer program to produce a localized version of said target computer program.
Claim 10
Dependent Claim 45 words
A system as recited in claim 3 wherein said plurality of program tools and files which are independent of said target program further comprises a test tool for use to assist a user to perform functional and language tests on a localized target computer program.
Claim 11
Dependent Claim 80 words
A system as recited in claim 3 wherein said plurality of program tools and files which are independent of said target program further comprises a name space server for use to coordinate and control a location of said portion of said target computer program which contains materials to be localized as contained in said binary version of said target computer program and as contained in said localization kit in order to provide said location to said plurality of program tools.
Claim 12
Dependent Claim 165 words
A computer program product comprising a computer usable storage media having computer readable code mechanisms embedded therein for for localizing an executable binary version of a target computer program, said localization being performed on a computer having a processor, a memory and various peripheral devices, said computer readable code mechanisms comprising a plurality of program tools and files, designated a localization kit, which are independent of said target computer program, said plurality of program tools and files for assisting a user of said computer to localize a portion of said executable binary version of a target computer program, said portion of said target computer program comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; and for assisting a user to connect a binary version of said localized portion with said executable binary version of said target computer program to produce a localized version of said target computer program.
Claim 13
Dependent Claim 165 words
A computer program product comprising a computer usable storage media having computer readable code mechanisms embedded therein for for localizing an executable binary version of a target computer program, said localization being performed on a computer having a processor, a memory and various peripheral devices, said computer readable code mechanisms comprising a plurality of program tools and files, designated a localization kit, which are independent of said target computer program, said plurality of program tools and files for assisting a user of said computer to localize a portion of said executable binary version of a target computer program, said portion of said target computer program comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; and for assisting a user to connect a binary version of said localized portion with said executable binary version of said target computer program to produce a localized version of said target computer program.
Claim 14
Dependent Claim 59 words
A computer program product as recited in claim 11 wherein said plurality of program tools and files which are independent of said target computer program comprises a computer aided localization tool ("CALtool") comprising a plurality of computer display icons, said icons comprising symbols which depict steps to guide a user in localizing said binary version of a target program.
Claim 15
Dependent Claim 47 words
A computer program product as recited in claim 12 wherein said CALtool comprises a graphical user interface ("GUI"), said GUI comprising a plurality of computer display icons, said icons comprising symbols which depict steps to guide a user in localizing said binary version of a target program.
Claim 16
Dependent Claim 68 words
A computer program product as recited in claim 11 wherein said plurality of program tools comprises: a glossary tool for assisting a user in localizing existing terminology into a different language; a data base manager program for use by said glossary tool; and a data base of technical terms and their translations into a plurality of languages, said data base being for use by said data base manager.
Claim 17
Dependent Claim 65 words
A computer program product as recited in claim 11 wherein said plurality of program tools comprises: a translation tool for assisting a user in translating existing internal messages and external and on-line documentation for said target computer program into a different language; and an on-line publishing tool for use by said translation tool to store and retrieve messages and documentation in a plurality of formats.
Claim 18
Dependent Claim 45 words
A computer program product as recited in claim 11 wherein said plurality of program tools comprises a problem reporting tool for use to record, store and report a problem defined by a user, said problem related to an attempt to localize said target computer program.
Claim 19
Dependent Claim 94 words
A computer program product as recited in claim 11 wherein said plurality of program tools comprises a build tool for use to assemble a binary version of localized materials, said localized materials comprising said localized portion of said target computer program, a newly created subprogram if said subprogram was created in a localization process, and localized glossary and message files, said build tool also for use to overlay said binary version of said localized materials onto a binary version of said target computer program to produce a localized version of said target computer program.
Claim 20
Dependent Claim 40 words
A computer program product as recited in claim 11 wherein said plurality of program tools comprises a test tool, said test tool for use to assist a user to perform measurements and language tests on a localized target computer program.
Claim 21
Dependent Claim 61 words
A computer program product as recited in claim 11 wherein said plurality of program tools comprises a name space server, said name space server for use to coordinate and control a location of said portion of said target computer program to be localized as contained in said binary version of said target computer program and as contained in said localization kit.
Claim 22
Independent Claim 189 words
A method for localizing a binary version of a target computer program into any desired language, said method comprising the steps of: providing a computer system having a central processing unit ("CPU"), a memory and an input and an output device, said memory containing a binary version of a target computer program; installing a localization kit into said computer system, said localization kit comprising a plurality of program tools and files for assisting a user of said computer system in localizing a portion of said binary version of a target computer program; using said localization kit to localize a portion of said binary version of a target computer program into a language different from said target computer program's language, said portion of said binary version of a target computer program comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; and using said localization kit to connect a binary version of said localized portion with said binary version of said target computer program to produce a localized version of said target computer program.
Claim 23
Independent Claim 189 words
A method for localizing a binary version of a target computer program into any desired language, said method comprising the steps of: providing a computer system having a central processing unit ("CPU"), a memory and an input and an output device, said memory containing a binary version of a target computer program; installing a localization kit into said computer system, said localization kit comprising a plurality of program tools and files for assisting a user of said computer system in localizing a portion of said binary version of a target computer program; using said localization kit to localize a portion of said binary version of a target computer program into a language different from said target computer program's language, said portion of said binary version of a target computer program comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; and using said localization kit to connect a binary version of said localized portion with said binary version of said target computer program to produce a localized version of said target computer program.
Claim 24
Dependent Claim 18 words
A method as recited in claim 20 wherein said target computer program is an internationalized target computer program.
Claim 25
Dependent Claim 84 words
A method as recited in claim 21 wherein said step of installing a localization kit into said computer system comprises the steps of: installing a plurality of program tools and files which are independent of said target computer program into said computer system; and installing a plurality of files which are dependent upon a release version of said target computer program into said computer system, said plurality of files comprising a portion of said release version of said target computer program which is localizable.
Claim 26
Dependent Claim 61 words
A method as recited in claim 22 wherein said step of installing a plurality of program tools and files which are independent of said target computer program comprises the additional step of installing a computer aided localization tool ("CALtool") which comprises a plurality of computer display icons, said icons being used to guide a user in localizing said target computer program.
Claim 27
Dependent Claim 109 words
A method as recited in claim 22 wherein said step of installing a plurality of program tools and files which are independent of said target computer program comprises the additional steps of: installing a glossary tool into said computer system, said glossary tool for use in assisting a user in translating existing terminology into a different language; installing a data base manager program for use by said glossary tool; installing a data base of technical terms and their translations into a plurality of languages for use by said data base manager program; and using said glossary tool to assist in the translation of glossary terms into a local language.
Claim 28
Dependent Claim 116 words
A method as recited in claim 22 wherein said step of installing a plurality of program tools and files which are independent of said target program comprises the additional steps of: installing a translation tool into said computer system, said translation tool for use in assisting a user in localizing existing internal messages and external documentation for said target computer program into a different language; installing an on-line publishing tool for use by said translation tool to store and retrieve messages and documentation in a plurality of formats; and using said translation tool to assist said user in translating existing internal messages and external and on-line documentation for said target computer program into a different language.
Claim 29
Dependent Claim 69 words
A method as recited in claim 22 wherein said step of installing a plurality of program tools and files which are independent of said target computer program comprises the additional steps of: installing a problem reporting tool into said computer system: and, using said problem reporting tool to record, store and report a problem defined by a user, said problem related to an attempt to localize said target program.
Claim 30
Dependent Claim 120 words
A method as recited in claim 22 wherein said step of installing a plurality of program tools and files which are independent of said target computer program comprises the additional steps of: installing a build tool into said computer system; using said build tool to assemble localized materials into a binary version of said localized materials, said localized materials comprising said localized portion of said target computer program, a newly created subprogram if said subprogram was created in a localization process, and localized glossary and message files; and using said build tool to connect said binary version of said localized materials with a binary version of said target computer program to produce a localized version of said target computer program.
Claim 31
Dependent Claim 61 words
A method as recited in claim 22 wherein said step of installing a plurality of program tools and files which are independent of said target computer program comprises the additional steps of: installing a test tool into said computer system; and using said test tool to assist a user to perform functional and language tests on a localized target computer program.
Claim 32
Dependent Claim 75 words
A method as recited in claim 22 wherein said step of installing a plurality of program tools and files which are independent of said target computer program comprises the additional steps of: installing a name space server into said computer system; and using said name space server to coordinate and control a location of said portion of said target computer program to be localized, and to provide said location to said plurality of program tools.
Claim 33
Dependent Claim 62 words
A method as recited in claim 22 wherein said step of installing a plurality of program tools and files which are independent of said target computer program comprises the additional steps of: installing a software development tool into said computer system; and using said software development tool to assist a user to create software subsystems for addition to said target computer program.
Claim 34
Dependent Claim 59 words
A method as recited in claim 22 wherein said step of installing a plurality of program tools and files which are independent of said target computer program comprises the additional steps of: installing a certification tool into said computer system; and using said certification tool to assist in the certification of a localized version of said target computer program.
Claim 35
Independent Claim 208 words
A method for a person in any country to use in localizing a target computer program into a language of the person's choice, said method comprising the steps of: providing a computer system having a central processing unit ("CPU"), a memory, a display and an input and an output device; loading a localization kit into said computer system, said localization kit comprising a portion of said target computer program which is localizable; invoking a computer aided localization tool ("CALtool") which comprises a plurality of computer display icons, said icons comprising symbols for use in guiding said person from one step to a next step in localizing said target computer program; using said CALtool in localizing said portion of said target computer program which is localizable, said portion of said target computer program which is localizable comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; creating a binary version of said localized portion of said target computer program; and connecting said binary version of said localized portion of said target computer program with an executable binary version of said target computer program thereby producing a localized version of said target computer program.
Claim 36
Independent Claim 208 words
A method for a person in any country to use in localizing a target computer program into a language of the person's choice, said method comprising the steps of: providing a computer system having a central processing unit ("CPU"), a memory, a display and an input and an output device; loading a localization kit into said computer system, said localization kit comprising a portion of said target computer program which is localizable; invoking a computer aided localization tool ("CALtool") which comprises a plurality of computer display icons, said icons comprising symbols for use in guiding said person from one step to a next step in localizing said target computer program; using said CALtool in localizing said portion of said target computer program which is localizable, said portion of said target computer program which is localizable comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; creating a binary version of said localized portion of said target computer program; and connecting said binary version of said localized portion of said target computer program with an executable binary version of said target computer program thereby producing a localized version of said target computer program.
Claim 37
Independent Claim 179 words
A system for use by a person in any country in localizing a target computer program to any language the person desires, without the necessity of having the source code of the target program available, said system comprising: a computer system having a central processing unit ("CPU"), a memory and an input and an output device; a binary version of a target computer program loaded into said memory of said computer system: and a localization kit loaded into said memory of said computer system, said localization kit for use to assist a user of said computer system in any country to localize a portion of said binary version of a target computer program into a language different from said binary version of a target computer program's language, said portion of said binary version of a target computer program comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; and for use to produce a localized executable binary version of said target computer program.
Claim 38
Independent Claim 179 words
A system for use by a person in any country in localizing a target computer program to any language the person desires, without the necessity of having the source code of the target program available, said system comprising: a computer system having a central processing unit ("CPU"), a memory and an input and an output device; a binary version of a target computer program loaded into said memory of said computer system: and a localization kit loaded into said memory of said computer system, said localization kit for use to assist a user of said computer system in any country to localize a portion of said binary version of a target computer program into a language different from said binary version of a target computer program's language, said portion of said binary version of a target computer program comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; and for use to produce a localized executable binary version of said target computer program.
Claim 39
Independent Claim 131 words
A method for localizing a target computer program, said method comprising the steps of: providing a computer system having a central processing unit ("CPU"), a memory and an input and an output device; installing an executable target computer program into said computer system; installing a localization kit into said computer system; and using said localization kit to localize a portion of said target computer program into a language different from said target computer program's previous language, said localization being performed by a developer in any country who wishes to localize the target program to his or her language, said portion of said target computer program comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order.
Claim 40
Independent Claim 131 words
A method for localizing a target computer program, said method comprising the steps of: providing a computer system having a central processing unit ("CPU"), a memory and an input and an output device; installing an executable target computer program into said computer system; installing a localization kit into said computer system; and using said localization kit to localize a portion of said target computer program into a language different from said target computer program's previous language, said localization being performed by a developer in any country who wishes to localize the target program to his or her language, said portion of said target computer program comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order.
Claim 41
Dependent Claim 129 words
A computer implemented system for localizing a target computer program comprising: a localization kit comprising a plurality of tools to guide a localization of said target computer program by a developer in any country who desires to localize the target program to his country's language, and a file of data to be localized, said file of data to be localized comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; and a name space object to provide a path name to said file of data to be localized, said path name being provided to one of said plurality of tools whenever said file is invoked by said one of said plurality of tools.
Claim 42
Dependent Claim 129 words
A computer implemented system for localizing a target computer program comprising: a localization kit comprising a plurality of tools to guide a localization of said target computer program by a developer in any country who desires to localize the target program to his country's language, and a file of data to be localized, said file of data to be localized comprising at least two of the following: error messages, button labels, menu items, text in icons, locale specific data for formatting time, currency or sort order; and a name space object to provide a path name to said file of data to be localized, said path name being provided to one of said plurality of tools whenever said file is invoked by said one of said plurality of tools.

References Cited (Backward Citations)

US4706212A Cited
US4731735A Cited
US4953088A Cited
US4916614A Cited
US4870610A Cited
US5060146A Cited
US5299125A Cited
US5267156A Cited
US5243519A Cited
US5434776A Cited
US5303151A Cited
US5432948A Cited
US5442782A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-09-01 2001-03-03 2001-09-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-09-01 2005-03-03 2005-09-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-09-01 2009-03-03 2009-09-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag