USRE37722EExpiredUtility

Object-oriented system for the transparent translation among locales of locale-dependent application programs

79
Assignee: OBJECT TECH LICENSING CORPPriority: Nov 14, 1994Filed: Mar 17, 1999Granted: May 28, 2002
Est. expiryNov 14, 2014(expired)· nominal 20-yr term from priority
G06F 9/454
79
PatentIndex Score
84
Cited by
34
References
39
Claims

Abstract

User interface objects are stored in a user interface object archive which is a database physically located in the shared library of an associated application program. In order to facilitate “localization”, or preparation of an application developed in one language for use in an “area” or a locale which uses another language, the user interface objects are stored in a hierarchical locale tree within the archive. All objects are stored in the base or root of the hierarchy, but only those objects which require a translation are stored in an area associated with a more specific locale. At runtime, a complete collection of objects is assembled by starting at the desired locale and proceeding up the hierarchy level-by-level. Translated objects at lower levels of the hierarchy “override” those at higher levels so that the most complete translations of each object are obtained during this search. The user interface objects which are stored in an archive are actually created via a predefined “constructor” program, and, in order to allow newly-created user interface objects to use the predesigned constructor program, each user interface object is contained in a special “escort” object that interfaces with the constructor program. Both the user interface object and the escort object are stored at the appropriate locale in the archive, but when an archived object is requested, the related escort object is queried and streams out the attributes of the enclosed UI object. The escort object itself remains in the archive.

Claims

exact text as granted — not AI-modified
Having thus described our invention, what we claim as new, and desire to secure by Letters Patent is:  
     
       1. A localized user interface object archive system for use in a computer system having a storage means for translating a first application program which includes language specific to a first locale to a second application program includes language specific to a second locale under control of a program developer, the archive system comprising: 
       means controlled by the developer for creating a hierarchical locale tree in the storage means, the locale tree having a root locale and at least one other locale level representing the second locale;  
       means controlled by the developer for creating, in the root locale, a first plurality of user interface objects, each of which includes language specific to the first locale;  
       means controlled by the developer for creating, in the root locale, a second plurality of user interface objects, each of which does not include language specific to the first locale;  
       means controlled by the developer for storing the second plurality of user interface objects in the other locale level; and  
       means controlled by the second application program for traversing the locale tree starting at the other locale level and proceeding to the root locale, the traversing means assembling a set of user interface objects from the user interface objects in the other locale level and user interface objects in the root locale that are not located in the other locale level.  
     
     
       2. A localized user interface object archive system according to  claim 1  wherein the storage means comprises a shared library and the locale tree creation means comprises means for creating a hierarchical locale tree associated with the shared library. 
     
     
       3. A localized user interface object archive system according to  claim 1  further including means controlled by the developer for creating an archive viewer object from a predefined object class template and the  a shared library, the archive viewer object displaying the hierarchical locale tree stored in the shared library. 
     
     
       4. A localized user interface object archive system according to  claim 1  wherein the traversing means operates during runtime of the second application program. 
     
     
       5. A localized user interface object archive system according to  claim 1  wherein the traversing means comprises means for retrieving copies of user interface objects from the user interface objects stored in the other locale level and copies of user interface objects in the root locale that are not located in the other locale level. 
     
     
       6. A user interface object archive system for use in a computer system having a display and storage means for translating a first application program which generates screen displays on the display which include language specific to a first locale to a second application program which generates screen displays on the display which include language specific to a second locale, the archive system comprising: 
       means for creating a first plurality of user interface objects, each of which generates a screen display including language specific to the first locale on the display screen;  
       means for creating a second plurality of user interface objects, each of which generates a screen display which does not include language specific to the first locale on the display screen;  
       means for creating a hierarchical locale tree in the storage means, the locale tree having a root locale and at least one other locale level representing the second locale;  
       means for storing the first plurality of user interface objects in the root locale;  
       means for storing the second plurality of user interface objects in the root locale and in the other locale level; and  
       means for traversing the locale tree starting at the other locale level and proceeding to the root locale, the traversing means assembling a set of user interface objects from the user interface objects in the other locale level and user interface objects in the root locale that are not located in the other locale level.  
     
     
       7. A user interface object archive system according to  claim 6  wherein the storage means comprises a shared library and the locale tree creation means comprises means for creating a hierarchical locale tree associated with the shared library. 
     
     
       8. A user interface object archive system according to  claim 6  further including means for creating an archive viewer object from a predefined object class template and the  a shared library, the archive viewer object displaying the hierarchical locale tree stored in the shared library. 
     
     
       9. A user interface object archive system according to  claim 8  wherein the archive viewer object comprises means for displaying the hierarchical locale tree in a first format and means for displaying the hierarchical locale tree in a second format. 
     
     
       10. A user interface object archive system according to  claim 6  wherein the traversing means operates during runtime of the second application program. 
     
     
       11. A user interface object archive system according to  claim 6  wherein the traversing means comprises means for retrieving copies of user interface objects from the user interface objects stored in the other locale level and copies of user interface objects in the root locale that are not located in the other locale level. 
     
     
       12. A method for use in a computer system having a storage means for translating a first application program which includes language specific to a first locale to a second application program includes language specific to a second locale under control of a program developer, the method comprising the steps of: 
       A. creating a hierarchical locale tree in the storage means, the locale tree having a root locale and at least one other locale level representing the second locale;  
       B. creating, in the root locale, a first plurality of user interface objects, each of which includes language specific to the first locale;  
       C. creating, in the root locale, a second plurality of user interface objects, each of which does not include language specific to the first locale;  
       D. storing the second plurality of user interface objects in the other locale level; and  
       E. traversing the locale tree starting at the other locale level and proceeding to the root locale in order to assemble a set of user interface objects from the user interface objects in the other locale level and user interface objects in the root locale that are not located in the other locale level.  
     
     
       13. A method according to  claim 12  wherein the storage means comprises a shared library and step A comprises the step of: 
       A1. creating a hierarchical locale tree associated with the shared library.  
     
     
       14. A method according to  claim 12  further comprising the step of: 
       F. creating an archive viewer object from a predefined object class template and the shared library, the archive viewer object displaying the hierarchical locale tree stored in the shared library.  
     
     
       15. A method according to  claim 12  wherein step D comprises the step of: 
       D1. operating the traversing means during runtime of the second application program.  
     
     
       16. A method according to  claim 12  wherein step D comprises the steps of: 
       D2. retrieving copies of user interface objects from the user interface objects stored in the other locale level; and  
       D3. retrieving copies of user interface objects in the root locale that are not located in the other locale level.  
     
     
       17. A method for use in a computer system having a display and storage means for translating a first application program which generates screen displays on the display which include language specific to a first locale to a second application program which generates screen displays on the display which include language specific to a second locale, the method comprising the steps of: 
       A. creating a first plurality of user interface objects, each of which generates a screen display including language specific to the first locale on the display screen;  
       B. creating a second plurality of user interface objects, each of which generates a screen display which does not include language specific to the first locale on the display screen;  
       C. creating a hierarchical locale tree in the storage means, the locale tree having a root locale and at least one other locale level representing the second locale;  
       D. storing the first plurality of user interface objects in the root locale;  
       E. storing the second plurality of user interface objects in the root locale and in the other locale level; and  
       F. traversing the locale tree starting at the other locale level and proceeding to the root locale, the traversing means assembling a set of user interface objects from the user interface objects in the other locale level and user interface objects in the root locale that are not located in the other locale level.  
     
     
       18. A method according to  claim 17  wherein the storage means comprises a shared library and wherein step C comprises the step of: 
       C1. creating a hierarchical locale tree associated with the shared library.  
     
     
       19. A method according to  claim 17  further comprising the step of: 
       G. creating an archive viewer object from a predefined object class template and the shared library, the archive viewer object displaying the hierarchical locale tree stored associated with the shared library.  
     
     
       20. A method according to  claim 19  wherein step G comprises the steps of: 
       G1. displaying the hierarchical locale tree in a first format; and  
       G2. displaying the hierarchical locale tree in a second format.  
     
     
       21. A method according to  claim 17  wherein step F comprises the step of: 
       F1. operating the traversing means during runtime of the second application program.  
     
     
       22. A method according to  claim 17  wherein step F comprises the steps of: 
       F2. retrieving copies of user interface objects from the user interface objects stored in the other locale level; and  
       F3. retrieving copies of user interface objects in the root locale that are not located in the other locale level.  
     
     
       23. A computer program product for enabling a computer system having a storage means to translate a first application program, which includes language specific to a first locale, into a second application program including language specific to a second locale, the computer program product including a computer- useable means for storing therein computer - readable code comprising:    
       
         program code for creating, in the storage means, a hierarchical locale tree having a root locale and another locale level representing the second locale;  
       
       
         program code for creating, in the root locale, a first plurality of user interface objects each including language specific to the first locale;  
       
       
         program code for creating, in the root locale, a second plurality of user interface objects each excluding language specific to the first locale;  
       
       
         program code for storing the second plurality of user interface objects in the other locale level; and  
       
       
         program code for traversing the hierarchical locale tree starting at the other locale level and proceeding to the root locale to assemble, from the user interface objects in the other locale level and those in the root locale, a set of user interface objects that are absent from the other locale level. 
       
     
     
       24. The computer program product of  claim 23  wherein the storage means comprises a shared library, further comprising: 
       
         program code for creating a hierarchical locale tree associated with the shared library. 
       
     
     
       25. The computer program product of  claim 23  further comprising: 
       
         program code for creating, from a predefined object class template and a shared library, an archive viewer object for displaying the hierarchical locale tree associated with the shared library. 
       
     
     
       26. The computer program product of  claim 23  wherein: 
       
         the program code for traversing the hierarchical locale tree is executed during the second application program runtime. 
       
     
     
       27. The computer program product of  claim 23  further comprising: 
       
         program code for retrieving, from the other locale level, copies of the user interface objects; and  
       
       
         program code for retrieving, from the root locale, copies of the user interface objects that are not located in the other locale level. 
       
     
     
       28. A computer program product for enabling a computer system having a display screen and storage means to translate a first application program that generates, on the display screen, images including language specific to a first locale, into a second application program that generates, on the display screen, images including language specific to a second locale, the computer program product including a computer- useable means for storing therein computer - readable code comprising:    
       
         program code for creating a first plurality of user interface objects each for generating, on the display screen, an image including language specific to the first locale;  
       
       
         program code for creating a second plurality of user interface objects each for generating, on the display screen, an image excluding language specific to the first locale;  
       
       
         program code for creating, in the storage means, a hierarchical locale tree having a root locale and another locale level representing the second locale;  
       
       
         program code for storing the first plurality of user interface objects in the root locale;  
       
       
         program code for storing the second plurality of user interface objects in the root locale and in the other locale level; and  
       
       
         program code for traversing the hierarchical locale tree starting at the other locale level and proceeding to the root locale to assemble, from the user interface objects in the other locale level and those in the root locale, a set of user interface objects that are absent from the other locale level. 
       
     
     
       29. The computer program product of  claim 28  wherein the storage means comprises a shared library, further comprising: 
       
         program code for creating a hierarchical locale tree associated with the shared library. 
       
     
     
       30. The computer program product of  claim 28  further comprising: 
       
         program code for creating, from a predefined object class template and a shared library, an archive viewer object for displaying the hierarchical locale tree associated with the shared library. 
       
     
     
       31. The computer program product of  claim 30  further comprising: 
       
         program code for displaying the hierarchical locale tree in a first format; and  
       
       
         program code for displaying the hierarchical locale tree in a second format. 
       
     
     
       32. The computer program product of  claim 28  wherein: 
       
         the program code for traversing the hierarchical locale tree is executed during the second application program runtime. 
       
     
     
       33. The computer program product of  claim 28  further comprising: 
       
         program code for retrieving, from the other locale level, copies of the user interface objects; and  
       
       
         program code for retrieving, from the root locale, copies of the user interface objects that are not located in the other locale level. 
       
     
     
       34. A method for enabling application program translation among locales by a computer having memory, a display screen and an operating system, comprising the steps of: 
       ( a )  providing class libraries for storage in the computer memory from which    
       (   1   )  a first user interface object may be instantiated to cause the display on the display screen of an image including language specific to a first locale, and    
       (   2   )  a second user interface object may be instantiated to cause the display on the display screen of an image including language specific to a second locale; and    
       ( b )  providing a run - time environment to    
       (   1   )  support the instantiation of the first and second user interface objects,    
       (   2   )  support the creation of a hierarchical locale tree having a root locale and another locale level representing the second locale,    
       (   3   )  support the storing of a plurality of the first user interface objects in the root locale;    
       (   4   )  support the storing of a plurality of the second user interface objects in the root locale and in the other locale level; and    
       (   5   )  support the traverse of the hierarchical locale tree starting at the other locale level and proceeding to the root locale to assemble, from the user interface objects in the other locale level and those in the root locale, a set of user interface objects that are absent from the other locale level.   
     
     
       35. The method of  claim 34  wherein the computer memory comprises a shared library, and the runtime environment further supports: 
       
         creating a hierarchical locale tree associated with the shared library. 
       
     
     
       36. The method of  claim 34  wherein the class libraries further comprise: 
       
         an archive viewer class from which an archive viewer object may be instantiated for displaying the hierarchical locale tree associated with the shared library. 
       
     
     
       37. The method of  claim 36  wherein the class libraries further comprise: 
       
         an archive viewer class from which a first archive viewer object may be instantiated for displaying the hierarchical locale tree in a first format; and  
       
       
         an archive viewer class from which a second archive viewer object may be instantiated for displaying the hierarchical locale tree in a second format. 
       
     
     
       38. The method of  claim 34  wherein the runtime environment further supports: 
       
         traversing the hierarchical locale tree during the second application program runtime. 
       
     
     
       39. The method of  claim 34  wherein the runtime environment further supports: 
       
         retrieving, from the other locale level, copies of the user interface objects; and  
       
       
         retrieving, from the root locale, copies of the user interface objects that are not located in the other locale level.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.