- From: Tex Texin <tex@xencraft.com>
- Date: Tue, 30 Mar 2004 12:33:24 -0500
- To: Web Services <public-i18n-ws@w3.org>
3.1 What is Internationalization and Localization? Users from different countries or cultural backgrounds require software and services that are adapted to correctly process information using their native languages, writing systems, measurement systems, calendars, and other linguistic rules and cultural conventions. [Definition: International Preferences] The specification of the particular set of cultural conventions that software or web services must employ to correctly process information exchanged with a user. [Definition: Internationalization] The process of designing, creating, and maintaining software that can serve the needs of users with differing language, cultural, or geographic requirements and expectations. There are many kinds of international preferences that a Web service may need to offer, to be considered usable and acceptable by users around the world. Some of these preferences might include: * Natural language text processing (parsing, spell checking, grammar checking are examples of these) * User interface language, imagery, colors, sounds, etc. * Presentation (human-oriented formatting) of dates, times, numbers, lists, and other values. * Collation (sorting), often specified with xml:sort * Alternate Calendars, including holidays, work rules, weekends, the organization of months, the numbering of years and so forth. * Tax or regulatory regime * Currency * ...and many more Because there are a large number of preferences, software and Web services often use an identifier based on language and location as a shorthand indicator for collections of preferences that typify categories of users. HTML for example uses the lang attribute for this purpose. XML uses the xml:lang attribute. Java, POSIX and other software development methodologies use a similar-looking (but not identical) construct known as locale. In this document, we will use the term locale as the name for this shorthand indicator for a user's particular set of international preferences. [definition: Locale] Shorthand identifier representing the particular specification of international preferences that a (certain category of) user requires. Generally, systems that are internationalized can support a wide variety of languages and behaviors to meet the international preferences of many kinds of users. When a particular set of preferences is operationally available (often called "enabled"), then the system is referred to as localized. [Definition: Localization] Localization is the tailoring of a system to the individual cultural expectations for a specific target market or group of individuals. The target group is often indicated by the Locale identifier. However, it is important to note that many of the international preferences do not correlate strongly with Locale identifiers based solely on language and location. For example, the locale of "en-US" (English, United States) encompasses several time zones, so the user's prefered time zone cannot be deduced by the locale identifier alone. Many cultures have more than one way of collating text, and so the appropriate sort ordering cannot always be infered from the locale. For example, Japanese applications may use different orderings known as radical-stroke and stroke-radical. Germany and other parts of the world may use different sort orderings known as dictionary vs phonebook. Distinguishing these situations requires forethought in the design of the service and the setting of reasonable default values. Each user or system in a Web services interaction may have its own default locale settings. The interplay between the requester, provider, service host, intermediaries, and so forth may have complex implications.
Received on Tuesday, 30 March 2004 12:34:09 UTC