Panel on Locales

Panel on Locales

Tex Texin (Moderator)
Peter Constable
Addison Phillips
David Possin
Cathy Wissink

Panel on Locales• Locale is a mechanism used in Web,Java and other technologies• Many developers use locales andpresume sound I18n behavior results• How well does it work in practice?

Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

12San Jose, California, Sept. 2002

Panel on Locales

Panelists Views• Addison Phillips, webMethods• Cathy Wissink, Microsoft• Dave Possin, Welocalize.com• Peter Constable, SIL• Audience Participation• Tex Texin, XenCraft
Panel on Locales IUC22 San Jose, California

3Problems with Locale?
• Locales solve many problems, but
expectations may be too high:–Desire for “magic I18N functionality”–Failure to properly factor data structures.
–Lack of understanding of what a locale is.
–“Hubris” in solving internationalization
problems.

Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

24San Jose, California, Sept. 2002

Panel on Locales

Problems with Locale?
• Locales solve many problems, but
expectations may be too high:–Missing information can be added on aplatform-by-platform basis.
–There are a lot of locale models…
• Solve specific problems with each one insteadof blanket rejection.

Panel on Locales IUC22 San Jose, California

5

There are some problems…
• Interoperability and integration are themajor problem!
–Internet lacks a “globalization architecture”–Platforms and Environments differ on:• Range of locales• Locale data sets
• Locale standards• Specific behavior

Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

36San Jose, California, Sept. 2002

Panel on Locales

There are some problems…
• Interoperability and integration are themajor problem!
–No mechanism for exchanging locale
preferences.
–Limited mechanisms for exchanging
language preferences.
–Confusion about difference between locale
and language.
Panel on Locales IUC22 San Jose, California

7Solutions• Add a platform neutral locale tagging
and negotiation system.

– E.g. See my proposal: ULocales: Building Global

Enterprise Web Services– www.webmethods.com/whitepaper_select/1,1332,58277,00.html• Separate language from locale.
–Overloading of tags (for example, AcceptLanguage, xml:lang)• Provide a locales metadata repository.
• (Is this actually useful?)
Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

48San Jose, California, Sept. 2002

Panel on Locales

Panelists Views• Addison Phillips, webMethods• Cathy Wissink, Microsoft• Dave Possin, Welocalize.com• Peter Constable, SIL• Audience Participation• Tex Texin, XenCraft
Panel on Locales IUC22 San Jose, California

9LCIDs (Locale IDs)
• Very old means of identifying locale (inuse since at least Windows 3.1)
• Used on all subsequent versions ofWindows (including Windows XP)• Uses combination of language andsublanguage (= country/region), withsort ID and reserved value in high word(low word alone = language ID)

Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

510San Jose, California, Sept. 2002

Panel on Locales

Problems with LCIDs• Difficult to decouple (can’t separate language out
from country/region; too tightly bound)• Don’t work well with multiple country regions (“LatinAmerica”)• Don’t take writing systems into account (Azeri,Kazak, Serbian)• Difficult to change in response to changes ingeopolitical situation (Serbo-Croatian Æ Serbian andCroatian; what does old LCID identify?)• Non-customizable• Not standards conformant (proprietary format)

Panel on Locales IUC22 San Jose, California

11

Response to LCIDs
deficiencies• Incorporated RFC 3066 codes into .NET
Framework to identify locales• Addresses issues of standards conformance,locale decoupling, GPS concerns• Not perfect solution, either…
– Must rely on ISO standards (slow to change
compared to industry, not always complete data)– Doesn’t solve multiple country region problem– Not customizable– RFC codes don’t address writing systems or sortIDs
Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

612San Jose, California, Sept. 2002

Panel on Locales

Panelists Views• Addison Phillips, webMethods• Cathy Wissink, Microsoft• Dave Possin, Welocalize.com• Peter Constable, SIL• Audience Participation• Tex Texin, XenCraft
Panel on Locales IUC22 San Jose, California

13Locales vs. User
Preferences• Locales– Abstract Concept toIdentify the Locationand Language for
Computing Purposes …
• Of the User?
• Of the Computer?

– … Based on
Incomplete
Standards• User Preferences– A User has
Preferences of how
Data is presented– A User Speaks aPreferred Language– A User has more
Preferences thanthe Locale offers

Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

714

San Jose, California, Sept. 2002

Panel on Locales

Why do we need a new
standard locale model?
1.

Computing demands for an improved
model for new application areas.
2. Users demand a better representation of
their culture, their region, and theirlanguage.
3. Mechanics are needed so both cannegotiate their needs and find asatisfying compromise.
Panel on Locales IUC22 San Jose, California

15

What is in the Pot?
• Different Operating Systems are
creating new incompatible models• Web Software is stuffing all into one
bucket: lang
• Standards Organizations are moving
too slow and are missing the train• The Users are the Losers
Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

816

San Jose, California, Sept. 2002

Panel on Locales

What can We do?
• Create New Models• Prove their Usability• Promote them to Organizations• Integrate them into i18n Libraries• Turn them into de-facto Standards• Let Organizations adapt them
Panel on Locales IUC22 San Jose, California

17Panelists Views• Addison Phillips, webMethods• Cathy Wissink, Microsoft• Dave Possin, Welocalize.com• Peter Constable, SIL• Audience Participation• Tex Texin, XenCraft
Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

918

San Jose, California, Sept. 2002

Panel on Locales

Language and locale•Locales involve numerous parameters,
which can be divided into two broad
categories:– non-linguistic• currency symbol, decimal separator, postal
address format, time zone, etc.

– linguistic• language, script, orthography, sub-language
variants (e.g. vocabulary)
Panel on Locales IUC22 San Jose, California

19Language and locale•Linguistic parameters are relevant forlocales– E.g. UI element: menu item ‘file open’• presentation in UI affected by choices forlanguage, script, orthography, regionalvocabulary preferences, etc.

Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

1020San Jose, California, Sept. 2002

Panel on Locales

Language and locale•Linguistic parameters partially(in)dependent of one another– e.g. language vs. script• in principle, any given language can be written
in any script• In practice, only certain combinations arelikely to occur

Panel on Locales IUC22 San Jose, California

21

Linguistic parameters andlocale naming•Locale identification: language-country?
– Writing system (script) and orthography
distinctions should not be confused withlanguage distinctions• Azerbaijani (Latin) vs. Azerbaijani (Cyrillic):
two writing systems, one language• English (American spelling) vs. English (UKspelling): two orthographies, one language– Cannot interpret “language” portion as
conflation of all linguistic parameters
Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

1122San Jose, California, Sept. 2002

Panel on Locales

Linguistic parameters andlocale naming•Locale identification: language-country?
– Country is not a good correlate for all
linguistic parameters• may often work for orthography• not always a good correlate for script,
vocabulary– Azerbaijani, Latin vs. Cyrillic: same language, samecountry– Linguistic parameters may correlate with adomain of usage other than country
Panel on Locales IUC22 San Jose, California

23

Linguistic parameters andlocale naming•Locale identification: language-country?

– In principle, use of language and country
not sufficient as identifying correlates forlinguistic parameters.

Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

1224

San Jose, California, Sept. 2002

Panel on Locales

Language codes in locale
IDs•Some implementations use ISO 639-1 todesignate language element in locale IDs– Inadequate!
• two-letter codes: not enough possible• ISO 639-1 has strict requirements– Implementers should start now in looking
beyond ISO 639-1• ISO 639-2, RFC 3066, Ethnologue.

Panel on Locales IUC22 San Jose, California

25Locale vs. language data
•Need to distinguish locale fromlinguistic attributes of user’s data:– locale: collection of user / UI preferences• locale may imply some particular language /script / etc. for linguistic UI resources– independent of the language data users
work with• regardless of UI pref’s, user should be able towork with data in any language, script, etc.
• user pref’s may determine default language,etc. of user’s data, but no more
Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

1326

San Jose, California, Sept. 2002

Panel on Locales

Locale vs. language data
•Need to distinguish locale fromlinguistic attributes of data:– locale infrastructure for UI should be
independent of infrastructure forsupporting multilingual data
• e.g. input methods– calling an input method an “input locale” isn’t aproblem– issue is separation of support for user / UI
preferences vs. multilingual data

Panel on Locales IUC22 San Jose, California

27

Panelists Views• Addison Phillips, webMethods• Cathy Wissink, Microsoft• Dave Possin, Welocalize.com• Peter Constable, SIL• Audience Participation• Tex Texin, XenCraft
Panel on Locales IUC22 San Jose, California

22nd International Unicode Conference

1428San Jose, California, Sept. 2002