Appendix D Internationalization
Netscape Directory Server (Directory
Server) allows you to store, manage, and search for entries and their
associated attributes in a number of different languages. An
internationalized directory can be an invaluable corporate resource,
providing employees and business partners with immediate access to the
information they need in the languages they can understand.
The directory supports all international characters set by default
because directory data is stored in UTF-8.
Further, Directory Server allows you to specify matching rules and
collation orders based on language preferences in search operations.
|
|
Note
|
You must use
ASCII characters for attribute and object class names.
|
|
This appendix contains
the following sections:
About Locales
Directory Server
provides support for multiple languages through the use of locales. A locale identifies language-specific
information about how users of a specific region, culture, or custom
expect data to be presented, including how data of a given language is
interpreted and how data is to be sorted, or collated.
In addition, the locale information
indicates what code page should be used to represent a given language.
A code page is an internal table that the
operating system uses to relate keyboard keys to character font screen
displays.
More specifically, a locale specifies:
- Collation order
-- The collation order provides language and cultural-specific
information about how the characters of a given language are to be
sorted. It identifies things like the sequence of the letters in the
alphabet, how to compare letters with accents to letters without
accents, and if there are any characters that can be ignored when
comparing strings. The collation order also takes into account
culture-specific information about a language, such as the direction in
which the language is read (left to right, right to left, or up and
down).
- Character type
-- The character type distinguishes alphabetic characters from numeric
or other characters. In addition, it defines the mapping of upper-case
to lower-case letters. For example, in some languages, the pipe (|)
character is considered punctuation while in others it is considered
alphabetic.
- Monetary format
-- The monetary format specifies the monetary symbol used by a specific
region, whether the symbol goes before or after its value, and how
monetary units are represented.
- Time/date format
-- The time and date format indicates the customary formatting for
times and dates in the region. The time and date format indicates
whether dates are customarily represented in the
mm/dd/yy (month, day, year) or
dd/mm/yy (day, month, year) format and specifies what the days
of the week and month are in a given language. For example, the date
January 10, 1996, is represented as 10.leden 1996 in Czechoslovakian
and 10 janvier 1996 in French.
Because a locale describes cultural,
customary, and regional differences in addition to mechanical language
differences, the directory data can both be translated into the
specific languages understood by your users as well as be presented in
a way that users in a given region expect.
Locale
information is automatically copied to this directory during Directory
Server installation:
serverRoot/lib/nls/locale30
Identifying
Supported Locales
When performing
directory operations that require you to specify a locale, such as a
search operation, you can use a language tag or a collation order
object identifier (OID).
A language
tag is a string that begins with the two-character lowercase language
code that identifies the language (as defined in ISO Standard 639). If
necessary to distinguish regional differences in language, the language
tag may also contain a country code,
which is a two-character string (as defined in ISO Standard 3166). The
language code and country code are separated by a hyphen. For example,
the language tag used to identify the British English locale is en-GB.
An object
identifier (OID) is a decimal number used
to uniquely identify an object, such as an attribute or object class.
The OIDs you use when searching or indexing an internationalized
directory identify specific collation orders supported by the Directory
Server. For example, the OID
2.16.840.1.113730.3.3.2.17.1 identifies the Finnish collation
order.
When performing an international search in
the directory, use either the language tag or the OID to identify the
collation order you want to use. However, when setting up an
international index, you must use the OIDs. For more information on
indexing, see chapter 10, "Managing
Indexes."
Table
D-1 lists each locale supported by Directory Server and identifies
the associated language tags and OIDs.
Table D-1
Supported Locales
|
Locale
|
Language Tag
|
Collation Order
Object Identifiers (OIDs)
|
|
Albanian
|
sq
|
2.16.840.1.113730.3.3.2.44.1
|
|
Arabic
|
ar
|
2.16.840.1.113730.3.3.2.1.1
|
|
Byelorussian
|
be
|
2.16.840.1.113730.3.3.2.2.1
|
|
Bulgarian
|
bg
|
2.16.840.1.113730.3.3.2.3.1
|
|
Catalan
|
ca
|
2.16.840.1.113730.3.3.2.4.1
|
|
Chinese
(Simplified)
|
zh
|
2.16.840.1.113730.3.3.2.49.1
|
|
Chinese
(Traditional)
|
zh-TW
|
2.16.840.1.113730.3.3.2.50.1
|
|
Croatian
|
hr
|
2.16.840.1.113730.3.3.2.22.1
|
|
Czechoslovakian
|
cs
|
2.16.840.1.113730.3.3.2.5.1
|
|
Danish
|
da
|
2.16.840.1.113730.3.3.2.6.1
|
|
English (US)
|
en or en-US
|
2.16.840.1.113730.3.3.2.11.1
|
|
Estonian
|
et
|
2.16.840.1.113730.3.3.2.16.1
|
|
Finnish
|
fi
|
2.16.840.1.113730.3.3.2.17.1
|
|
French
|
fr or fr-FR
|
2.16.840.1.113730.3.3.2.18.1
|
|
German
|
de
|
2.16.840.1.113730.3.3.2.7.1
|
|
Greek
|
el
|
2.16.840.1.113730.3.3.2.10.1
|
|
Hebrew
|
iw
|
2.16.840.1.113730.3.3.2.27.1
|
|
Hungarian
|
hu
|
2.16.840.1.113730.3.3.2.23.1
|
|
Icelandic
|
is
|
2.16.840.1.113730.3.3.2.24.1
|
|
Japanese
|
ja
|
2.16.840.1.113730.3.3.2.28.1
|
|
Korean
|
ko
|
2.16.840.1.113730.3.3.2.29.1
|
|
Latvian, Lettish
|
lv
|
2.16.840.1.113730.3.3.2.31.1
|
|
Lithuanian
|
lt
|
2.16.840.1.113730.3.3.2.30.1
|
|
Macedonian
|
mk
|
2.16.840.1.113730.3.3.2.32.1
|
|
Norwegian
|
no
|
2.16.840.1.113730.3.3.2.35.1
|
|
Polish
|
pl
|
2.16.840.1.113730.3.3.2.38.1
|
|
Romanian
|
ro
|
2.16.840.1.113730.3.3.2.39.1
|
|
Russian
|
ru
|
2.16.840.1.113730.3.3.2.40.1
|
|
Serbian
(Cyrillic)
|
sr
|
2.16.840.1.113730.3.3.2.45.1
|
|
Serbian (Latin)
|
sh
|
2.16.840.1.113730.3.3.2.41.1
|
|
Slovakian
|
sk
|
2.16.840.1.113730.3.3.2.42.1
|
|
Slovenian
|
sl
|
2.16.840.1.113730.3.3.2.43.1
|
|
Spanish
|
es or es-ES
|
2.16.840.1.113730.3.3.2.15.1
|
|
Swedish
|
sv
|
2.16.840.1.113730.3.3.2.46.1
|
|
Turkish
|
tr
|
2.16.840.1.113730.3.3.2.47.1
|
|
Ukranian
|
uk
|
2.16.840.1.113730.3.3.2.48.1
|
Supported
Language Subtypes
Language subtypes can
be used by clients to determine specific values for which to search.
For more information on using language subtypes, see Adding an Attribute
Subtype.
Table
D-2 contains the list of supported language subtypes.
Table D-2
Supported Language Subtypes
|
Language tag
|
Language
|
|
af
|
Afrikaans
|
|
be
|
Byelorussian
|
|
bg
|
Bulgarian
|
|
ca
|
Catalan
|
|
cs
|
Czechoslovakian
|
|
da
|
Danish
|
|
de
|
German
|
|
el
|
Greek
|
|
en
|
English
|
|
es
|
Spanish
|
|
eu
|
Basque
|
|
fi
|
Finnish
|
|
fo
|
Faroese
|
|
fr
|
French
|
|
ga
|
Irish
|
|
gl
|
Galician
|
|
hr
|
Croatian
|
|
hu
|
Hungarian
|
|
id
|
Indonesian
|
|
is
|
Icelandic
|
|
it
|
Italian
|
|
ja
|
Japanese
|
|
ko
|
Korean
|
|
nl
|
Dutch
|
|
no
|
Norwegian
|
|
pl
|
Polish
|
|
pt
|
Portuguese
|
|
ro
|
Romanian
|
|
ru
|
Russian
|
|
sk
|
Slovakian
|
|
sl
|
Slovenian
|
|
sq
|
Albanian
|
|
sr
|
Serbian
|
|
sv
|
Swedish
|
|
tr
|
Turkish
|
|
uk
|
Ukrainian
|
|
zh
|
Chinese
|
Troubleshooting Matching Rules
International collation order matching rules may not behave
consistently. Some forms of matching-rule invocation do not work
correctly, producing incorrect search results. For example, the
following rules do not work:
./ldapsearch
-p 9001 -D "uid=gfarmer,ou=people,dc=example,dc=com" -w ruling -b
"dc=example,dc=com" "sn:2.16.840.1.113730.3.3.2.7.1:==passin"
./ldapsearch
-p 9001 -D "uid=gfarmer,ou=people,dc=example,dc=com" -w ruling -b
"dc=example,dc=com" "sn:de:==passin"
However, the rules listed below will work (note the
.3 in bold):
./ldapsearch
-p 9001 -D "uid=gfarmer,ou=people,dc=example,dc=com" -w ruling -b
"dc=example,dc=com" "sn:2.16.840.1.113730.3.3.2.7.1.3:=passin"
./ldapsearch
-p 9001 -D "uid=gfarmer,ou=people,dc=example,dc=com" -w ruling -b
"dc=example,dc=com" "sn:de.3:=passin"
© 2001
Sun Microsystems, Inc. Portions copyright 1999, 2002-2004 Netscape
Communications Corporation. All rights reserved.
Read
the Full Copyright and
Third-Party Acknowledgments.
last updated November
26,
2004