Globalization Architecture

Globalization, as a global system design and implementation, not a function. It is an architecture. In order to succeed in the global marketplace, IBM must define the required support of global e-commerce architecture and enables developers to focus on technical ability to provide critical global need.

Using global architecture can bring many benefits, including:

(1)A server can support applications in multiple languages, thereby reducing development on a global scale, deploy, and provide cost and time required by the application.

(2)Able to load level and load resources rather than language support requirements designed based server deployment.

(3)The same version and patch level of the product can be in the worldwide server, thereby reducing the support, maintenance and training costs.

(4)Each product in a consistent manner consistent with established industry standards for processing data (example: finishing, date / time format), so that build solutions on these products will be able to ensure a consistent approach.

IBM e-business globalization architecture has five related infrastructure needs, as shown in Figure 1.

Single Executable File

Having a single executable means that one supports all languages, countries or regions of code libraries. So we must develop the appropriate software program that allows a single executable file can handle the cultural needs of all countries or regions to be supported. Thus, the cultural and language-independent code at runtime library call information related to culture and language, thereby greatly reducing the cost and effort it takes, while simplifying the process.

Among five demands, a single executable file is the most important one. This is to ensure that the global system can be correctly and effectively design, build and maintain the critical needs.

Locale Model

Since the single executable requires a single code base supports all languages, so the library code needs to know what language they should provide. This information comes from the locale (locale) concept. In English, the term locale refers to the occurrence or the occurrence of certain events over the place. In globalization, in general, it refers to a language and a country or region. For example, en_US on behalf of the United States in English, ja_JP Japanese representative of Japan, fr_FR representative of France French. Sometimes you need more specific information. For example, in Germany both text data sorting method at least - is not enough light has de_DE. Either use a language environment variable (similar to the current JDK model de_DE_Traditional), or use a locale keyword query (eg OpenI18N locale naming convention, de_DE @ collation = Traditional), these two methods are often used to finish the job . Figure 2 illustrates a typical simple scenario, the locale model and a single executable file how to work together to provide a global solution:

Single Executable File

(1)There are three customers. They were from the United States, Japan and France, respectively, in their preferred language is English (United States), Japanese (Japan) and French (France).

(2)Applications built on the basis of a single executable file, and retrieve the back-end data based on cultural preferences of customers.

(3)Back-end data system is built on a locale model - that is, one based on the "service of globalization application locale information" category of the data system.

The following is a typical data stream:

1> Applications and locale information acquisition request from the customer.

2> Single executable passes the locale information to the back-end data systems.

3> Back-end data system finds the correct data, and sends it back to the single executable file.

4> Single executable file data back to the client.

5> Thus, to meet the cultural preferences of customers.

Multilingual Data

Due to individual single executable supports all languages, it needs a coding system that provides a unique number for every character, no matter what the platform, program or language. (Coding system is a distribution of the number of characters to enable a computer to approach these characters.) Therefore, the development of Unicode (see Resources) to define this encoding system. Unicode by providing a single consistent "character-to-digital" mapping mode, capable of representing the world each character; Unicode enables applications to provide multilingual support.

Localization Pack

Because they have a single executable file and an executable file means that there is only one for the multilingual environment, it is necessary to have a standardized method (called localization pack) for processing locale-specific program data different sets. There are two localization pack: application-related - such as menus, dialog boxes and other user interface elements - and has nothing to do with the application - such as sorting tables, transliteration rules and the date and time element name. Localization pack manager is to manage positioning, loading and accessing localization pack resources module. Figure 3 illustrates their relationship.

Single Executable File

A very simple example helps to illustrate this concept. In one application, a key (msg1) with a string value (Hello) is associated. Because of the need very many languages, so you can create the corresponding localized package, as shown in Figure 4.

Single Executable File

Input And Output of Multilingual Data

Globalization also need to use a keyboard, mouse and other devices to enter text in different languages, and the ability to display text in those languages right through the screen or printer. By using the language services, the end user can use voice input such as a more humane and friendly interface. In general, these functions supported by the operating system. Usually, the application does not need to deal directly with this problem.