### Internationalization

Internationalization is the process of producing a product (design and code) that is totally free of any dependency on language, script, culture, and coded character set. Strictly speaking, an internationalized product is not usable in any region of the world unless it is localized to that specific region.

Internationalization in programming languages is a concept that comprises:

- Separation of resources from program executable code,
- Availability of externally stored cultural data,
- A set of programming interfaces to access this data, and the ability to customize such data if necessary, and
- A set of programming methods that enable you to write programs that modify their behavior according to the user's cultural environment, specified during the program's execution.

Internationalization is also known as National Language Enablement.

For information on how to design an internationalized product, see IBM's "National Language Design Guide - Designing Internationalized Products, SE09-8001".

Elements of Internationalization
Localization and Locales

Make Your Program International