US20040111254A1 - User defined text NLS enablement - Google Patents
User defined text NLS enablement Download PDFInfo
- Publication number
- US20040111254A1 US20040111254A1 US10/313,504 US31350402A US2004111254A1 US 20040111254 A1 US20040111254 A1 US 20040111254A1 US 31350402 A US31350402 A US 31350402A US 2004111254 A1 US2004111254 A1 US 2004111254A1
- Authority
- US
- United States
- Prior art keywords
- message
- variant
- identification
- text
- relational table
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/454—Multi-language systems; Localisation; Internationalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Definitions
- the present invention is directed to the field of data processing, and more particularly to data processing systems which allow concurrent multi-lingual use.
- each language application may have unique attributes that must be conveyed to the system. For instance, a language may not have voice recognition capability installed.
- U.S. Pat. No. 6,327,593 “Automated System and Method for Capturing and Managing User Knowledge within a Search System” to Goiffon and assigned to Unisys describes a system and method is provided for allowing users to interactively modify a search index used in performing concept-based searches.
- the system includes a repository for storing a network of natural language concepts.
- the repository further stores associations between selected ones of the natural language concepts and other data items that are cataloged according to the natural language concepts, wherein the data items may be stored within the repository, or on one or more remote systems.
- a user provides one or more natural language concepts as a search query used to locate associated ones of the data items. Subsequent iterations of a search may be performed to modify the scope of the search.
- the user may create one or more new associations, wherein each association relates any of the one or more natural language concepts included within a query with any selected one of the data items located during any iteration of the search. Similarly, the user may delete selected associations existing between located ones of the natural language concepts and selected ones of the data items. This modification of the knowledge base allows the search index to evolve to reflect the needs of the user.
- the present invention provides a novel relational database implemented in a relational database environment such as DB2 (available from IBM) that utilizes powerful SQL Query programs (available from IBM) to enable an application program to extract variant messages according to a preferred variant.
- the database is used to provide a message table with multiple keys associated with each message therein.
- the message table comprises a Language ID Key column, a Message ID Key column and a Message column.
- An application program needs to retrieve a message.
- the Message ID Key is known by the application program (for example, it may be a field in an HTML file for a web Browser display).
- the application program also knows the Language ID Key of the present user.
- This may be supplied to the application in a variety of ways including a straight forward query to the user translated into an ID by a lookup table technique.
- the application program performs a query (preferably a DB2 SQL query) to find the message that corresponds to the Message ID Key and the Language ID key.
- the Message Table system comprises multiple tables that are linked by a relational database means such as DB2.
- a relational database means such as DB2.
- the Message Table may be linked to a Language Table by a many-to-one link of the Language ID Key of each table.
- messages are entered into the Message table by supplying the Language ID Key and Message Text along with a new Message ID Key where the new message ID Key is automatically generated according to a predetermined algorithm such as a next sequential number generator.
- a predetermined algorithm such as a next sequential number generator.
- the same new message ID key is used for each language variant of the message text entered and only the Language ID Key and Message text are different.
- FIG. 1 depicts an example computer system
- FIG. 2 depicts an example computer network system
- FIG. 3 depicts an example Message Table according to the present invention
- FIG. 4 depicts a Relational Database system according to the present invention
- FIG. 5 depicts an alternate Relational Database system according to the present invention
- FIG. 6 depicts example tables of the present invention
- FIG. 7 depicts example tables of the present invention
- FIG. 8 depicts operation of the present invention.
- FIG. 9 depicts operation of the present invention.
- FIG. 1 illustrates a representative workstation hardware system in which the present invention may be practiced.
- the system 100 of FIG. 1 comprises a representative single user computer workstation 101 , such as a personal computer, including related peripheral devices.
- the workstation 101 includes a microprocessor 106 and a bus employed to connect and enable communication between the microprocessor 106 and the components of the workstation 101 in accordance with known techniques.
- the workstation 101 typically includes a user interface adapter, which connects the microprocessor 106 via the bus to one or more interface devices, such as a keyboard 104 , mouse 103 , a Printer/scanner 110 and/or other interface devices, which can be any user interface device, such as a touch sensitive screen, digitized entry pad, etc.
- the bus also connects a display device 102 , such as an LCD screen or monitor, to the microprocessor 106 via a display adapter.
- the bus also connects the microprocessor 106 to memory 105 and long-term storage 107 which can include a hard drive, diskette drive, tape drive, etc.
- the workstation 101 may communicate with other computers or networks of computers by way of a network adapter capable of communicating with a network 109 .
- Example network adapters are communications channels, token ring, ethernet or modems.
- the workstation 101 may communicate using a wireless interface, such as a CDPD (cellular digital packet data) card.
- CDPD cellular digital packet data
- the workstation 101 may be associated with such other computers in a local area network (LAN) or a wide area network (WAN), or the workstation 101 can be a client in a client/server arrangement with another computer, etc. All of these configurations, as well as the appropriate communications hardware and software, are known in the art.
- FIG. 2 illustrates a data processing network 200 in which the present invention may be practiced.
- the data processing network 200 may include a plurality of individual networks, such as wireless network and a wire network, each of which may include a plurality of individual workstations 101 .
- one or more LANs may be included, where a LAN may comprise a plurality of intelligent workstations coupled to a host processor.
- the networks may also include mainframe computers or servers, such as a gateway computer (client server 206 ) or application server (remote server 208 which may access a data repository).
- a gateway computer 206 serves as a point of entry into each network 207 .
- a gateway is needed when connecting one networking protocol to another.
- the gateway 206 may be preferably coupled to another network (the Internet 207 for example) by means of a communications link.
- the gateway 206 may also be directly coupled to one or more workstations 101 using a communications link.
- the gateway computer may be implemented utilizing an IBM eServer zSeries 900 machine available from IBM. (IBM and zSeries are trademarks of IBM).
- the gateway computer 206 may also be coupled to a storage device (such as data repository). Further, the gateway 206 may be directly or indirectly coupled to one or more workstations 101 such as clients 1 - 4 201 - 204 as shown.
- the gateway computer 206 may be located a great geographic distance from the network, and similarly, the workstations 101 may be located a substantial distance from the networks.
- the network may be located in California, while the gateway 206 may be located in Texas, and one or more of the workstations 101 may be located in New York.
- the workstations 101 may connect to the wireless network using a networking protocol such as the Transmission Control Protocol/Internet Protocol (“TCP/IP”) over a number of alternative connection media, such as cellular phone 203 , radio frequency networks, satellite networks, etc.
- TCP/IP Transmission Control Protocol/Internet Protocol
- the wireless network preferably connects to the gateway 206 using a network connection such as TCP or UDP (User Datagram Protocol) over IP, X.25, Frame Relay, ISDN (Integrated Services Digital Network), PSTN (Public Switched Telephone Network), etc.
- the workstations 201 - 204 may alternatively connect directly to the gateway 206 using dial connections. Further, the wireless network and wired network may connect to one or more other networks, in an analogous manner to that depicted in FIG. 2.
- Software programming code which embodies the present invention is typically accessed by the microprocessor 106 of the workstation 101 (clients 1 - 5 201 - 205 ) or server 206 from long-term storage media 107 , such as a CD-ROM drive or hard drive.
- the software programming code comprising the present invention may be embodied on any of a variety of known media for use with a data processing system, such as a diskette, hard drive, or CD-ROM.
- the code may be distributed on such media, or may be distributed to users from the memory or storage of one computer system over a network to other computer systems for use by users of such other systems.
- the programming code 111 may be embodied in the memory 105 , and accessed by the microprocessor 106 using the processor bus.
- Such programming code includes an operating system which controls the function and interaction of the various computer components and one or more application programs.
- One application program 112 may be the application of the present invention.
- Program code is normally paged from dense storage media 107 to high speed memory 105 where it is available for processing by the processor 106 .
- the techniques and methods for embodying software programming code in memory, on physical media, and/or distributing software code via networks are well known and will not be further discussed herein.
- a user of the present invention may connect his computer to a server using a wireline connection, or a wireless connection.
- Wireline connections are those that use physical media such as cables and telephone lines, whereas wireless connections use media such as satellite links, radio frequency waves, and infrared waves.
- Many connection techniques can be used with these various media, such as: using the computer's modem to establish a connection over a telephone line; using a LAN card such as Token Ring or Ethernet; using a cellular modem to establish a wireless connection; etc.
- the user's computer may be any type of computer processor, including laptop, handheld or mobile computers; vehicle-mounted devices; desktop computers; mainframe computers; etc., having processing and communication capabilities.
- the remote server can be one of any number of different types of computer which have processing and communication capabilities. These techniques are well known in the art, and the hardware devices and software which enable their use are readily available.
- the user's computer will be referred to equivalently as a “workstation”, “device”, or “computer”, and use of any of these terms or the term “server” refers to any of the types of computing devices described above.
- the present invention is implemented as one or more computer software programs 111 .
- the implementation of the software of the present invention may operate on a user's workstation, as one or more modules or applications 111 (also referred to as code subroutines, or “objects” in object-oriented programming) which are invoked upon request.
- the software may operate on a server in a network, or in any device capable of executing the program code implementing the present invention.
- the logic implementing this invention may be integrated within the code of an application program 112 , or it may be implemented as one or more separate utility modules which are invoked by that application 112 , without deviating from the inventive concepts disclosed herein.
- the application 112 may be executing in a Web environment, where a Web server provides services in response to requests from a client connected through the Internet.
- Application 1 in one embodiment comprises the present invention.
- the application may be executing in a corporate intranet or extranet, or in any other network environment.
- Configurations for the environment include a client/server network, Peer-to-Peer networks (wherein clients interact directly by performing both client and server function) as well as a multi-tier environment. These environments and configurations are well known in the art.
- the present invention provides a message table with multiple keys associated with each message therein.
- the message table comprises one or more “Variant” ID key's exemplified herein by a Language ID Key column 302 , one or more Message ID Keys column 303 and a Message text column 304 .
- Other arrangements are possible including having a pointer in the message 304 column to the location of the actual message in another table.
- the invention is not limited to having text messages, other embodiments would support messages that provided audio, video, program language or other computer readable format files well known in the art.
- the application program needs to retrieve a message text, it preferably uses an SQL query.
- the Message ID Key is known by the application program (for example, it may be a field in an HTML file for a web Browser display).
- the application program also knows the Language ID Key of the present user. This may be supplied to the application in a variety of ways including a straight forward query to the user translated into an ID by a lookup table technique.
- the application program performs a query (such as a DB2 SQL query) to find the message that corresponds to the Message ID Key and the Language ID key.
- Example records 305 - 308 demonstrate the functionality of the table. In Record 305 , an American language_ID key of “010” is associated with a Message_ID key of A13 which specifies “OUT OF SERVICE”.
- an application program wants to present the message of Message_ID A13, it queries the table with the Message_ID code “A13” and Language ID “010”. In another environment, the same message is required. Once again the application program queries the message table 301 with message_ID “A13” but this time the language_ID key of the user is “154” which represents Message text 304 “GABROKEN”. Thus, the application is able to retrieve a message from the table in the language of its choice.
- record 307 contains the message “GOOD MORNING” according to Message_ID key 3B2 in a language used by American hotel chain customers (Language_ID 010). However, a pseudo language for Boxers from South Philadelphia (having a Language_ID key of 145) provides
- the Message Table system 400 comprises multiple tables 402 - 404 that are linked by a relational database means such as DB2.
- the Message Table 402 may be linked to a Language Table 404 by a many-to-one link (Link 1 407 ) of the Language ID Key 302 409 of each table 402 404 .
- the Message_Table 402 may be linked to a MSG_ID Table 403 by a many-to-one link (Link 2 408 ) of the Message ID Key 303 412 of each table 402 403 .
- An application program 401 provides Language_ID keys 405 and Message_ID keys 406 for use in querying the system 402 - 404 .
- the system of FIG. 4 402 - 4 - 4 comprises an additional Name_Txt routine 501 which translates the application program's 506 request (Name_Txt 505 ) into the appropriate Message_ID 406 .
- messages are entered into the Message table by supplying the Language ID Key and Message Text along with a new Message ID Key where the new message ID Key is automatically generated according to a predetermined algorithm such as a next sequential number generator.
- the same new message ID key is used for each language entered and only the Language ID Key and Message text are new.
- an authorized agent can edit (Add, Delete, Modify) message text that is shared by a multiplicity of users.
- a message_table 402 is “joined” to a “Toys” table 601 comprising hundreds of entries.
- the entries of the “Toys” table 601 would include an ID code column 603 and a TEXT_ID column 604 .
- one record 605 describes a toy with an ID of 1 that has a TEXT_ID of 1003.
- For each entry in the “Toys” table 601 there is exactly one entry in the message table 602 per language variant.
- a National language variant is only one example of a variant, other variants may be useful such as a customer ID and such variants can be combined in a pseudo variant or separately listed in columns in the message table 402 .
- the message table 602 comprises a Language_ID key column 610 , a TEXT_ID message key column 611 , and a TEXT message column 612 .
- FIG. 7 is an example of the SQL “Temporary Table” 701 of linked attributes would look like for the English query.
- the ID column 705 lists the IDs of the toys, the TEXT column 706 lists the corresponding English text for each toy, Language_ID column 707 lists the Language_ID value (1), the TEXT_ID column from the TOYS table 708 and from the Message Table 709 lists the TEXT_ID for each toy.
- This query asks to do the same thing as the sorting query but only include those entries in TOYS where the description of the toy (found in the TEXT column 721 ) contains the characters ‘CAL’.
- the same type of “Temporary file” table is created 702 but it only contains the entries which match this search condition 726 . That is, there would only be one row in French 626 but no rows in English.
- the application can search and sort and once the user selects what they want, the ID in the TOYS table 601 which would represent a product number for instance, could be added to the user's order for use by the department shipping the toy to the customer.
- a generic program takes Language_ID and TEXT_ID as input and returns the TEXT as output.
- This program is called dynamically as the panel or web page is being built for display to the end user and populate the panel with the correct language version(s) of the text.
- this invention provides a process which uses a number index for each piece of text which could potentially be seen or entered or changed by an end user and a language identifier along with this index is the key to the text data source. Additionally, by allowing all text to be translated by the end user and placed into the data source, the invention provides the ability of custom and user entered text to be displayed in multiple languages within one installation of a program according to the invention. By using a relational data source for these text messages and joining the various other data sources to the text data source, the invention provides sorting and searching for each language independently of each other language.
- Messages can be either system-defined or user-defined providing seamless and generic internationalization for all text that is sent or displayed through the user interface(s).
- the user-defined Text message keys are stored in the database 801
- user-defined variant keys including National Language identifiers are stored in the database 802
- user-defined translations of the text messages are stored in the database according to their variant key 803 .
- the database When the database is queried, it receives a language preference variant key 805 , it receives an ordered query request 806 , it receives table join information if multiple tables are employed 807 , and it returns message text information in a predetermined language 808 .
- the application program selects a preferred language key 901 , performs a query 902 , and displays the message in the preferred language 903 .
- the system receives the preferred language key 904 , receives the query (preferably SQL) 905 , receives relational database join information 906 and returns the message in the preferred language.
- the query preferably SQL
Abstract
A system, method and program product for storing relational tables wherein the tables comprises alternative messages according to a variant such as a national language. The relational tables further comprise at least a message key specifying a message and a variant key specifying a variant for selecting the appropriate message from the alternative messages. For example, the relational tables comprise language variant=1 for English and Variant=2 for French. An SQL query searches or sorts the list relational tables for entries appropriate for the language of interest. The relational table entries can be edited and new alternative messages are assigned a new message key according to a predetermined algorithm.
Description
- The present invention is directed to the field of data processing, and more particularly to data processing systems which allow concurrent multi-lingual use.
- The change from centralized, batch operation of data processing systems to distributed, interactive usage has resulted in more users being directly involved with these systems. When a data processing system is used in a country with multiple national languages or is accessed by user terminals located in different countries with different national languages, the system must accept commands and respond in the national language or languages of the users. In the past, support for national languages has been accomplished by placing all messages in a collection that can be replaced either completely such that all users of a given system will see messages in a selected national language, or on a user by user basis such that each user will see messages of one national language. The first approach fails to offer a solution for users in a country, such as Canada, where there is more than one national language or in a multinational network environment where a company or organization my have computer users in many nations having many languages.
- Furthermore, each language application may have unique attributes that must be conveyed to the system. For instance, a language may not have voice recognition capability installed.
- It is also desirable to support pseudo language differences. For example, it may be desirable to phrase a computer error message directed to an unskilled operator “Call Service at 800 555-5555” but to a system programmer “Error Msg 6sg7”. Similarly, it may be desirable to provide message restriction or special language to departments within an organization or to different companies sharing the same system.
- U.S. Pat. No. 6,327,593 “Automated System and Method for Capturing and Managing User Knowledge within a Search System” to Goiffon and assigned to Unisys describes a system and method is provided for allowing users to interactively modify a search index used in performing concept-based searches. The system includes a repository for storing a network of natural language concepts. The repository further stores associations between selected ones of the natural language concepts and other data items that are cataloged according to the natural language concepts, wherein the data items may be stored within the repository, or on one or more remote systems. A user provides one or more natural language concepts as a search query used to locate associated ones of the data items. Subsequent iterations of a search may be performed to modify the scope of the search. After successful search results are obtained, the user may create one or more new associations, wherein each association relates any of the one or more natural language concepts included within a query with any selected one of the data items located during any iteration of the search. Similarly, the user may delete selected associations existing between located ones of the natural language concepts and selected ones of the data items. This modification of the knowledge base allows the search index to evolve to reflect the needs of the user.
- U.S. Pat. No. 4,615,002 to Innes and assigned to IBM “Concurrent Multi-lingual use in Data Processing System” provides an index in a table of messages to select the massage appropriate for a predetermined language.
- The present invention provides a novel relational database implemented in a relational database environment such as DB2 (available from IBM) that utilizes powerful SQL Query programs (available from IBM) to enable an application program to extract variant messages according to a preferred variant. In an embodiment, the database is used to provide a message table with multiple keys associated with each message therein. For example, the message table comprises a Language ID Key column, a Message ID Key column and a Message column. An application program needs to retrieve a message. The Message ID Key is known by the application program (for example, it may be a field in an HTML file for a web Browser display). The application program also knows the Language ID Key of the present user. This may be supplied to the application in a variety of ways including a straight forward query to the user translated into an ID by a lookup table technique. The application program performs a query (preferably a DB2 SQL query) to find the message that corresponds to the Message ID Key and the Language ID key.
- In optional embodiments, the Message Table system comprises multiple tables that are linked by a relational database means such as DB2. For example the Message Table may be linked to a Language Table by a many-to-one link of the Language ID Key of each table.
- In one embodiment, messages are entered into the Message table by supplying the Language ID Key and Message Text along with a new Message ID Key where the new message ID Key is automatically generated according to a predetermined algorithm such as a next sequential number generator. In the embodiment, the same new message ID key is used for each language variant of the message text entered and only the Language ID Key and Message text are different.
- It is therefore an object of the present invention to provide a message translation service comprising a Message Table comprising a Language ID Key, a Message ID Key and a Message Text.
- It is another object of the invention to supplement the Message Table with additional tables wherein the additional tables and Message Table comprise a relational database.
- It is another object of the invention to search or sort the tables using SQL queries.
- It is another object of the invention to automatically generate Message ID Keys according to a predetermined algorithm.
- It is another object of the invention to access a desired version of a message in the message table using a Language ID Key and a Message ID Key.
- It is another object of the invention to provide a language ID that represents any one of a national language, a pseudo language, a regional language, an organization language or a skill level language.
- It is another object of the invention to translate the message obtained to any one of a text display, an audio message, a video message, a network message or a mechanical operation.
- These and other objects will be apparent to one skilled in the art from the following detailed description of the invention taken in conjunction with the accompanying drawings in which:
- FIG. 1 depicts an example computer system;
- FIG. 2 depicts an example computer network system;
- FIG. 3 depicts an example Message Table according to the present invention;
- FIG. 4 depicts a Relational Database system according to the present invention;
- FIG. 5 depicts an alternate Relational Database system according to the present invention;
- FIG. 6 depicts example tables of the present invention;
- FIG. 7 depicts example tables of the present invention;
- FIG. 8 depicts operation of the present invention; and
- FIG. 9 depicts operation of the present invention.
- FIG. 1 illustrates a representative workstation hardware system in which the present invention may be practiced. The
system 100 of FIG. 1 comprises a representative singleuser computer workstation 101, such as a personal computer, including related peripheral devices. Theworkstation 101 includes amicroprocessor 106 and a bus employed to connect and enable communication between themicroprocessor 106 and the components of theworkstation 101 in accordance with known techniques. Theworkstation 101 typically includes a user interface adapter, which connects themicroprocessor 106 via the bus to one or more interface devices, such as akeyboard 104,mouse 103, a Printer/scanner 110 and/or other interface devices, which can be any user interface device, such as a touch sensitive screen, digitized entry pad, etc. The bus also connects adisplay device 102, such as an LCD screen or monitor, to themicroprocessor 106 via a display adapter. The bus also connects themicroprocessor 106 tomemory 105 and long-term storage 107 which can include a hard drive, diskette drive, tape drive, etc. - The
workstation 101 may communicate with other computers or networks of computers by way of a network adapter capable of communicating with anetwork 109. Example network adapters are communications channels, token ring, ethernet or modems. Alternatively, theworkstation 101 may communicate using a wireless interface, such as a CDPD (cellular digital packet data) card. Theworkstation 101 may be associated with such other computers in a local area network (LAN) or a wide area network (WAN), or theworkstation 101 can be a client in a client/server arrangement with another computer, etc. All of these configurations, as well as the appropriate communications hardware and software, are known in the art. - FIG. 2 illustrates a
data processing network 200 in which the present invention may be practiced. Thedata processing network 200 may include a plurality of individual networks, such as wireless network and a wire network, each of which may include a plurality ofindividual workstations 101. Additionally, as those skilled in the art will appreciate, one or more LANs may be included, where a LAN may comprise a plurality of intelligent workstations coupled to a host processor. - Still referring to FIG. 2, the networks may also include mainframe computers or servers, such as a gateway computer (client server206) or application server (
remote server 208 which may access a data repository). Agateway computer 206 serves as a point of entry into eachnetwork 207. A gateway is needed when connecting one networking protocol to another. Thegateway 206 may be preferably coupled to another network (theInternet 207 for example) by means of a communications link. Thegateway 206 may also be directly coupled to one ormore workstations 101 using a communications link. The gateway computer may be implemented utilizing an IBM eServer zSeries 900 machine available from IBM. (IBM and zSeries are trademarks of IBM). - The
gateway computer 206 may also be coupled to a storage device (such as data repository). Further, thegateway 206 may be directly or indirectly coupled to one ormore workstations 101 such as clients 1-4 201-204 as shown. - Those skilled in the art will appreciate that the
gateway computer 206 may be located a great geographic distance from the network, and similarly, theworkstations 101 may be located a substantial distance from the networks. For example, the network may be located in California, while thegateway 206 may be located in Texas, and one or more of theworkstations 101 may be located in New York. Theworkstations 101 may connect to the wireless network using a networking protocol such as the Transmission Control Protocol/Internet Protocol (“TCP/IP”) over a number of alternative connection media, such ascellular phone 203, radio frequency networks, satellite networks, etc. The wireless network preferably connects to thegateway 206 using a network connection such as TCP or UDP (User Datagram Protocol) over IP, X.25, Frame Relay, ISDN (Integrated Services Digital Network), PSTN (Public Switched Telephone Network), etc. The workstations 201-204 may alternatively connect directly to thegateway 206 using dial connections. Further, the wireless network and wired network may connect to one or more other networks, in an analogous manner to that depicted in FIG. 2. - Software programming code which embodies the present invention is typically accessed by the
microprocessor 106 of the workstation 101 (clients 1-5 201-205) orserver 206 from long-term storage media 107, such as a CD-ROM drive or hard drive. The software programming code comprising the present invention may be embodied on any of a variety of known media for use with a data processing system, such as a diskette, hard drive, or CD-ROM. The code may be distributed on such media, or may be distributed to users from the memory or storage of one computer system over a network to other computer systems for use by users of such other systems. - Alternatively, the
programming code 111 may be embodied in thememory 105, and accessed by themicroprocessor 106 using the processor bus. Such programming code includes an operating system which controls the function and interaction of the various computer components and one or more application programs. Oneapplication program 112 may be the application of the present invention. Program code is normally paged fromdense storage media 107 tohigh speed memory 105 where it is available for processing by theprocessor 106. The techniques and methods for embodying software programming code in memory, on physical media, and/or distributing software code via networks are well known and will not be further discussed herein. - A user of the present invention may connect his computer to a server using a wireline connection, or a wireless connection. Wireline connections are those that use physical media such as cables and telephone lines, whereas wireless connections use media such as satellite links, radio frequency waves, and infrared waves. Many connection techniques can be used with these various media, such as: using the computer's modem to establish a connection over a telephone line; using a LAN card such as Token Ring or Ethernet; using a cellular modem to establish a wireless connection; etc. The user's computer may be any type of computer processor, including laptop, handheld or mobile computers; vehicle-mounted devices; desktop computers; mainframe computers; etc., having processing and communication capabilities. The remote server, similarly, can be one of any number of different types of computer which have processing and communication capabilities. These techniques are well known in the art, and the hardware devices and software which enable their use are readily available. Hereinafter, the user's computer will be referred to equivalently as a “workstation”, “device”, or “computer”, and use of any of these terms or the term “server” refers to any of the types of computing devices described above.
- In the preferred embodiment, the present invention is implemented as one or more computer software programs111. The implementation of the software of the present invention may operate on a user's workstation, as one or more modules or applications 111 (also referred to as code subroutines, or “objects” in object-oriented programming) which are invoked upon request. Alternatively, the software may operate on a server in a network, or in any device capable of executing the program code implementing the present invention. The logic implementing this invention may be integrated within the code of an
application program 112, or it may be implemented as one or more separate utility modules which are invoked by thatapplication 112, without deviating from the inventive concepts disclosed herein. Theapplication 112 may be executing in a Web environment, where a Web server provides services in response to requests from a client connected through the Internet. Application 1 (112) in one embodiment comprises the present invention. In another embodiment, the application may be executing in a corporate intranet or extranet, or in any other network environment. Configurations for the environment include a client/server network, Peer-to-Peer networks (wherein clients interact directly by performing both client and server function) as well as a multi-tier environment. These environments and configurations are well known in the art. - The present invention provides a message table with multiple keys associated with each message therein. For example, referring to FIG. 3, the message table comprises one or more “Variant” ID key's exemplified herein by a Language
ID Key column 302, one or more MessageID Keys column 303 and aMessage text column 304. Other arrangements are possible including having a pointer in themessage 304 column to the location of the actual message in another table. The invention is not limited to having text messages, other embodiments would support messages that provided audio, video, program language or other computer readable format files well known in the art. When the application program needs to retrieve a message text, it preferably uses an SQL query. The Message ID Key is known by the application program (for example, it may be a field in an HTML file for a web Browser display). The application program also knows the Language ID Key of the present user. This may be supplied to the application in a variety of ways including a straight forward query to the user translated into an ID by a lookup table technique. The application program performs a query (such as a DB2 SQL query) to find the message that corresponds to the Message ID Key and the Language ID key. Example records 305-308 demonstrate the functionality of the table. InRecord 305, an American language_ID key of “010” is associated with a Message_ID key of A13 which specifies “OUT OF SERVICE”. Thus when an application program wants to present the message of Message_ID A13, it queries the table with the Message_ID code “A13” and Language ID “010”. In another environment, the same message is required. Once again the application program queries the message table 301 with message_ID “A13” but this time the language_ID key of the user is “154” which representsMessage text 304 “GABROKEN”. Thus, the application is able to retrieve a message from the table in the language of its choice. - In another example,
record 307 contains the message “GOOD MORNING” according to Message_ID key 3B2 in a language used by American hotel chain customers (Language_ID 010). However, a pseudo language for Boxers from South Philadelphia (having a Language_ID key of 145) provides - In an embodiment, FIG. 4, the
Message Table system 400 comprises multiple tables 402-404 that are linked by a relational database means such as DB2. For example the Message Table 402 may be linked to a Language Table 404 by a many-to-one link (Link 1 407) of theLanguage ID Key 302 409 of each table 402 404. Similarly, theMessage_Table 402 may be linked to a MSG_ID Table 403 by a many-to-one link (Link 2 408) of theMessage ID Key 303 412 of each table 402 403. Anapplication program 401 providesLanguage_ID keys 405 andMessage_ID keys 406 for use in querying the system 402-404. - In another embodiment FIG. 5, the system of FIG. 4402-4-4 comprises an additional Name_Txt routine 501 which translates the application program's 506 request (Name_Txt 505) into the
appropriate Message_ID 406. - In one embodiment, messages are entered into the Message table by supplying the Language ID Key and Message Text along with a new Message ID Key where the new message ID Key is automatically generated according to a predetermined algorithm such as a next sequential number generator. In the embodiment, the same new message ID key is used for each language entered and only the Language ID Key and Message text are new. Thus, an authorized agent can edit (Add, Delete, Modify) message text that is shared by a multiplicity of users.
- In another DB2 embodiment, a
message_table 402 is “joined” to a “Toys” table 601 comprising hundreds of entries. Referring to FIG. 6, the entries of the “Toys” table 601 would include anID code column 603 and aTEXT_ID column 604. In the example, onerecord 605 describes a toy with an ID of 1 that has a TEXT_ID of 1003. For each entry in the “Toys” table 601, there is exactly one entry in the message table 602 per language variant. Of course a National language variant is only one example of a variant, other variants may be useful such as a customer ID and such variants can be combined in a pseudo variant or separately listed in columns in the message table 402. - Still referring to FIG. 6, the message table602 comprises a Language_ID
key column 610, a TEXT_ID messagekey column 611, and aTEXT message column 612. In onerecord 613, language_ID=1 (English) variant key incolumn 610 is related to TEXT_ID=1003 message IDkey column 611 and TXTmessage text column 612. Inrecord 614, the same TEXT_ID=1003 is used incolumn 611 but a different Language_ID=2column 610 associated with a French version of the TEXT message text field incolumn 612. - Using standard SQL programming, these tables are joined so they can be searched or sorted according to the needs of the
Application program 506. For example, the following SQL phrases are used to query the database: - SELECT ID, TEXT FROM TOYS, MESSAGE
- WHERE TOYS.TEXT_ID=MESSAGE.TEXT_ID
- AND MESSAGE.LANGUAGE_ID=1
- ORDER BY ASCENDING TEXT
- The example query “WHERE TOYS.TEXT_ID=MESSAGE.TEXT_ID” above asks to take each TEXT_ID 604 entry in TOYS table601 and join it with the
corresponding TEXT_ID entry 611 in the Message table 602 match and output theID 603 andTEXT 612 for the English version (Language_ID=1) and sort the resulting list of toys in TEXT 612 (ORDER) by theTEXT 612 field. If the Language_ID=2 (French), the sort order may result in a different order than the English result list. - FIG. 7 is an example of the SQL “Temporary Table”701 of linked attributes would look like for the English query. The
ID column 705 lists the IDs of the toys, theTEXT column 706 lists the corresponding English text for each toy,Language_ID column 707 lists the Language_ID value (1), the TEXT_ID column from the TOYS table 708 and from the Message Table 709 lists the TEXT_ID for each toy. - The temporary table702 for the French query shows the same results except the
message text 721 is French, the Language_ID=2 723 for French and the sort order is different from the English temporary table 701. - A variation on the SQL program performs a search:
- SELECT ID, TEXT FROM TOYS, MESSAGE
- WHERE TOYS.TEXT_ID=MESSAGE.TEXT_ID
- AND MESSAGE.LANGUAGE_ID=2
- AND TEXT LIKE ‘%CAL%’
- ORDER BY ASCENDING TEXT
- This query asks to do the same thing as the sorting query but only include those entries in TOYS where the description of the toy (found in the TEXT column721) contains the characters ‘CAL’. The same type of “Temporary file” table is created 702 but it only contains the entries which match this
search condition 726. That is, there would only be one row in French 626 but no rows in English. - In this way, the application can search and sort and once the user selects what they want, the ID in the TOYS table601 which would represent a product number for instance, could be added to the user's order for use by the department shipping the toy to the customer.
- Additionally, given the MESSAGE table602 by itself, there can be regular application messages stored in the multiple languages and referred to by the programs which display the messages only by number (TEXT_ID). Given the example above, there would have to be text which tells the customer to “Select the Toy you wish to purchase from the following list:” appended before the list.
- In this case, a generic program takes Language_ID and TEXT_ID as input and returns the TEXT as output. This program is called dynamically as the panel or web page is being built for display to the end user and populate the panel with the correct language version(s) of the text.
- The message table contains the information exemplified in FIG. 7703. Then, as a web page is being built for display by a browser, the program building the web page calls the generic message program giving Language_ID=2 and TEXT_ID=2003 which would enable the program to display the French text 734 received from the query asking the customer to select a toy.
- By implementing User Defined Text NLS Enablement, this invention provides a process which uses a number index for each piece of text which could potentially be seen or entered or changed by an end user and a language identifier along with this index is the key to the text data source. Additionally, by allowing all text to be translated by the end user and placed into the data source, the invention provides the ability of custom and user entered text to be displayed in multiple languages within one installation of a program according to the invention. By using a relational data source for these text messages and joining the various other data sources to the text data source, the invention provides sorting and searching for each language independently of each other language.
- Messages can be either system-defined or user-defined providing seamless and generic internationalization for all text that is sent or displayed through the user interface(s).
- Referring to FIG. 8, the process of creating the database is portrayed. The user-defined Text message keys are stored in the
database 801, user-defined variant keys including National Language identifiers are stored in thedatabase 802, user-defined translations of the text messages are stored in the database according to theirvariant key 803. - When the database is queried, it receives a language
preference variant key 805, it receives an orderedquery request 806, it receives table join information if multiple tables are employed 807, and it returns message text information in apredetermined language 808. - Referring to FIG. 9, the application program selects a
preferred language key 901, performs aquery 902, and displays the message in thepreferred language 903. - The system receives the
preferred language key 904, receives the query (preferably SQL) 905, receives relational database joininformation 906 and returns the message in the preferred language. - While the preferred embodiment of the invention has been illustrated and described herein, it is to be understood that the invention is not limited to the precise construction herein disclosed, and the right is reserved to all changes and modifications coming within the scope of the invention as defined in the appended claims.
Claims (20)
1. A system for providing a relational table having a plurality of message texts, said system comprising:
a memory for storing data;
a relational table stored in said memory, said relational table having:
one or more message text areas wherein a first message text area comprises a plurality of message texts, said message texts comprising a first message text and a second message text;
one or more message identification areas wherein a first message identification area comprises a plurality of message identifications, wherein a first message identification is related to both of said first message text and said second message text; and
one or more variant identification areas wherein a first variant identification area comprises a plurality of first variant identifications and second variant identifications, wherein said first variant identification is related to said first message text.
2. The system of claim 1 wherein the first message text is in a first national language and the second message text is in a second national language, and the first variant identification area is related to national languages and the first variant identification is related to said first national language.
3. The system of claim 1 wherein the first variant identification area is related to any one of company, department or skill level and the first variant identification is related to any one of a first company, a first department or a first skill level.
4. The system of claim 1 further comprising an application program for supplying a message identification and a variant identification to said relational table for receiving from said table a message text related to said message identification said variant identification.
5. The system of claim 4 further comprising a second relational table joined to the first relational table by any one of said message identification or said variant identification wherein said application program provides a search argument to said second relational table, which second relational table supplies said one of said message identification or said variant identification for said first relational table.
6. The system of claim 1 further comprising an insertion program for adding at least one message identifier, variant identifier and message text into said relational table.
7. The system of claim 1 wherein said memory includes a message receiving area for receiving messages from said relational table, and said system further comprising a sort program for sorting the messages in said message receiving area whereby messages are sorted in accordance with the variant identified by the variant identifications of said received messages.
8. The system of claim 1 wherein said memory includes a message receiving area for receiving messages from said relational table, and said system further comprises a search routine for searching the messages in said message receiving area whereby messages are searched in accordance with the variant identified by the variant identifications of said received messages.
9. A method for providing a relational table having a plurality of message texts, said method comprising the steps of:
storing a relational table in a memory;
storing in said table one or more message text areas wherein a first message text area comprises a plurality of message texts, said message texts comprising a first message text and a second message text;
storing in said table one or more message identification areas wherein a first message identification area comprises a plurality of message identifications, wherein a first message identification is related to both of said first message text and said second message text; and
storing in said table one or more variant identification areas wherein a first variant identification area comprises a plurality of first variant identifications and second variant identifications, wherein said first variant identification is related to said first message text.
10. The method of claim 9 wherein the first message text is in a first national language and the second message text is in a second national language, and the first variant identification area is related to national languages and the first variant identification is related to said first national language.
11. The method of claim 9 wherein the first variant identification area is related to any one of company, department or skill level and the first variant identification is related to any one of a first company, a first department or a first skill level.
12. The method of claim 9 further comprising the steps of:
supplying a message identification
supplying a variant identification to said relational table; and
receiving from said table a message text related to said message identification said variant identification.
13. The method of claim 12 further comprising the steps of:
joining a second relational table to the first relational table by any one of said message identification or said variant identification;
providing a search argument to said second relational table; and
supplying from said second relational table said one of said message identification or said variant identification for said first relational table.
14. The method of claim 9 further comprising the steps of:
an insertion program adding at least one message identifier, variant identifier and message text into said relational table.
15. The method of claim 9 further comprising the steps of:
receiving at said memory in a message receiving area, messages from said relational table; and
sorting the messages in said message receiving area whereby messages are sorted in accordance with the variant identified by the variant identifications of said received messages.
16. The method of claim 9 further comprising the steps of:
receiving at said memory in a message receiving area, messages from said relational table; and
searching the messages in said message receiving area whereby messages are searched in accordance with the variant identified by the variant identifications of said received messages.
17. A computer program product for providing a relational table having a plurality of message texts, said computer program product comprising a computer readable medium having computer readable program code therein comprising:
computer readable program code for storing a relational table in a memory;
computer readable program code for storing in said table one or more message text areas wherein a first message text area comprises a plurality of message texts, said message texts comprising a first message text and a second message text;
computer readable program code for storing in said table one or more message identification areas wherein a first message identification area comprises a plurality of message identifications, wherein a first message identification is related to both of said first message text and said second message text; and
computer readable program code for storing in said table one or more variant identification areas wherein a first variant identification area comprises a plurality of first variant identifications and second variant identifications, wherein said first variant identification is related to said first message text.
18. The computer program product of claim 17 wherein the first message text is in a first national language and the second message text is in a second national language, and the first variant identification area is related to national languages and the first variant identification is related to said first national language.
19. The computer program product of claim 17 wherein the first variant identification area is related to any one of company, department or skill level and the first variant identification is related to any one of a first company, a first department or a first skill level
20. The computer program product of claim 17 further comprising
computer readable program code for supplying a message identification
computer readable program code for supplying a variant identification to said relational table; and
computer readable program code for receiving from said table a message text related to said message identification said variant identification.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/313,504 US20040111254A1 (en) | 2002-12-05 | 2002-12-05 | User defined text NLS enablement |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/313,504 US20040111254A1 (en) | 2002-12-05 | 2002-12-05 | User defined text NLS enablement |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040111254A1 true US20040111254A1 (en) | 2004-06-10 |
Family
ID=32468267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/313,504 Abandoned US20040111254A1 (en) | 2002-12-05 | 2002-12-05 | User defined text NLS enablement |
Country Status (1)
Country | Link |
---|---|
US (1) | US20040111254A1 (en) |
Cited By (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040194099A1 (en) * | 2003-03-31 | 2004-09-30 | John Lamping | System and method for providing preferred language ordering of search results |
US20040254932A1 (en) * | 2003-06-16 | 2004-12-16 | Vineet Gupta | System and method for providing preferred country biasing of search results |
US20050108017A1 (en) * | 2003-10-27 | 2005-05-19 | John-Alexander Esser | Determining language for word recognition event |
GB2419715A (en) * | 2004-10-29 | 2006-05-03 | Hewlett Packard Development Co | Processing data variants |
US20070027908A1 (en) * | 2005-08-01 | 2007-02-01 | Robert Lang | Translating data objects |
US20090055392A1 (en) * | 2003-03-31 | 2009-02-26 | Google Inc. | Ordering of search results based on language and/or country of the search results |
US20090210216A1 (en) * | 2008-02-14 | 2009-08-20 | Microsoft Corporation | Storage Device That Provides Efficient, Updatable National Language Support For A Mobile Device |
US20100106317A1 (en) * | 2008-10-27 | 2010-04-29 | Lennox Industries Inc. | Device abstraction system and method for a distributed- architecture heating, ventilation and air conditioning system |
US20120226490A1 (en) * | 2009-07-09 | 2012-09-06 | Eliyahu Mashiah | Content sensitive system and method for automatic input language selection |
US8433446B2 (en) | 2008-10-27 | 2013-04-30 | Lennox Industries, Inc. | Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8437877B2 (en) | 2008-10-27 | 2013-05-07 | Lennox Industries Inc. | System recovery in a heating, ventilation and air conditioning network |
US8437878B2 (en) | 2008-10-27 | 2013-05-07 | Lennox Industries Inc. | Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network |
US8442693B2 (en) | 2008-10-27 | 2013-05-14 | Lennox Industries, Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US8452906B2 (en) | 2008-10-27 | 2013-05-28 | Lennox Industries, Inc. | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8452456B2 (en) | 2008-10-27 | 2013-05-28 | Lennox Industries Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US8463442B2 (en) | 2008-10-27 | 2013-06-11 | Lennox Industries, Inc. | Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network |
US8463443B2 (en) | 2008-10-27 | 2013-06-11 | Lennox Industries, Inc. | Memory recovery scheme and data structure in a heating, ventilation and air conditioning network |
US8527096B2 (en) | 2008-10-24 | 2013-09-03 | Lennox Industries Inc. | Programmable controller and a user interface for same |
JP2013175094A (en) * | 2012-02-27 | 2013-09-05 | Hitachi Systems Ltd | Data search system and method |
US8543243B2 (en) | 2008-10-27 | 2013-09-24 | Lennox Industries, Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US8548630B2 (en) | 2008-10-27 | 2013-10-01 | Lennox Industries, Inc. | Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8560125B2 (en) | 2008-10-27 | 2013-10-15 | Lennox Industries | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8564400B2 (en) | 2008-10-27 | 2013-10-22 | Lennox Industries, Inc. | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8600558B2 (en) | 2008-10-27 | 2013-12-03 | Lennox Industries Inc. | System recovery in a heating, ventilation and air conditioning network |
US8600559B2 (en) | 2008-10-27 | 2013-12-03 | Lennox Industries Inc. | Method of controlling equipment in a heating, ventilation and air conditioning network |
US8615326B2 (en) | 2008-10-27 | 2013-12-24 | Lennox Industries Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US20130346063A1 (en) * | 2012-06-21 | 2013-12-26 | International Business Machines Corporation | Dynamic Translation Substitution |
US8655491B2 (en) | 2008-10-27 | 2014-02-18 | Lennox Industries Inc. | Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network |
US8655490B2 (en) | 2008-10-27 | 2014-02-18 | Lennox Industries, Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US8661165B2 (en) | 2008-10-27 | 2014-02-25 | Lennox Industries, Inc. | Device abstraction system and method for a distributed architecture heating, ventilation and air conditioning system |
US8694164B2 (en) | 2008-10-27 | 2014-04-08 | Lennox Industries, Inc. | Interactive user guidance interface for a heating, ventilation and air conditioning system |
US8713697B2 (en) | 2008-07-09 | 2014-04-29 | Lennox Manufacturing, Inc. | Apparatus and method for storing event information for an HVAC system |
US8725298B2 (en) | 2008-10-27 | 2014-05-13 | Lennox Industries, Inc. | Alarm and diagnostics system and method for a distributed architecture heating, ventilation and conditioning network |
US8744629B2 (en) | 2008-10-27 | 2014-06-03 | Lennox Industries Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US8762666B2 (en) | 2008-10-27 | 2014-06-24 | Lennox Industries, Inc. | Backup and restoration of operation control data in a heating, ventilation and air conditioning network |
US8761945B2 (en) | 2008-10-27 | 2014-06-24 | Lennox Industries Inc. | Device commissioning in a heating, ventilation and air conditioning network |
US8774210B2 (en) | 2008-10-27 | 2014-07-08 | Lennox Industries, Inc. | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8788100B2 (en) | 2008-10-27 | 2014-07-22 | Lennox Industries Inc. | System and method for zoning a distributed-architecture heating, ventilation and air conditioning network |
US8798796B2 (en) | 2008-10-27 | 2014-08-05 | Lennox Industries Inc. | General control techniques in a heating, ventilation and air conditioning network |
US8802981B2 (en) | 2008-10-27 | 2014-08-12 | Lennox Industries Inc. | Flush wall mount thermostat and in-set mounting plate for a heating, ventilation and air conditioning system |
US8855825B2 (en) | 2008-10-27 | 2014-10-07 | Lennox Industries Inc. | Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system |
US8874815B2 (en) | 2008-10-27 | 2014-10-28 | Lennox Industries, Inc. | Communication protocol system and method for a distributed architecture heating, ventilation and air conditioning network |
US8892797B2 (en) | 2008-10-27 | 2014-11-18 | Lennox Industries Inc. | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8977794B2 (en) | 2008-10-27 | 2015-03-10 | Lennox Industries, Inc. | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8994539B2 (en) | 2008-10-27 | 2015-03-31 | Lennox Industries, Inc. | Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network |
US20150154181A1 (en) * | 2013-12-02 | 2015-06-04 | Serhiy Dmytryshyn | Translatable Texts Identification in In-Context Localization Utilizing Pseudo-Language and External Server |
US9268345B2 (en) | 2008-10-27 | 2016-02-23 | Lennox Industries Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US9432208B2 (en) | 2008-10-27 | 2016-08-30 | Lennox Industries Inc. | Device abstraction system and method for a distributed architecture heating, ventilation and air conditioning system |
US9632490B2 (en) | 2008-10-27 | 2017-04-25 | Lennox Industries Inc. | System and method for zoning a distributed architecture heating, ventilation and air conditioning network |
US9651925B2 (en) | 2008-10-27 | 2017-05-16 | Lennox Industries Inc. | System and method for zoning a distributed-architecture heating, ventilation and air conditioning network |
US9678486B2 (en) | 2008-10-27 | 2017-06-13 | Lennox Industries Inc. | Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system |
US20170212873A1 (en) * | 2014-07-31 | 2017-07-27 | Rakuten, Inc. | Message processing device, message processing method, recording medium, and program |
US10331792B1 (en) * | 2015-10-19 | 2019-06-25 | Tg Inc | Localization of embedded databases |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4599612A (en) * | 1981-12-14 | 1986-07-08 | Hitachi, Ltd. | Displaying and correcting method for machine translation system |
US4615002A (en) * | 1983-03-30 | 1986-09-30 | International Business Machines Corp. | Concurrent multi-lingual use in data processing system |
US5307265A (en) * | 1988-12-29 | 1994-04-26 | International Business Machines Corporation | Computer method and system for communication in a multi-lingual network |
US5945989A (en) * | 1997-03-25 | 1999-08-31 | Premiere Communications, Inc. | Method and apparatus for adding and altering content on websites |
US6182062B1 (en) * | 1986-03-26 | 2001-01-30 | Hitachi, Ltd. | Knowledge based information retrieval system |
US6327593B1 (en) * | 1998-12-23 | 2001-12-04 | Unisys Corporation | Automated system and method for capturing and managing user knowledge within a search system |
US20030135479A1 (en) * | 2001-11-06 | 2003-07-17 | Hacigumus Vahit H. | Method and system for providing access to a database |
-
2002
- 2002-12-05 US US10/313,504 patent/US20040111254A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4599612A (en) * | 1981-12-14 | 1986-07-08 | Hitachi, Ltd. | Displaying and correcting method for machine translation system |
US4615002A (en) * | 1983-03-30 | 1986-09-30 | International Business Machines Corp. | Concurrent multi-lingual use in data processing system |
US6182062B1 (en) * | 1986-03-26 | 2001-01-30 | Hitachi, Ltd. | Knowledge based information retrieval system |
US5307265A (en) * | 1988-12-29 | 1994-04-26 | International Business Machines Corporation | Computer method and system for communication in a multi-lingual network |
US5945989A (en) * | 1997-03-25 | 1999-08-31 | Premiere Communications, Inc. | Method and apparatus for adding and altering content on websites |
US6327593B1 (en) * | 1998-12-23 | 2001-12-04 | Unisys Corporation | Automated system and method for capturing and managing user knowledge within a search system |
US20030135479A1 (en) * | 2001-11-06 | 2003-07-17 | Hacigumus Vahit H. | Method and system for providing access to a database |
Cited By (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090055392A1 (en) * | 2003-03-31 | 2009-02-26 | Google Inc. | Ordering of search results based on language and/or country of the search results |
US8306972B2 (en) | 2003-03-31 | 2012-11-06 | Google Inc. | Ordering of search results based on language and/or country of the search results |
US20040194099A1 (en) * | 2003-03-31 | 2004-09-30 | John Lamping | System and method for providing preferred language ordering of search results |
US9183311B2 (en) | 2003-03-31 | 2015-11-10 | Google Inc. | Ordering of search results based on language and/or country of the search results |
US7451129B2 (en) * | 2003-03-31 | 2008-11-11 | Google Inc. | System and method for providing preferred language ordering of search results |
US20040254932A1 (en) * | 2003-06-16 | 2004-12-16 | Vineet Gupta | System and method for providing preferred country biasing of search results |
US7451130B2 (en) | 2003-06-16 | 2008-11-11 | Google Inc. | System and method for providing preferred country biasing of search results |
US20050108017A1 (en) * | 2003-10-27 | 2005-05-19 | John-Alexander Esser | Determining language for word recognition event |
US20060095837A1 (en) * | 2004-10-29 | 2006-05-04 | Hewlett-Packard Development Company, L.P. | Method and apparatus for processing data |
US7743321B2 (en) | 2004-10-29 | 2010-06-22 | Hewlett-Packard Development Company, L.P. | Method and apparatus for processing data |
GB2419715A (en) * | 2004-10-29 | 2006-05-03 | Hewlett Packard Development Co | Processing data variants |
US20070027908A1 (en) * | 2005-08-01 | 2007-02-01 | Robert Lang | Translating data objects |
US8126702B2 (en) * | 2005-08-01 | 2012-02-28 | Sap Ag | Translating data objects |
US20090210216A1 (en) * | 2008-02-14 | 2009-08-20 | Microsoft Corporation | Storage Device That Provides Efficient, Updatable National Language Support For A Mobile Device |
US8010339B2 (en) * | 2008-02-14 | 2011-08-30 | Microsoft Corporation | Storage device that provides efficient, updatable national language support for a mobile device |
US8713697B2 (en) | 2008-07-09 | 2014-04-29 | Lennox Manufacturing, Inc. | Apparatus and method for storing event information for an HVAC system |
US8527096B2 (en) | 2008-10-24 | 2013-09-03 | Lennox Industries Inc. | Programmable controller and a user interface for same |
US8977794B2 (en) | 2008-10-27 | 2015-03-10 | Lennox Industries, Inc. | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8762666B2 (en) | 2008-10-27 | 2014-06-24 | Lennox Industries, Inc. | Backup and restoration of operation control data in a heating, ventilation and air conditioning network |
US8442693B2 (en) | 2008-10-27 | 2013-05-14 | Lennox Industries, Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US8452906B2 (en) | 2008-10-27 | 2013-05-28 | Lennox Industries, Inc. | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8452456B2 (en) | 2008-10-27 | 2013-05-28 | Lennox Industries Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US8463442B2 (en) | 2008-10-27 | 2013-06-11 | Lennox Industries, Inc. | Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network |
US8463443B2 (en) | 2008-10-27 | 2013-06-11 | Lennox Industries, Inc. | Memory recovery scheme and data structure in a heating, ventilation and air conditioning network |
US8437877B2 (en) | 2008-10-27 | 2013-05-07 | Lennox Industries Inc. | System recovery in a heating, ventilation and air conditioning network |
US9678486B2 (en) | 2008-10-27 | 2017-06-13 | Lennox Industries Inc. | Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system |
US8543243B2 (en) | 2008-10-27 | 2013-09-24 | Lennox Industries, Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US8548630B2 (en) | 2008-10-27 | 2013-10-01 | Lennox Industries, Inc. | Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8560125B2 (en) | 2008-10-27 | 2013-10-15 | Lennox Industries | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8564400B2 (en) | 2008-10-27 | 2013-10-22 | Lennox Industries, Inc. | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8600558B2 (en) | 2008-10-27 | 2013-12-03 | Lennox Industries Inc. | System recovery in a heating, ventilation and air conditioning network |
US8600559B2 (en) | 2008-10-27 | 2013-12-03 | Lennox Industries Inc. | Method of controlling equipment in a heating, ventilation and air conditioning network |
US8615326B2 (en) | 2008-10-27 | 2013-12-24 | Lennox Industries Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US9651925B2 (en) | 2008-10-27 | 2017-05-16 | Lennox Industries Inc. | System and method for zoning a distributed-architecture heating, ventilation and air conditioning network |
US9632490B2 (en) | 2008-10-27 | 2017-04-25 | Lennox Industries Inc. | System and method for zoning a distributed architecture heating, ventilation and air conditioning network |
US8655491B2 (en) | 2008-10-27 | 2014-02-18 | Lennox Industries Inc. | Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network |
US8655490B2 (en) | 2008-10-27 | 2014-02-18 | Lennox Industries, Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US8661165B2 (en) | 2008-10-27 | 2014-02-25 | Lennox Industries, Inc. | Device abstraction system and method for a distributed architecture heating, ventilation and air conditioning system |
US8694164B2 (en) | 2008-10-27 | 2014-04-08 | Lennox Industries, Inc. | Interactive user guidance interface for a heating, ventilation and air conditioning system |
US8433446B2 (en) | 2008-10-27 | 2013-04-30 | Lennox Industries, Inc. | Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8725298B2 (en) | 2008-10-27 | 2014-05-13 | Lennox Industries, Inc. | Alarm and diagnostics system and method for a distributed architecture heating, ventilation and conditioning network |
US8744629B2 (en) | 2008-10-27 | 2014-06-03 | Lennox Industries Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US8437878B2 (en) | 2008-10-27 | 2013-05-07 | Lennox Industries Inc. | Alarm and diagnostics system and method for a distributed architecture heating, ventilation and air conditioning network |
US8761945B2 (en) | 2008-10-27 | 2014-06-24 | Lennox Industries Inc. | Device commissioning in a heating, ventilation and air conditioning network |
US8774210B2 (en) | 2008-10-27 | 2014-07-08 | Lennox Industries, Inc. | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US8788100B2 (en) | 2008-10-27 | 2014-07-22 | Lennox Industries Inc. | System and method for zoning a distributed-architecture heating, ventilation and air conditioning network |
US8798796B2 (en) | 2008-10-27 | 2014-08-05 | Lennox Industries Inc. | General control techniques in a heating, ventilation and air conditioning network |
US8802981B2 (en) | 2008-10-27 | 2014-08-12 | Lennox Industries Inc. | Flush wall mount thermostat and in-set mounting plate for a heating, ventilation and air conditioning system |
US8855825B2 (en) | 2008-10-27 | 2014-10-07 | Lennox Industries Inc. | Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system |
US8874815B2 (en) | 2008-10-27 | 2014-10-28 | Lennox Industries, Inc. | Communication protocol system and method for a distributed architecture heating, ventilation and air conditioning network |
US8892797B2 (en) | 2008-10-27 | 2014-11-18 | Lennox Industries Inc. | Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network |
US9432208B2 (en) | 2008-10-27 | 2016-08-30 | Lennox Industries Inc. | Device abstraction system and method for a distributed architecture heating, ventilation and air conditioning system |
US8994539B2 (en) | 2008-10-27 | 2015-03-31 | Lennox Industries, Inc. | Alarm and diagnostics system and method for a distributed-architecture heating, ventilation and air conditioning network |
US9325517B2 (en) * | 2008-10-27 | 2016-04-26 | Lennox Industries Inc. | Device abstraction system and method for a distributed-architecture heating, ventilation and air conditioning system |
US20100106317A1 (en) * | 2008-10-27 | 2010-04-29 | Lennox Industries Inc. | Device abstraction system and method for a distributed- architecture heating, ventilation and air conditioning system |
US9268345B2 (en) | 2008-10-27 | 2016-02-23 | Lennox Industries Inc. | System and method of use for a user interface dashboard of a heating, ventilation and air conditioning network |
US20120226490A1 (en) * | 2009-07-09 | 2012-09-06 | Eliyahu Mashiah | Content sensitive system and method for automatic input language selection |
JP2013175094A (en) * | 2012-02-27 | 2013-09-05 | Hitachi Systems Ltd | Data search system and method |
US20130346064A1 (en) * | 2012-06-21 | 2013-12-26 | International Business Machines Corporation | Dynamic Translation Substitution |
US20130346063A1 (en) * | 2012-06-21 | 2013-12-26 | International Business Machines Corporation | Dynamic Translation Substitution |
US9672209B2 (en) * | 2012-06-21 | 2017-06-06 | International Business Machines Corporation | Dynamic translation substitution |
US9678951B2 (en) * | 2012-06-21 | 2017-06-13 | International Business Machines Corporation | Dynamic translation substitution |
US10289682B2 (en) | 2012-06-21 | 2019-05-14 | International Business Machines Corporation | Dynamic translation substitution |
US20150154181A1 (en) * | 2013-12-02 | 2015-06-04 | Serhiy Dmytryshyn | Translatable Texts Identification in In-Context Localization Utilizing Pseudo-Language and External Server |
US9804862B2 (en) * | 2013-12-02 | 2017-10-31 | Crowdin, Inc. | Translatable texts identification in in-context localization utilizing pseudo-language and an external server |
US20170212873A1 (en) * | 2014-07-31 | 2017-07-27 | Rakuten, Inc. | Message processing device, message processing method, recording medium, and program |
US10255250B2 (en) * | 2014-07-31 | 2019-04-09 | Rakuten, Inc. | Message processing device, message processing method, recording medium, and program |
US10331792B1 (en) * | 2015-10-19 | 2019-06-25 | Tg Inc | Localization of embedded databases |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20040111254A1 (en) | User defined text NLS enablement | |
US7725447B2 (en) | Method, apparatus, and system for searching based on search visibility rules | |
US7831688B2 (en) | Method and system for providing electronic user assistance | |
US6490575B1 (en) | Distributed network search engine | |
US7698282B2 (en) | Method, apparatus, and system for remote client search indexing | |
US6763351B1 (en) | Method, apparatus, and system for attaching search results | |
US7233937B2 (en) | Method, apparatus, and system for searching based on filter search specification | |
US6728702B1 (en) | System and method to implement an integrated search center supporting a full-text search and query on a database | |
US5878219A (en) | System for integrating access to proprietary and internet resources | |
US6782383B2 (en) | System and method to implement a persistent and dismissible search center frame | |
US6711565B1 (en) | Method, apparatus, and system for previewing search results | |
US6985905B2 (en) | System and method for providing access to databases via directories and other hierarchical structures and interfaces | |
US20070208697A1 (en) | System and method to enable searching across multiple databases and files using a single search | |
US7546287B2 (en) | System and method to search a database for records matching user-selected search criteria and to maintain persistency of the matched records | |
US7647335B1 (en) | Computing system and methods for distributed generation and storage of complex relational data | |
US20080133617A1 (en) | Change log handler for synchronzing data sources | |
US6961751B1 (en) | Method, apparatus, and article of manufacture for providing enhanced bookmarking features for a heterogeneous environment | |
EP1232451A1 (en) | Method and apparatus for automatically updating website content | |
US20040249824A1 (en) | Semantics-bases indexing in a distributed data processing system | |
JP2002108683A (en) | Light weight directory access protocol interface for directory assistance system | |
US20040167905A1 (en) | Content management portal and method for managing digital assets | |
US7779022B2 (en) | Efficient retrieval and storage of directory information system knowledge referrals | |
US6418402B1 (en) | Method and system for utilizing machine translation as input correction | |
KR100336115B1 (en) | Method for lower domain service and system for the same | |
Getchell et al. | A revised catalog of available X. 500 implementations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GOGEL, EDWARD D.;JEN, MICHAEL;KLOSTERBOER, LARRY K.;AND OTHERS;REEL/FRAME:013864/0040;SIGNING DATES FROM 20030313 TO 20030314 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |