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

Method and system for incorporating modifications made to a computer program into a translated version of the computer program

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1992-12-24
•
Granted: 1996-11-26
•
Expires: 2012-12-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for merging a first file with a second file to produce an output file, wherein the first and second files are uniquely modified versions of an original file, are discussed. In a preferred embodiment, a computer program can be efficiently developed with versions in multiple natural languages because modifications made in the original version are identified and incorporated into translated versions. The first and second files contain text instructions for controlling a computer system to output text in respective natural languages, and graphics instructions for controlling a computer system to output graphics. A merge utility determines the differences and similarities between the first and second files by comparing the text and graphics instructions of the files.

Inventors

  • 👤 Suryanarayanan V. Raman

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 14:19
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/3604; G06F8/00; G06F8/60; G06F8/70; G06F8/71; G06F9/00; G06F9/06; G06F9/44; G06F9/451; G06F9/454; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99937; Y10S707/99951; Y10S707/99952; Y10S707/99953

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 148 words
A method of developing multiple natural language versions of a computer program, the method comprising the steps of: creating a first natural language version of the computer program, wherein the computer program contains instructions for controlling a computer system to output text in a first natural language; translating the first natural language version to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language; modifying the instructions in the first natural language version to create a modified version of the computer program; comparing programmatically the instructions in the modified version with the instructions in the translated version to identify differences between the modified version and the translated version; and automatically incorporating the modifications made to the first natural language version into the translated version to create a modified translated version.
Claim 2
Independent Claim 148 words
A method of developing multiple natural language versions of a computer program, the method comprising the steps of: creating a first natural language version of the computer program, wherein the computer program contains instructions for controlling a computer system to output text in a first natural language; translating the first natural language version to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language; modifying the instructions in the first natural language version to create a modified version of the computer program; comparing programmatically the instructions in the modified version with the instructions in the translated version to identify differences between the modified version and the translated version; and automatically incorporating the modifications made to the first natural language version into the translated version to create a modified translated version.
Claim 3
Dependent Claim 27 words
The method of claim 1 wherein the computer program, the modified version, and the translated version additionally contain instructions for controlling the computer system to output graphics.
Claim 4
Dependent Claim 65 words
The method of claim 1 wherein the step of automatically incorporating the modifications includes the steps of: copying the instructions from the modified version to the translated version when the instructions are not present in the translated version; deleting the instructions from the translated version when the instructions are not present in the modified version; and translating the copied instructions to the second natural language.
Claim 5
Independent Claim 188 words
A method of developing multiple natural language versions of a computer program, the method comprising the steps of: creating an original version of the computer program, wherein the computer program contains instructions for controlling a computer system to output text in a first natural language and instructions for controlling the computer system to output graphics; translating the original version to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language and instructions for controlling the computer system to output graphics; modifying the instructions in the original version to create a modified version of the computer program; comparing the instructions in the modified versions with the instructions in the translated version to identify differences between the modified version and the translated version; for each instruction in the modified version that is not in the translated version, copying automatically the instruction from the modified version to the translated version; and for each instruction in the translated version that is not in the modified version, deleting automatically the instruction from the translated version.
Claim 6
Independent Claim 188 words
A method of developing multiple natural language versions of a computer program, the method comprising the steps of: creating an original version of the computer program, wherein the computer program contains instructions for controlling a computer system to output text in a first natural language and instructions for controlling the computer system to output graphics; translating the original version to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language and instructions for controlling the computer system to output graphics; modifying the instructions in the original version to create a modified version of the computer program; comparing the instructions in the modified versions with the instructions in the translated version to identify differences between the modified version and the translated version; for each instruction in the modified version that is not in the translated version, copying automatically the instruction from the modified version to the translated version; and for each instruction in the translated version that is not in the modified version, deleting automatically the instruction from the translated version.
Claim 7
Dependent Claim 65 words
The method of claim 1 wherein the step of comparing the instructions in the modified version with the instructions in translated version further includes the step of creating an association table, the association table containing a list of equivalent pairs of instructions such that one of the instructions in the pair is from the modified version and the other instruction is from the translated version.
Claim 8
Dependent Claim 131 words
The method of claim 1 wherein the modified version and the translated version each comprise a plurality of identified blocks, each block having a block identifier, the method further including the steps of: creating a block association table, the block association table containing a list of equivalent pairs of block identifiers such that one of the block identifiers in the pair is from the modified version and the other block identifier is from the translated version; for each block identifier in the modified version that is not in the block association table, copying the corresponding ordered block from the modified version into the translated version; and for each block identifier in the translated version that is not in the block association table, removing the corresponding ordered block from the translated version.
Claim 9
Dependent Claim 154 words
A computer system for developing multiple natural language versions of a computer program comprising: means for creating a first natural language version of the computer program, wherein the computer program contains instructions for controlling a computer system to output text in a first natural language; means for translating the first natural language version to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language; means for modifying the instructions in the first natural language version to create a modified version of the computer program; means for comparing programmatically the instructions in the modified version with the instructions in the translated version to identify differences between the modified version and the translated version; and means for automatically incorporating the modifications made to the first natural language version into the translated version to create a modified translated version.
Claim 10
Dependent Claim 154 words
A computer system for developing multiple natural language versions of a computer program comprising: means for creating a first natural language version of the computer program, wherein the computer program contains instructions for controlling a computer system to output text in a first natural language; means for translating the first natural language version to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language; means for modifying the instructions in the first natural language version to create a modified version of the computer program; means for comparing programmatically the instructions in the modified version with the instructions in the translated version to identify differences between the modified version and the translated version; and means for automatically incorporating the modifications made to the first natural language version into the translated version to create a modified translated version.
Claim 11
Dependent Claim 28 words
The computer system of claim 7 wherein the computer program, the modified version, and the translated version additionally contain instructions for controlling the computer system to output graphics.
Claim 12
Dependent Claim 69 words
The computer system of claim 7 wherein the means for automatically incorporating the modifications includes: means for copying the instructions from the modified version to the translated version when the instructions are not present in the translated version; means for deleting the instructions from the translated version when the instructions are not present in the modified version; and means for translating the copied instructions to the second natural language.
Claim 13
Dependent Claim 193 words
A computer-readable medium that causes a computer system to develop multiple natural language versions of a computer program, by performing the steps of: creating an original version of the computer program, wherein the computer program contains instructions for controlling a computer system to output text in a first natural language and instructions for controlling the computer system to output graphics; translating the original version to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language and instructions for controlling the computer system to output graphics; modifying the instructions in the original version to create a modified version of the computer program; comparing the instructions in the modified version with the instructions in the translated version to identify differences between the modified version and the translated version; for each instruction in the modified version that is not in the translated version, copying automatically the instruction from the modified version to the translated version; and for each instruction in the translated version that is not in the modified version, deleting automatically the instruction from the translated version.
Claim 14
Dependent Claim 193 words
A computer-readable medium that causes a computer system to develop multiple natural language versions of a computer program, by performing the steps of: creating an original version of the computer program, wherein the computer program contains instructions for controlling a computer system to output text in a first natural language and instructions for controlling the computer system to output graphics; translating the original version to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language and instructions for controlling the computer system to output graphics; modifying the instructions in the original version to create a modified version of the computer program; comparing the instructions in the modified version with the instructions in the translated version to identify differences between the modified version and the translated version; for each instruction in the modified version that is not in the translated version, copying automatically the instruction from the modified version to the translated version; and for each instruction in the translated version that is not in the modified version, deleting automatically the instruction from the translated version.
Claim 15
Dependent Claim 153 words
A computer-readable medium that causes a computer system to develop multiple natural language versions of a computer program, by performing the steps of: creating a first natural language version of the computer program, wherein the computer program contains instructions for controlling a computer system to output text in a first natural language; translating the first natural language version to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language; modifying the instructions in the first natural language version to create a modified version of the computer program; comparing programmatically the instructions in the modified version with the instructions in the translated version to identify differences between the modified version and the translated version; and automatically incorporating the modifications made to the first natural language version into the translated version to create a modified translated version.
Claim 16
Dependent Claim 153 words
A computer-readable medium that causes a computer system to develop multiple natural language versions of a computer program, by performing the steps of: creating a first natural language version of the computer program, wherein the computer program contains instructions for controlling a computer system to output text in a first natural language; translating the first natural language version to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language; modifying the instructions in the first natural language version to create a modified version of the computer program; comparing programmatically the instructions in the modified version with the instructions in the translated version to identify differences between the modified version and the translated version; and automatically incorporating the modifications made to the first natural language version into the translated version to create a modified translated version.
Claim 17
Dependent Claim 246 words
A computer system for developing multiple natural language versions of a computer program comprising: means for creating a first natural language version of the computer program, wherein the computer program contains instructions for controlling the computer system to output text in a first natural language and instructions for controlling the computer system to output graphics; means for translating the first natural language version of the computer program to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language and instructions for controlling the computer system to output graphics; means for modifying the instructions in the first natural language version to create a modified version of the computer program; means for comparing the modified version and the translated version to identify differences between the modified version and the translated version; means for creating an association table, the association table containing a list of equivalent pairs of instructions such that one of the instructions in the pair is from the modified version and the other instruction is from the translated version; means for copying the instructions of the modified version from the modified version to the translated version when the instructions of the modified version are not represented in the association table; and means for deleting the instructions of the translated version from the translated version when the instructions of the translated version are not represented in the association table.
Claim 18
Dependent Claim 246 words
A computer system for developing multiple natural language versions of a computer program comprising: means for creating a first natural language version of the computer program, wherein the computer program contains instructions for controlling the computer system to output text in a first natural language and instructions for controlling the computer system to output graphics; means for translating the first natural language version of the computer program to create a translated version of the computer program such that the translated version contains instructions for controlling the computer system to output text in a second natural language and instructions for controlling the computer system to output graphics; means for modifying the instructions in the first natural language version to create a modified version of the computer program; means for comparing the modified version and the translated version to identify differences between the modified version and the translated version; means for creating an association table, the association table containing a list of equivalent pairs of instructions such that one of the instructions in the pair is from the modified version and the other instruction is from the translated version; means for copying the instructions of the modified version from the modified version to the translated version when the instructions of the modified version are not represented in the association table; and means for deleting the instructions of the translated version from the translated version when the instructions of the translated version are not represented in the association table.

References Cited (Backward Citations)

US4706212A Cited
US3711863A Cited
US4641264A Cited
US4595980A Cited
US5191646A Cited
US5181163A Cited
US5325531A Cited
US5323311A Cited
US5416903A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-11-26 2000-05-27 2000-11-26 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-11-26 2004-05-27 2004-11-26 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-11-26 2008-05-27 2008-11-26 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag