[li18nux:431] Call for review: LI18NUX2000 spec draft (fwd)
FYI, we should look at how to include or reference some of this.
---------- Forwarded message ----------
Date: Mon, 10 Apr 2000 20:52:11 +0900
From: Yoichi Suehiro <suehiro@jrd.dec.com>
Reply-To: li18nux@sun.com
To: li18nux@sun.com
Cc: li18nux-sa@sun.com
Subject: [li18nux:431] Call for review: LI18NUX2000 spec draft
Hello Li18nux members,
Here is the draft specification of LI18NUX2000 which
we, Li18nux-sa subgroup members, has worked on for these several months.
Please review and send your comments to li18nux-sa subgroup by 4/17.
Mail address: li18nux-sa@sun.com
Format: free
It is nice to have the following information
with your comments.
- section number, section title, paragraph number
- comment type (technical/editorial/clarification request)
Comment due: 4/17 10:00 a.m. PST
The draft will be discussed at the coming LI18NUX meeting on 4/19-20.
Note to li18nux-sa subgroup members:
Numata-san (technical editor) made several editorial changes (spell,
correction, etc.) to the draft after it was posted to
the li18nux-sa mailing list.
Thank you, Numata-san.
best regards,
Yoichi Suehiro
(as the leader of Li18nux-sa subgroup)
===
LI18NUX2000 Globalization Specification (Draft 2000-04-10)
1. Foreword
1.1 Scope
This document specifies interfaces and functionalities that must be supported
by operating systems to run internationalized application software.
This document also includes recommendations for internationalized execution
environments.
This specification only lists internationalization aspects of each
functionality provided by the conforming operating systems.
The standards required to conform to are listed in the beginning of each
chapter.
1.2 Normative References
[POSIX.1]
ISO/IEC 9945-1:1996 Information technology -- Portable Operating
System Interface (POSIX) -- Part 1: System Application Program
Interface (API) [C Language]
[POSIX.2]
ISO/IEC 9945-2:1993 Information technology -- Portable Operating
System Interface (POSIX) -- Part 2: Shell and Utilities
[ISO C]
ISO/IEC 9899:1999 Programming languages -- C
[XCU5]
The Single UNIX Specification, Version 2
- Commands and Utilities, Issue 5
The Open Group CAE Specification C604
[XBD5]
The Single UNIX Specification, Version 2
- System Interface Definitions, Issue 5
The Open Group CAE Specification C605
[XSH5]
The Single UNIX Specification, Version 2
- System Interfaces and Headers, Issue 5 (2 volumes)
The Open Group CAE Specification C606
[XNS5.2]
The Single UNIX Specification, Version 2
- Networking Services, Issue 5.2
The Open Group CAE Specification C808
[XCURSES4.2]
The Single UNIX Specification, Version 2
- X/Open Curses (XCurses), Issue 4 Version 2
The Open Group CAE Specification C610
[ISO C++]
ISO/IEC 14882:1998 Programming Languages -- C++
[ICU]
International Component for Unicode 1.4.0
http://oss.software.ibm.com/icu/icuhtml/index.html
[Perl 5.6]
Perl 5.6 (March 23, 2000)
- http://www.perl.com/pub/n/Perl_5.6.0_is_out!
[Tcl/Tk 8.3]
Tcl/Tk 8.3 (February 10, 2000)
- http://dev.scriptics.com/software/tcltk/8.3.tml
[*** Editor's note: pointer to Java Language Specification is needed. ***]
[X11R6]
The Definitive Guides to the X Window System, O'Reilly & Associates, Inc.
Volume 0: X Protocol Reference Manual, 4th Edition (X11R6)
Volume 2: Xlib Reference Manual, 3rd Edition (X11R5)
Volume 5: X Toolkit Intrinsics Reference Manual, 3rd Edition (X11R5)
Programmer's Supplement for Release 6
[Unicode 3.0]
The Unicode Standard, Version 3.0
[Unicode Normalization]
Unicode Technical Report #15: Unicode Normalization Forms,
Revision 18.0
http://www.unicode.org/unicode/reports/tr15/
(included in "The Unicode Standard, Version 3.0")
[UTF-32]
Draft Unicode Technical Report #19: UTF-32, Revision 5.0
http://www.unicode.org/unicode/reports/tr19/
[ISO 10646-1]
ISO/IEC 10646-1:1993 Information technology -- Universal
Multiple-Octet Coded Character Set (UCS) -- Part 1: Architecture
and Basic Multilingual Plane
ISO/IEC 10646-1:1993/Cor 1:1996
ISO/IEC 10646-1:1993/Cor 2:1998
ISO/IEC 10646-1:1993/Amd 1:1996 Transformation Format for 16
planes of group 00 (UTF-16)
ISO/IEC 10646-1:1993/Amd 2:1996 UCS Transformation Format 8
(UTF-8)
ISO/IEC 10646-1:1993/Amd 3:1996
ISO/IEC 10646-1:1993/Amd 4:1996
ISO/IEC 10646-1:1993/Amd 5:1998 Hangul syllables
ISO/IEC 10646-1:1993/Amd 6:1997 Tibetan
ISO/IEC 10646-1:1993/Amd 7:1997 33 additional characters
ISO/IEC 10646-1:1993/Amd 8:1997
ISO/IEC 10646-1:1993/Amd 9:1997 Identifiers for characters
ISO/IEC 10646-1:1993/Amd 10:1998 Ethiopic
ISO/IEC 10646-1:1993/Amd 11:1998 Unified Canadian Aboriginal
Syllabics
ISO/IEC 10646-1:1993/Amd 12:1998 Cherokee
ISO/IEC 10646-1:1993/Amd 13:1998 CJK unified ideographs with
supplementary sources
ISO/IEC 10646-1:1993/Amd 16:1998 Braille patterns
ISO/IEC 10646-1:1993/Amd 17:1999 CJK Unified Ideographs
Extension A
ISO/IEC 10646-1:1993/Amd 18:1999 Symbols and others characters
ISO/IEC 10646-1:1993/Amd 19:1998 Runic
ISO/IEC 10646-1:1993/Amd 20:1998 Ogham
ISO/IEC 10646-1:1993/Amd 21:1999 Sinhala
ISO/IEC 10646-1:1993/Amd 23:1999 Bopomofo Extended and others
characters
[ISO 639]
ISO 639:1988 Code for the representation of names of languages
[ISO 639-2]
ISO 639-2:1998 Codes for the representation of names of languages
-- Part 2: Alpha-3 code
[ISO 3166-1]
ISO 3166-1:1997 Codes for the representation of names of countries
and their subdivisions -- Part 1: Country codes
[ISO 3166-2]
ISO 3166-2:1998 Codes for the representation of names of countries
and their subdivisions -- Part 2: Country subdivision code
[ISO 3166-3]
ISO 3166-3:1999 Codes for the representation of names of countries
and their subdivisions -- Part 3: Code for formerly used names of
countries
1.3 Conformance
1.3.1 Conforming Environments
For conformance purposes the following environments are defined:
(1) Application Execution Environment
Application Execution Environment is a minimum operating system
environment which can run internationalized application software.
The facilities defined in this environment are mandatory and shall be
present on all conforming implementations.
The following sections are applied to Application Execution Environment:
3. Base Libraries
5. Shells and Utilities
(2) End User Environment
End User Environment is an operating system environment with user
interface. It is assumed that End User Environment has a set of
utilities for user interaction.
This environment includes all the interfaces and functionalities provided
by Application Execution Environment. Additional interfaces and
utilities are defined for the following sub-environments:
(a) Server Environment
Server environment is an operating system environment suitable for
backend server purposes. Graphical user interfaces are not required
in this environment.
The following sections are applied to Server Environment:
3. Base Libraries
4. Graphic Libraries
5. Shells and Utilities
6. Programming Languages (with Software Development Option)
7. Graphic Toolkit
10. Network Servers
(b) Desktop Environment
Desktop environment is an operating system environment suitable for
end user interaction. Graphical user interface is required in this
environment.
The following sections are applied to Desktop Environment:
3. Base Libraries
4. Graphic Libraries
5. Shells and Utilities
6. Programming Languages (with Software Development Option)
7. Graphic Toolkit
8. Input Methods
9. Output Methods
11. Internet Tools
12. X Clients
If an interface or utility is defined as "supported in End User
Environment", that interface or utility shall be available in both
Server and Desktop environments.
[*** Editor's Note: More restricted environment, such as "embedded"
systems, may be defined in the future version of this document. ***]
The following option can be supported in each environment:
(3) Software Development Option
If this option is supported, utilities, libraries and associated modules
to develop internationalized software (such as compilers or interpreters)
shall be provided.
1.3.2 Conformance Levels
Several levels are defined for conformance for each environment. These levels
are defined as follows:
(1) Level 1
The level 1 is the bottom-line level of conformance. All conforming
implementations shall provide this level of interfaces and utilities to
conform to this specification. If level is not specified in the specification,
that specification shall be considered as Level 1.
(2) Level 2
The level 2 is more advanced or extended level of conformance. Conforming
implementations are encouraged to provide this level of interfaces and
utilities to conform to this specification, but it is not mandatory.
2. Terminology
2.1 Definition of Terms
The following terms are used in this specification:
Implementation-defined
A value or behavior is implementation-defined when it is left to
the implementation to define [and document] the corresponding
requirements for correct application behavior.
May
With respect to implementations, the word "may" is to be interpreted as
an optional feature that is not required in this
specification but can be provided. With respect to application, the word
"may" means that the feature is optional. The term "optional" has
the same definition as "may".
Shall
In this specification, the word "shall" is to be interpreted as a
mandatory requirement on the implementation or on application, depending
upon the context. The term "must" has the same definition as "shall".
Should
With respect to implementations, the word "should" is to be interpreted
as an implementation recommendation, but not a requirement. With respect
to application, the word "should" is to be interpreted as recommended
programming practice.
Supported
Certain facilities in this specification are optional. If a facility is
supported, it behaves as specified by this specification.
If a facility is "supported" by an implementation, the implementation
must document how to obtain and install the facility, or the facility is
installed by installer of the implementation by explicitly selected by
the user or implicitly installed with other system components. If an
implementation "supports" a facility, the distributor of the
implementation shall commit that the facility can run on the
implementation.
Unspecified
When a value or behavior is unspecified, the specification defines no
portability requirements for a facility on an implementation even when
faced with an application that uses the facility. An application that
requires specific behavior in such an instance, rather than tolerating
any behavior when using that facility, is not a portable application.
Provided
Certain facilities in this specification are mandatory and implemented
in all conforming implementations.
2.2 General Terms
character
A sequence of one or more bytes representing a single graphic symbol or
control code.
This term corresponds to the ISO C standard term multibyte character
(multi-byte character), where a single-byte character is a special case
of a multi-byte character. Unlike the usage in the ISO C standard,
character here has no necessary relationship with storage space, and
byte is used when storage space is discussed.
[Single UNIX Specification, Version 2 (derived from ISO/IEC 9945-2:1993)]
byte
An individually addressable unit of data storage that is equal to or
larger than an octet, used to store a character or a portion of a
character; see character.
A byte is composed of a contiguous sequence of bits, the number of which
is implementation-dependent. The least significant bit is called the
low-order bit; the most significant is called the high-order bit.
Note that this definition of byte deviates intentionally from the usage
of byte in some international standards, where it is used as a synonym
for octet (always eight bits). On a system based on the ISO/IEC
9945-2:1993 standard, a byte may be larger than eight bits so that it
can be an integral portion of larger data objects that are not evenly
divisible by eight bits (such as a 36-bit word that contains four 9-bit
bytes).
[Single UNIX Specification, Version 2 (derived from ISO/IEC 9945-2:1993)]
repertoire
A specified set of characters that are represented in a coded character
set.
[ISO/IEC 10646-1:2000]
character boundary
Within a stream of octets the demarcation between the last octet of the
coded representation of a character and the first octet of that of the
next coded character.
[ISO/IEC 10646-1:2000]
control function
An action that affects the recording, processing, transmission, or
interpretation of data, and that has coded representation consisting of
one or more octets.
[ISO/IEC 10646-1:2000]
graphic character
A character, other than a control function, that has a visual
representation normally handwritten, printed, or displayed.
[ISO/IEC 10646-1:2000]
graphic symbol
The visual representation of a graphic character or of a composite
sequence.
[ISO/IEC 10646-1:2000]
coded character set [CCS]
A Coded Character Set (CCS) is a mapping from a set of abstract
characters to a set of integers. Examples of coded character sets
are ISO 10646, US-ASCII, and ISO-8859 series.
[RFC 2130]
character encoding scheme [CES]
A Character Encoding Scheme (CES) is a mapping from a Coded Character
Set or several coded character sets to a set of octets. Examples of
Character Encoding Schemes are ISO 2022 and UTF-8.
A given CES is typically associated with a single CCS; for example,
UTF-8 applies only to ISO 10646.
[RFC 2130]
transfer encoding syntax [TES]
It is frequently necessary to transform encoded text into a format
which is transmissible by specific protocols. The Transfer Encoding
Syntax (TES) is a transformation applied to character data encoded
using a CCS and possibly a CES to allow it to be transmitted.
Examples of Transfer Encoding Syntaxes are Base64 Encoding,
gzip encoding, and so forth.
[RFC 2130]
internationalization
The process of designing and developing an implementation with a set of
features, functions, and options intended to facilitate the adaptation
of the implementation to satisfy a variety of cultural environments.
[P1003.0/D16]
localization
The process of utilizing the internationalization features to create a
version of the product for a specific culture.
[P1003.0/D16]
local adaptation
The process of modifying a product that is specific to one culture to
make it specific to another culture.
[P1003.0/D16]
locale
A description of a cultural environment.
[P1003.0/D16]
3. Base Libraries
(1) Scope
This chapter defines runtime library interfaces required to conform to this
specification. Conforming implementations shall provide the C language
APIs defined by [ISO C] and [POSIX.1]. In addition to the C language
interface, conforming level 2 implementations shall provide interfaces for
other programming languages.
(2) Requirements
Conforming implementations shall provide the internationalization
functions listed in the Table 3-1 and the headers listed in the Table 3-2.
The specifications of the functions and the definitions of the headers
shall conform to [POSIX.1] and [ISO C].
In addition to the functions in the Table 3-1, conforming implementations
shall provide the wide character and wide string I/O functionality
through printf/scanf family of functions as specified in [ISO C].
Table 3-1 C Language internationalization functions
btowc() fgetwc() fgetws() fputwc() fputws()
fwide() fwprintf() fwscanf() getwc() getwchar()
iswalnum() iswalpha() iswcntrl() iswctype() iswdigit()
iswgraph() iswlower() iswprint() iswpunct() iswspace()
iswupper() iswxdigit() localeconv() mblen() mbrlen()
mbrtowc() mbsinit() mbsrtowcs() mbstowcs() mbtowc()
putwc() putwchar() setlocale() strftime() swprintf()
swscanf() towctrans() towlower() towupper() ungetwc()
vfwprintf() vswprintf() vwprintf() wcrtomb() wcscat()
wcschr() wcscmp() wcscoll() wcscpy() wcscspn()
wcsftime() wcslen() wcsncat() wcsncmp() wcsncpy()
wcspbrk() wcsrchr() wcsrtombs() wcsspn() wcsstr()
wcstod() wcstok() wcstol() wcstombs() wcstoul()
wcsxfrm() wctob() wctomb() wctrans() wctype()
wmemchr() wmemcmp() wmemcpy() wmemmove() wmemset()
wprintf() wscanf()
Table 3-2 C language headers
<locale.h> <wchar.h> <wctype.h>
Conforming implementations shall provide the internationalization
functions listed in the Table 3-3 and headers listed in the Table 3-4.
The specifications of the functions and the definitions of the headers
shall conform to [XSH5].
Table 3-3 Additional C Language internationalization functions
catclose() catgets() catopen()
iconv() iconv_close() iconv_open()
nl_langinfo() strfmon() strptime()
wcswidth() wcwidth()
Table 3-4 Additional C language headers
<iconv.h> <langinfo.h> <monetary.h> <nl_types.h>
Conforming implementations may provide the gettext message handling
function which is specified in Annex C: Publicly Available Specifications.
Conforming level 1 implementations should support
the POSIX regular expression functions listed in the Table 3-5
and the header <regex.h>.
The specifications of the functions and the definitions of the header
should conform to [XSH5].
Table 3-5 POSIX regular expression functions
regcomp() regexec() regerror() regfree()
Conforming implementations shall provide the application execution
environment in which the internationalized applications (written
by using the internationalization functions above) can behave
appropriately depending on the value of Environment Variables,
without requiring any change of the applications.
See Annex A: Environment Variables for the environment variables
to which internationalization functions will refer.
Conforming implementations shall support the application execution
environments specified in Annex B.
Conforming level 2 implementations shall define
_XOPEN_CURSES version test macro and provide the internationalized
curses library functions which are specified in [XCURSES4.2].
Conforming level 2 implementations shall support Java Runtime
environment ([TBD]), Internationalization Component for Unicode
[ICU], and Perl execution environment [Perl 5.6] including Perl
interpreter and modules.
Note. The following Perl modules are related with Globalization.
(see http://www.perl.com/CPAN-local/modules/
00modlist.long.html#Part2-ThePerl5Mo)
Name Description
------------ --------------------------------------------
I18N::
::Charset Character set names and aliases
::Collate Locale based comparisons
::LangTags compare & extract language tags (RFC1766)
::WideMulti Wide and multibyte character string
Locale::
::Country ISO 3166 two letter country codes
::Date Month/weekday names in various languages
::Langinfo The <langinfo.h> API
::Language ISO 639 two letter language codes
::Msgcat Access to XPG4 message catalog functions
::PGetText What GNU gettext does, written in pure perl
::gettext Multilanguage messages
Unicode::
::String String manipulation for Unicode strings
::Map8 Convert between most 8bit encodings
(3) Implementation Examples
GNU C library version 2.2
[TBD]
(4) Future Direction
In the next version of this specification,
conforming implementations may be required to provide
POSIX regular expression functions and internationalized curses
library functions.
4. Graphic Libraries
(1) Scope
This chapter defines runtime library interfaces for graphical user interface
(GUI). Conforming implementations shall provide graphical user interface
defined by the X Window System Version 11 Release 6 [X11R6].
(2) Requirements
The confirming implementation shall provide the API for
following functions:
- Locale
setlocale()
XSupportsLocale()
XSetLocaleModifiers()
- Internationalized Text Drawing
XCreateFontSet() -- not recommended (use XOpenOM/XCreateOC)
XFreeFontSet()
XFontsOfFontSet()
XBaseFontNameListOfFontSet()
XLocaleOfFontSet()
XContextDependentDrawing()
XExtentsOfFontSet()
XmbTextEscapement()
XwcTextEscapement()
XmbTextExtents()
XwcTextExtents()
XmbTextPerCharExtents()
XwcTextPerCharExtents()
XmbDrawString()
XwcDrawString()
XmbDrawImageString()
XwcDrawImageString()
XmbDrawText()
XwcDrawText()
- X Output Methods -- X11R6 Extension
XOpenOM()
XCloseOM()
XDisplayOfOM()
XLocaleOfOM()
XSetOMValues()
XGetOMValues()
XCreateOC()
XDestroyOC()
XOMOfOC()
XSetOCValues()
XGetOCValues()
- Resource Management
XrmInitialize()
XrmLocaleOfDatabase()
XrmParseCommand()
XResourceManagerString()
XScreenResourceString()
XrmGetFileDatabase()
XrmGetStringDatabase()
XrmMergeDatabases()
XrmCombineDatabase()
XrmCombineFileDatabase()
XrmGetDatabase()
XrmSetDatabase()
XrmGetResource()
XrmEnumerateDatabase()
XrmPutResource()
XrmPutStringResource()
XrmPutLineResource()
XrmPutFileDatabase()
XrmDestroyDatabase()
XrmPermStringToQuark()
XrmQGetResource()
XrmQGetSearchList()
XrmQGetSearchResource()
XrmQPutResource()
XrmQPutStringResource()
XrmQuarkToString()
XrmStringToBindingQuarkList()
XrmStringToQuark()
XrmStringToQuarkList()
XrmUniqueQuark()
- Inter-Client Communication
XmbTextListToTextProperty()
XwcTextListToTextProperty()
XmbTextPropertyToTextList()
XwcTextPropertyToTextList()
XFreeStringList()
XwcFreeStringList()
XmbSetWMProperties()
XSetWMProperties()
XSetWMName()
XSetWMIconName()
- X Input Methods -- Internationalized Text Input
XOpenIM()
XCloseIM()
XDisplayOfIM()
XLocaleOfIM()
XSetIMValues()
XGetIMValues()
XCreateIC()
XVaCreateNestedList()
XDestroyIC()
XIMOfIC()
XSetICValues()
XGetICValues()
XSetICFocus()
XUnsetICFocus()
XmbResetIC()
XwcResetIC()
XFilterEvent()
XmbLookupString()
XwcLookupString()
XRegisterIMInstantiateCallback()
XUnregisterIMInstantiateCallback()
Conforming level 2 implementations shall support languages listed in
Annex B. Conforming level 1 implementations need not to support
languages that require complex text layout (ar_*, he_IL, iw_IL, th_TH,
and *_IN).
(3) Implementation Examples
The following implementation examples are available
for this category.
[#1] X11R6.3 or later
http://www.x.org
[#2] XFree86 3.3 or later
http://www.xfree86.org
(4) Future Direction
In the next version of this specification, Unicode, BiDi
(bidirectional text), and vertical writing will become requirement.
5. Shells and Utilities
(1) Scope
This chapter defines runtime environment required to support traditional
UNIX command interpreter called "shell" and other basic utilities defined
by [POSIX.2].
(2) Requirements
- Shell implementation
Conforming level 2 implementations shall be able to use at least,
UTF-8 encoding as filename.
The globbing functionality of the shell shall be internationalized as
defined in [POSIX.2].
Conforming implementations shall provide a shell that supports the
functionalities of "Bourne shell", with internationalization
capabilities defined above.
- The utilities implementation
Conforming level 1 implementations shall determine the message
catalogue, printing date format and sorting order according to the
environment variables listed in Annex A.
(a) Locale
Conforming implementations shall provide the following utilities
to generate and refer locale definitions as specified in [XCU5]:
gencat locale localedef
(b) Text Editor
Conforming implementations shall provide the following utilities
to edit text files encoded in the supported locale as specified in [XCU5].
ed ex vi
(c) Date and Time formatting
Conforming implementations shall provide the following utilities
to display locale-specific date and time formats as specified in [XCU5]:
at cal cpio date lp lpstat ls patch ps tar
time uucp uustat
(d) Text Processing
Conforming implementations shall provide the following utilities
to process text as specified in [XCU5].
comm cxref diff egrep expand fgrep fold
getopts grep iconv join less mailx man
nm (symbol sorting order) od (floating point) pr
printf sed sort tr unexpand uniq wc
(e) Regular Expressions
On conforming level 2 implementations, utilities that process
regular expressions shall support Basic Regular Expression
(BRE) and Extended Regular Expression (ERE) as specified in
[POSIX.2].
On conforming level 1 implementations, utilities that process
regular expressions should support BRE and ERE as specified in
[POSIX.2]. If an implementation is not able to support BRE
and ERE, it may support the regular expression syntax defined in
re_comp() of [XSH5] instead of BRE and the regular expression
syntax defined in regcmp() of [XSH5] instead of ERE.
The following utilities are relevant:
egrep fgrep grep perl sed awk
(f) Filename Handling
Conforming implementations shall provide the following utilities
to correctly handle filenames beyond those in Portable Filename
Character Set.
cpio find tar
(g) General Text Editor
Conforming implementations shall support at least one text editor
that can handle text which is encoded in UTF-8.
(h) Terminal Emulator
Conforming implementations shall support terminal emulator that
can handle character encoding schemes for supporting locales.
Conforming implementations should support terminal emulator
that works every supporting locale, but the implementation
may support different terminal emulator per locale.
[*** Editor's note: msgfmt(1), xgettext(1) will be added. ***]
(3) Implementation Examples
Examples of level 1 implementation
GNU bash
GNU textutils
GNU shellutils
GNU fileutils
GNU emacs
kterm, kon, etc.
(4) Future Direction
none
6. Programming Languages
(1) Scope
This chapter defines the requirements for various programming languages.
Note that the specifications defined by this chapter shall be provided
by conforming implementations if Software Development Option is supported.
(2) Requirements
Conforming level 2 implementations shall support the
compiler or interpreter for the following languages:
- C/C++
- Perl
- Java
Each programming language shall be internationalized as specified in
the following specifications:
- C language as specified in [ISO C]
- C++ language as specified in [ISO C++]
- Perl language as specified in [Perl 5.6]
- Java language as specified in [Java]
Note: See 3. Base Libraries about runtime environment
of Perl and Java languages.
(3) Implementation Examples
The following implementation examples are available for these
languages:
[#1] C/C++: GNU Compiler Collection
- http://www.gnu.org/software/gcc/gcc.html
[#2] C/C++: Fortran & C Package (Linux)
C++ Package (Linux)
Fujitsu Kyushu System Engineering Limited (in Japan)
http://www.fqs.co.jp/fort-c/
Fujitsu C/C++ Express (Linux)
Fujitsu Fortran Express (Linux)
Fujitsu America Inc. (in US)
http://www.tools.fujitsu.com/
[#3] Perl:
- http://www.perl.com/pub/n/Perl_5.6.0_is_out!
[#4] Java: Java env.(from Hiura-san)
(4) Future Directions
None
7. Graphic Toolkit and X Window Server
(1) Scope
This chapter defines the requirements for graphic toolkit supported on
top of the X Window System and the X Window System server.
(2) Requirements
Graphic Toolkit
There are no requirements on the Graphic Toolkit
in terms of internationalization.
X Window Server
Conforming implementations shall support X11R6-based X server
and font server which support TrueType fonts.
(3) Implementation Examples
The following implementation examples are available
for this category.
[Graphic Toolkit]
GTK+
http://www.gtk.org
Qt
http://www.troll.no/products/qt.html
[X Window Server]
X TrueType Server(X-TT)
http://X-TT.dsl.gr.jp/index.html
XFree86 3.3.6
(4) Future Directions
None
8. Input Method
(1) Scope
This chapter defines the requirements for text input used by the X Window
System and other environments. Such mechanism is needed to support
non-Western languages (for example, Chinese, Japanese and Korean).
(2) Requirements
Conforming implementations shall provide means, i.e., Input
Method(s) for user to input characters specified in the
Annex B: Supported locales and character encoding schemes.
Conforming implementations shall provide X Input Method
Server(s) which can connect with Input Method Engines of
the supporting locales.
Conforming implementations shall support Input Method
Engines for the supporting locales, that can be connected
with the above Input Method Server(s). The conforming
implementations shall document which Input Method Engines
are supported by the above X Input Method Server(s) and
how user can get and install the Engines into the conforming
implementations.
The X Input Method Server(s) should have a
capability to switch Input Method Engines dynamically,
but a conforming implementation may provide multiple
Input Method Servers per locale.
Conforming level 1 implementations should provide
an X Input Method Server which supports UTF-8 encoding
and allows user to input whole repertoire of Unicode 3.0.
Conforming level 2 implementations shall provide
an X Input Method Server which supports UTF-8 encoding
and allows user to input whole repertoire of Unicode 3.0.
Conforming implementations may provide X Input
Method Server(s) which supports locale specific
character repertoire and locale specific
character encodings.
Every application that has X Windows system based GUI and
has a capability to accept character input from users
shall have the interface with the above X Input Method
Server(s).
Conforming implementations should provide means
for user to input characters specified in the supporting
locale through Console and TTY device interfaces.
(3) Implementation Examples
X Input Method Servers: IIIMF, kinput2, Xwnmo etc.
(4) Future Direction
In the next version of this specification,
the recommendation of single X Input Method Server
which can switch Input Method Engines dynamically
will become mandatory requirement.
In the next version of this specification,
the recommendation for conforming level 1 implementations
regarding the X Input Method Server(s) which support
UTF-8 encoding will become mandatory requirement.
9. Output Method
(1) Scope
This chapter defines the requirements for text output used by the X Window
System. Such mechanism is needed to support languages that require
complex text rendering.
(2) Requirements
Conforming implementations shall provide means, i.e., Output
Method(s), for user to output characters specified in the
Annex B: Supported locales and character encoding schemes.
Conforming implementations shall provide X Output Method
interface defined in X11R6 Xlib specification chapter 13 as a
displaying primitive for X Window System.
Conforming implementations shall provide multibyte and
wide character interface which cover Unicode 3.0 repertoire.
Conforming implementations should provide
an X Output Method which supports the encoding schemes
listed in Annex B and UTF-32.
Conforming implementations shall provide a terminal
emulator on X Window System that output characters in the
supported locale.
Conforming implementations should provide console or
tty device interface that output characters in the supported
locale.
(3) Implementation Examples
X11R6.4 Xlib, IIIMXCF
(4) Future Direction
None
10. Network Servers
(1) Scope
This chapter defines the requirements for various network servers, such as
file sharing servers, WWW servers, etc.
The requirements on the following kinds of servers will be
discussed in this section.
- NetBios over TCP/IP
- AppleTalk
- Network File System
- HTTP Server
(2) Requirements
This version of this standard has no requirements for the Network
Servers.
(3) Implementation Examples
None
(4) Future Directions
In the next version of this specification, the requirements on the handling
of names, e.g., filename, domain name, resource name, and user name, will be
specified in this section.
11. Internet Tools
(1) Scope
This chapter defines the requirements for Internet client tools, such as
WWW browsers and Mail User Agents (MUAs).
(2) Requirements
Conforming implementations shall make at least one character encoding scheme
available per locale specified in Annex B.
The supported character encoding scheme should be in IANA registry
and dominant in the supported locales.
Conforming level 2 implementations of Web browsers and mail user agents
shall be able to input and output whole repertoire of Unicode 3.0.
(3) Implementation Examples
The following implementation examples are available
for this category.
Mozilla
http://www.mozilla.org
(4) Future Direction
None
12. X Clients
(1) Scope
This chapter defines the requirements for the X Window System clients,
including window managers.
(2) Requirements
Conforming level 2 implementations shall support a text editor that
can handle full repertoire of UTF-8. Conforming level 1 implementations
need not support languages that require complex text layout.
Conforming implementations shall provide a terminal emulator on the
X Window System that output characters specified in the supported locale.
(3) Implementation Examples
kterm, rxvt-ml, etc.
(window managers: twm, vtwm, fvwm2, mwm, etc.)
(4) Future Direction
None
Annex A (Normative): Environment Variables
Conforming implementations shall provide the following environment
variables that are relevant to the operation of internationalized
interfaces or internationalized commands and utilities.
LANG
LC_ALL
LC_COLLATE
LC_CTYPE
LC_MESSAGES
LC_MONETARY
LC_NUMERIC
LC_TIME
NLSPATH
The usage and the semantics of these environment variables shall
be the same as the description in "6.2 Internationalisation
Variables" in [XBD5].
Annex B (Normative): Support locales and character encoding schemes
Conforming implementations shall provide the following locales.
C
POSIX
Conforming implementations shall support the following locales.
Note 1. The language names come from ISO/IEC 639-1.
Note 2. The region/country names come from ISO/IEC 3166-1.
ar_AE Arabic UNITED ARAB EMIRATES
ar_BH BAHRAIN
ar_DZ ALGERIA
ar_EG EGYPT
ar_IQ IRAQ
ar_JO JORDAN
ar_KW KUWAIT
ar_LB LEBANON
ar_LY LIBYAN ARAB JAMAHIRIYA
ar_MA MOROCCO
ar_OM OMAN
ar_QA QATAR
ar_SA SAUDI ARABIA
ar_SD SUDAN
ar_SY SYRIAN ARAB REPUBLIC
ar_TN TUNISIA
ar_YE YEMEN
be_BY Byelorussian BELARUS
bg_BG Bulgarian BULGARIA
ca_ES Catalan SPAIN
cs_CZ Czech CZECH REPUBLIC
da_DK Danish DENMARK
de_AT German AUSTRIA
de_CH SWITZERLAND
de_DE GERMANY
de_LU LUXEMBOURG
el_GR Greek GREECE
en_AU English GREECE
en_BE BELGIUM
en_CA CANADA
en_GB UNITED KINGDOM
en_IE IRELAND
en_NZ NEW ZEALAND
en_US UNITED STATES
en_ZA SOUTH AFRICA
es_AR Spanish ARGENTINA
es_BO BOLIVIA
es_CL CHILE
es_CO COLOMBIA
es_CR COSTA RICA
es_DO DOMINICAN REPUBLIC
es_EC ECUADOR
es_ES SPAIN
es_GT GUATEMALA
es_HN HONDURAS
es_MX MEXICO
es_NI NICARAGUA
es_PA PANAMA
es_PE PERU
es_PR PUERTO RICO
es_PY PARAGUAY
es_SV SYRIAN ARAB REPUBLIC
es_UY URUGUAY
es_VE VENEZUELA
et_EE Estonian ESTONIA
fi_FI Finnish FINLAND
fr_BE French BELGIUM
fr_CA CANADA
fr_CH SWITZERLAND
fr_FR FRANCE
fr_LU LUXEMBOURG
he_IL Hebrew ISRAEL
hr_HR Croatian CROATIA
hu_HU Hungarian HUNGARY
is_IS Icelandic ICELAND
it_CH Italian SWITZERLAND
it_IT ITALY
iw_IL Hebrew ISRAEL ** An alias of he_IL **
ja_JP Japanese JAPAN
ko_KR Korean KOREA, REPUBLIC OF
lt_LT Lithuanian LITHUANIA
lv_LV Lativian, Lettish LATVIA
mk_MK Macedonian MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF
nl_BE Dutch BELGIUM
nl_NL NETHERLANDS
no_NO Norwegian NORWAY
pl_PL Polish POLAND
pt_BR Portuguese BRAZIL
pt_PT PORTUGAL
ro_RO Romanian ROMANIA
ru_RU Russian RUSSIAN FEDERATION
sh_YU Serbo-Croatian YUGOSLAVIA
sk_SK Slovak SLOVAKIA
sl_SI Slovenian SLOVENIA
sq_AL Albanian ALBANIA
sr_YU Serbian YUGOSLAVIA
sv_SE Swedish SWEDEN
th_TH Thai THAILAND
tr_TR Turkish TURKEY
uk_UA Ukrainian UKRAINE
vi_VN Vietnamese VIETNAM
zh_CN Chinese CHINA
zh_HK HONG KONG
zh_TW TAIWAN, PROVINCE OF CHINA
ar_IN Arabic INDIA
as_IN Assamese INDIA
bn_IN Bengali INDIA
fa_IN Persian INDIA
gu_IN Gujarati INDIA
hi_IN Hindi INDIA
kn_IN Kannada INDIA
ks_IN Kashmiri INDIA
ml_IN Malayalam INDIA
or_IN Oriya INDIA
pa_IN Punjabi INDIA
sd_IN Sindhi INDIA
ps_IN Pashto, Pushto INDIA
ta_IN Tamil INDIA
te_IN Telugu INDIA
ur_IN Uldu INDIA
Conforming implementations shall make at least UTF-8 coded
character set usable under the above locale environments.
Conforming implementations also may make the following
character encoding schemes usable under some of the above
locale environments.
ISO/IEC 8859-1
ISO/IEC 8859-2
ISO/IEC 8859-5
ISO/IEC 8859-7
ISO/IEC 8859-9
ISO/IEC 8859-13
ISO/IEC 8859-15
Korean EUC
Japanese EUC
Simplified Chinese EUC
Traditional Chinese EUC
Annex C (Normative): Publicly Available Specification
C.1 gettext message handling functions
[Editor's Note:
The following is the reference page for SunOS's gettext.
This will be modified appropriately later.]
-----------------------------------------------------------------------
C Library Functions gettext(3C)
NAME
gettext, dgettext, dcgettext, textdomain, bindtextdomain -
message handling functions
SYNOPSIS
#include <libintl.h>
char *gettext(const char *msgid);
char *dgettext(const char *domainname, const char *msgid);
char *textdomain(const char *domainname);
char *bindtextdomain(const char *domainname, const char
*dirname);
#include <libintl.h>
#include <locale.h>
char *dcgettext(const char *domainname, const char *msgid,
int category);
DESCRIPTION
The gettext(), dgettext(), and dcgettext() functions attempt
to retrieve a target string based on the specified msgid
argument within the context of a specific domain and the
current locale. The length of strings returned by gettext(),
dgettext(), and dcgettext() is undetermined until the func-
tion is called. The msgid argument is a null-terminated
string.
The NLSPATH environment variable (see environ(5)) is
searched first for the location of the LC_MESSAGES catalo-
gue. The setting of the LC_MESSAGES category of the current
locale determines the locale used by gettext() and dget-
text() for string retrieval. The category argument deter-
mines the locale used by dcgettext(). If NLSPATH is not
defined and the current locale is "C", gettext(), dget-
text(), and dcgettext() simply return the message string
that was passed. In a locale other than "C", if NLSPATH is
not defined or if a message catalogue is not found in any of
the components specified by NLSPATH, the routines search for
the message catalogue dirname/locale/category/domainname.mo,
after querying bindtextdomain() for dirname.
For gettext(), the domain used is set by the last valid
call to textdomain(). If a valid call to textdomain() has
not been made, the default domain (called messages) is
used.
For dgettext() and dcgettext(), the domain used is specified
by the domainname argument. The domainname argument is
equivalent in syntax and meaning to the domainname argument
to textdomain(), except that the selection of the domain is
valid only for the duration of the dgettext() or dcgettext()
function call.
The textdomain() function sets or queries the name of the
current domain of the active LC_MESSAGES locale category.
The domainname argument is a null-terminated string that can
contain only the characters allowed in legal filenames.
The domainname argument is the unique name of a domain on
the system. If there are multiple versions of the same
domain on one system, namespace collisions can be avoided by
using bindtextdomain(). If textdomain() is not called, a
default domain is selected. The setting of domain made by
the last valid call to textdomain() remains valid across
subsequent calls to setlocale(3C), and gettext().
The domainname argument is applied to the currently active
LC_MESSAGES locale.
The current setting of the domain can be queried without
affecting the current state of the domain by calling
textdomain() with domainname set to the null pointer. Cal-
ling textdomain() with a domainname argument of a null
string sets the domain to the default domain (messages).
The bindtextdomain() function binds the path predicate for a
message domain domainname to the value contained in dirname.
If domainname is a non-empty string and has not been bound
previously, bindtextdomain() binds domainname with dir-
name.
If domainname is a non-empty string and has been bound pre-
viously, bindtextdomain() replaces the old binding with
dirname. The dirname argument can be an absolute or relative
pathname being resolved when gettext(), dgettext(), or
dcgettext() are called. If domainname is a null pointer or
an empty string, bindtextdomain() returns NULL. User
defined domain names cannot begin with the string SYS_.
Domain names beginning with this string are reserved for
system use.
RETURN VALUES
The individual bytes of the string returned by gettext(),
dgettext(), or dcgettext() can contain any value other than
null. If msgid is a null pointer, the return value is unde-
fined. The string returned must not be modified by the pro-
gram, and can be invalidated by a subsequent call to get-
text(), dgettext(), dcgettext() , or setlocale(3C). If the
domainname argument to dgettext() or dcgettext() is a null
pointer, the results are undefined.
If the target string cannot be found in the current locale
and selected domain, gettext(), dgettext(), and dcgettext()
return msgid.
The normal return value from textdomain() is a pointer to a
string containing the current setting of the domain. If
domainname is a null pointer, textdomain() returns a pointer
to the string containing the current domain. If textdomain()
was not previously called and domainname is a null string,
the name of the default domain is returned. The name of the
default domain is messages.
The return value from bindtextdomain() is a null-terminated
string containing dirname or the directory binding associ-
ated with domainname if dirname is NULL. If no binding is
found, the default return value is /usr/lib/locale. If
domainname is a null pointer or an empty string,
bindtextdomain() takes no action and returns a null pointer.
The string returned must not be modified by the caller.
USAGE
These routines impose no limit on message length. However, a
text domainname is limited to TEXTDOMAINMAX (256) bytes.
The gettext(), dgettext(), dcgettext(), textdomain(), and
bindtextdomain() can be used safely in multithreaded appli-
cations, as long as setlocale(3C) is not being called to
change the locale.
FILES
/usr/lib/locale
The default path predicate for message domain
files.
/usr/lib/locale/locale/LC_MESSAGES/domainname.mo
system default location for file containing mes-
sages for language locale and domainname
/usr/lib/locale/locale/LC_XXX/domainname.mo
system default location for file containing mes-
sages for language locale and domainname for
dcgettext() calls where LC_XXX is LC_CTYPE,
LC_NUMERIC, LC_TIME, LC_COLLATE, LC_MONETARY, or
LC_MESSAGES.
dirname/locale/LC_MESSAGES/domainname.mo
location for file containing messages for domain
domainname and path predicate dirname after a suc-
cessful call to bindtextdomain()
dirname/locale/LC_XXX/domainname.mo
location for files containing messages for domain
domainname, language locale, and path predicate
dirname after a successful call to
bindtextdomain() for dcgettext() calls where
LC_XXX is one of LC_CTYPE, LC_NUMERIC, LC_TIME,
LC_COLLATE, LC_MONETARY, or LC_MESSAGES.
** Editor's note ** specification of msgfmt(1), xgettext(1) will be added.
------------------------------------------------------------
Annex D (Informative): Base Components
A) Conforming implementations shall provide the following interfaces
and commands besides internationalized interfaces and commands in
chapter 3-11.
** System Interfaces:
Conforming implementations shall provide the C functions and headers
which are defined in POSIX.1 [ISO/IEC 9945-1:1990], see document #1.
** Commands and Utilities:
[A] ar, at, arch[*], arp[*]
[B] basename, batch, bzip2[*], bunzip2[*], bzip2recover[*]
[C] cat, cd, chgrp, chmod, chown, cmp, col, comm, compress, cp,
cpio, csplit, cu, cut, chroot[*]
[D] date, dd, delta, df, diff, dirname, du, diff3[*], domainname[*],
dircmp
[E] echo, expand, expr
[F] false, file, fuser, ftp[BSD]
[G] getopts, gzip[*], gunizip[*], getconf
[H] head, hostname[*], hash
[I] id, ipcrm, ipcs, ifconfig[*], imake
[J] join
[K] kill, killall[*]
[L] ln, logger, logname, ls, ldd[*]
[M] make, mkdir, mkfifo, mv, mount[*], m4, mailx, mkswap[*],
mkfs[*],
[N] nice, nl, nohup, netstat[*], nslookup[*], newgrp, nm
[O] od
[P] paste, patch, pathchk, printf, ps, pwd, ping[*],
[R] read, renice, rm, rmdir, reboot[*]
[S] sleep, spell, split, strings, strip, sum,
shar[BSD], su[BSD], shutdown[*]
[T] tabs, tail, tar, tee, test, time, touch, tr, true, tty, type,
telnet[*], talk, tput, tsort
[U] umask, uname, uncompress, unexpand, uniq, unlink,
unpack, uudecode, uuencode, umount[*]
[V] val
[W] wait, wc, who
[X] xargs
[Z] zcat
The usage and the semantics of these commands without [*] be the
same as the description in the document #2, ones with [BSD] be in #4
and ones with [*] be in ...
B) Furthermore, conforming implementations should support the
following commands and protocols.
** Commands and Utilities:
[A] alias, admin (SCCS), asa
[B] bc, bg
[C] cal, crontab, clear[*], calendar, cancel, cflow, cksum, command,
ctags, cxref
[D] dis, fc
[E] env
[F] fg, fort77
[G] get(SCCS)
[J] jobs
[L] lex, lpr[BSD], lpq[BSD], lprm[BSD], lpc[BSD], less[*], line,
link, lint, lp, lpstat
[M] more, mesg
[P] passwd[BSD], pack, pcat, pax, pg, pr, prs(SCCS)
[R] rmdel(SCCS)
[S] stty, sact(SCCS), sccs(SCCS)
[T] tclsh[#3]
[U] unalias, uumerge[*], ulimit, unget(SCCS), uucp, uulog, uuname,
uupick, uustat, uuto, uux
[W] wish[#3], write, what(SCCS)
[Y] yacc
The usage and the semantics of commands without [*] be the same as
the description in the document #2, ones with [#3] be in the
document #3, ones with [BSD] be in #4, and ones with [*] be in ...
** Protocols:
Conforming implementations should support the protocols which are
defined in the following RFC
specifications(http://www.rfc-editor.org/):
- ICMP (Internet Control Message Protocol): RFCs 792 and 950
- SMTP (Simple Mail Transfer Protocol): RFCs 821, 822, 1123 and 2045-2049
- FTP (File Transfer Protocol): RFCs 959, 2228 and 2640
- TELNET: RFCs 854, 855, 856, 857, 858, 859, 860 and 861
- DNS (Domain Naming System): RFCs 974, 1034, 1035, 1101, 1183, 1706,
1982, 1995, 1996, 2136, 2137, 2181, 2308 and 2535
- LPD (Line Printer Daemon Protocol): RFC 1179
- POP3 (Post Office Protocol - Version 3): RFCs 1939, 1957 and 2449
C) Furthermore, conforming implementations may support the following
commands.
** Commands and Utilities:
[D] depmod[*]
[I] ipchains[*], ipmasqadm[*], insmod[*]
[K] kerneld[*], ksyms[*]
[L] lilo[*], loadkeys[*], lsmod[*]
[M] modprobe[*]
[R] rmmod[*], rdev[*]
[T] tac[*]
The usage and the semantics of these commands be the same as the
description in ...
[#1] ISO/IEC 9945-1:1990 Information Technology -- Portable
Operating System Interface (POSIX) -- Part 1: System
Application Program Interface (API) [C Language]
[#2] The Single UNIX Specification, Version 2:
- System Interface Definitions, Issue 5
- Commands & Utilities Issue 5
[#3] Tcl/Tk 8.3 (February 10, 2000)
- http://dev.scriptics.com/software/tcltk/8.3.tml
[#4] 4.4BSD User's Reference Manual
[#5] ...
Annex E (Informative): Informative References
[ISO 2022]
ISO/IEC 2022:1994 Information technology -- Character code
structure and extension techniques
ISO/IEC 2022:1994/Cor 1:1999
[ISO 6429]
ISO/IEC 6429:1992 Information technology -- Control functions
for coded character sets
[ISO 646]
ISO/IEC 646:1991 Information technology -- ISO 7-bit coded
character set for information interchange
[ISO 6937]
ISO/IEC 6937:1994 Information technology -- Coded graphic
character set for text communication -- Latin alphabet
[ISO 8859-1]
ISO/IEC 8859-1:1998 Information technology -- 8-bit single-byte
coded graphic character sets -- Part 1: Latin alphabet No. 1
[ISO 8859-2]
ISO/IEC 8859-2:1999 Information technology -- 8-bit single-byte
coded graphic character sets -- Part 2: Latin alphabet No. 2
[ISO 8859-3]
ISO/IEC 8859-3:1999 Information technology -- 8-bit single-byte
coded graphic character sets -- Part 3: Latin alphabet No. 3
[ISO 8859-4]
ISO/IEC 8859-4:1998 Information technology -- 8-bit single-byte
coded graphic character sets -- Part 4: Latin alphabet No. 4
[ISO 8859-5]
ISO/IEC 8859-5:1999 Information technology -- 8-bit single-byte
coded graphic character sets
[ISO 8859-6]
ISO/IEC 8859-6:1999 Information technology -- 8-bit single-byte
coded graphic character sets -- Part 6: Latin/Arabic alphabet
[ISO 8859-7]
ISO 8859-7:1987 Information processing -- 8-bit single-byte coded
graphic character sets -- Part 7: Latin/Greek alphabet
[ISO 8859-8]
ISO/IEC 8859-8:1999 Information technology -- 8-bit single-byte
coded graphic character sets -- Part 8: Latin/Hebrew alphabet
[ISO 8859-9]
ISO/IEC 8859-9:1999 Information technology -- 8-bit single-byte
coded graphic character sets -- Part 9: Latin alphabet No. 5
[ISO 8859-10]
ISO/IEC 8859-10:1998 Information technology -- 8-bit single-byte
coded graphic character sets -- Part 10: Latin alphabet No. 6
[ISO 8859-13]
ISO/IEC 8859-13:1998 Information technology -- 8-bit single-byte
coded graphic character sets -- Part 13: Latin alphabet No. 7
[ISO 8859-14]
ISO/IEC 8859-14:1998 Information technology -- 8-bit single-byte
coded graphic character sets -- Part 14: Latin alphabet No. 8 (Celtic)
[ISO 8859-15]
ISO/IEC 8859-15:1999 Information technology -- 8-bit single-byte coded
graphic character sets -- Part 15: Latin alphabet No. 9
[PPP-I18N]
RFC 2484 PPP LCP Internationalization Configuration Option. G. Zorn.
January 1999. (Format: TXT=8330 bytes) (Updates RFC2284, RFC1994,
RFC1570) (Status: PROPOSED STANDARD)
[IETF-Charset]
RFC 2277 IETF Policy on Character Sets and Languages. H. Alvestrand.
January 1998. (Format: TXT=16622 bytes) (Also BCP0018) (Status: BEST
CURRENT PRACTICE)
[IANA-Charset]
RFC 2278 IANA Charset Registration Procedures. N. Freed, J. Postel.
January 1998. (Format: TXT=18881 bytes) (Also BCP0019) (Status: BEST
CURRENT PRACTICE)
[MIME-Parameter]
RFC 2231 MIME Parameter Value and Encoded Word Extensions: Character Sets,
Languages, and Continuations. N. Freed, K. Moore. November 1997.
(Format: TXT=19280 bytes) (Obsoletes RFC2184) (Updates RFC2045,
RFC2047 RFC2183) (Status: PROPOSED STANDARD)
[RFC 2130]
RFC 2130 The Report of the IAB Character Set Workshop held 29 February - 1
March, 1996. C. Weider, C. Preston, K. Simonsen, H. Alvestrand, R.
Atkinson, M. Crispin, P. Svanberg. April 1997. (Format: TXT=63443
bytes) (Status: INFORMATIONAL)
[HTML-I18N]
RFC 2070 Internationalization of the Hypertext Markup Language. F.
Yergeau, G. Nicol, G. Adams, M. Duerst. January 1997. (Format:
TXT=91887 bytes) (Status: PROPOSED STANDARD)
[MIME]
RFC 2045 Multipurpose Internet Mail Extensions (MIME) Part One: Format of
Internet Message Bodies. N. Freed & N. Borenstein. November 1996.
(Format: TXT=72932 bytes) (Obsoletes RFC1521, RFC1522, RFC1590)
(Updated by RFC2184, RFC2231) (Status: DRAFT STANDARD)
RFC 2046 Multipurpose Internet Mail Extensions (MIME) Part Two: Media
Types. N. Freed & N. Borenstein. November 1996. (Format: TXT=105854
bytes) (Obsoletes RFC1521, RFC1522, RFC1590) (Updated by RFC2646)
(Status: DRAFT STANDARD)
RFC 2047 MIME (Multipurpose Internet Mail Extensions) Part Three: Message
Header Extensions for Non-ASCII Text. K. Moore. November 1996.
(Format: TXT=33262 bytes) (Obsoletes RFC1521, RFC1522, RFC1590)
(Updated by RFC2184, RFC2231) (Status: DRAFT STANDARD)
RFC 2048 Multipurpose Internet Mail Extensions (MIME) Part Four:
Registration Procedures. N. Freed, J. Klensin & J. Postel. November
1996. (Format: TXT=45033 bytes) (Obsoletes RFC1521, RFC1522, RFC1590)
(Also BCP0013) (Status: BEST CURRENT PRACTICE)
RFC 2049 Multipurpose Internet Mail Extensions (MIME) Part Five:
Conformance Criteria and Examples. N. Freed & N. Borenstein. November
1996. (Format: TXT=51207 bytes) (Obsoletes RFC1521, RFC1522, RFC1590)
(Status: DRAFT STANDARD)
[LANG-TAG]
RFC 1766 Tags for the Identification of Languages. H. Alvestrand. March
1995. (Format: TXT=16966 bytes) (Status: PROPOSED STANDARD)
[MIME-BIDI]
RFC 1556 Handling of Bi-directional Texts in MIME. H. Nussbacher. December
1993. (Format: TXT=5602 bytes) (Status: INFORMATIONAL)
[Unicode-Language-tag]
RFC 2482 Language Tagging in Unicode Plain Text. K. Whistler, G. Adams.
January 1999. (Format: TXT=27800 bytes) (Status: INFORMATIONAL)
[UTF-16]
RFC 2781 UTF-16, an encoding of ISO 10646. P. Hoffman, F. Yergeau.
February 2000. (Format: TXT=29870 bytes) (Status: INFORMATIONAL)
[KOI8-U]
RFC 2319 Ukrainian Character Set KOI8-U. KOI8-U Working Group. April 1998.
(Format: TXT=18042 bytes) (Status: INFORMATIONAL)
[UTF-8]
RFC 2279 UTF-8, a transformation format of ISO 10646. F. Yergeau. January
1998. (Format: TXT=21634 bytes) (Obsoletes RFC2044) (Status: DRAFT
STANDARD)
[ISO-2022-JP-1]
RFC 2237 Japanese Character Encoding for Internet Messages. K. Tamaru.
November 1997. (Format: TXT=11628 bytes) (Status: INFORMATIONAL)
[UTF-7]
RFC 2152 UTF-7 A Mail-Safe Transformation Format of Unicode. D. Goldsmith,
M. Davis. May 1997. (Format: TXT=28065 bytes) (Obsoletes RFC1642)
(Status: INFORMATIONAL)
[ISO-8859-7]
RFC 1947 Greek Character Encoding for Electronic Mail Messages. D.
Spinellis. May 1996. (Format: TXT=14428 bytes) (Status:
INFORMATIONAL)
[ISO-2022-CN]
RFC 1922 Chinese Character Encoding for Internet Messages. HF. Zhu, DY.
Hu, ZG. Wang, TC. Kao, WCH. Chang & M. Crispi. March 1996. (Format:
TXT=50995 bytes) (Status: INFORMATIONAL)
[HZ-GB-2312]
RFC 1842 ASCII Printable Characters-Based Chinese Character Encoding for
Internet Messages. Y. Wei, Y. Zhang, J. Li, J. Ding, Y. Jiang. August
1995. (Format: TXT=24143 bytes) (Status: INFORMATIONAL)
[HZ]
RFC 1843 HZ - A Data Format for Exchanging Files of Arbitrarily Mixed
Chinese and ASCII characters. F. Lee. August 1995. (Format: TXT=8787
bytes) (Status: INFORMATIONAL)
[ISO-10646-J-1]
RFC 1815 Character Sets ISO-10646 and ISO-10646-J-1. M. Ohta. July 1995.
(Format: TXT=11823 bytes) (Status: INFORMATIONAL)
[ISO-2022-KR]
RFC 1557 Korean Character Encoding for Internet Messages. U. Choi, K.
Chon, H. Park. December 1993. (Format: TXT=8736 bytes) (Status:
INFORMATIONAL)
[ISO-2022-JP-2]
RFC 1554 ISO-2022-JP-2: Multilingual Extension of ISO-2022-JP. M. Ohta, K.
Handa. December 1993. (Format: TXT=11449 bytes) (Status:
INFORMATIONAL)
[ISO-8859-8]
RFC 1555 Hebrew Character Encoding for Internet Messages. H. Nussbacher,
Y. Bourvine. December 1993. (Format: TXT=9273 bytes) (Status:
INFORMATIONAL)
[KOI8-R]
RFC 1489 Registration of a Cyrillic Character Set. A. Chernov. July 1993.
(Format: TXT=7798 bytes) (Status: INFORMATIONAL)
[ISO-2022-JP]
RFC 1468 Japanese Character Encoding for Internet Messages. J. Murai, M.
Crispin, E. van der Poel. June 1993. (Format: TXT=10970 bytes)
(Status: INFORMATIONAL)
[VISCII]
RFC 1456 Conventions for Encoding the Vietnamese Language VISCII:
VIetnamese Standard Code for Information Interchange VIQR: VIetnamese
Quoted-Readable Specification. Vietnamese Standardization Working
Group. May 1993. (Format: TXT=14775 bytes) (Status: INFORMATIONAL)
[IANA-Charset-Registry]
IANA Registry of Character Sets
http://www.isi.edu/in-notes/iana/assignments/character-sets
[WWW-Charmodel]
Character Model for the World Wide Web
29 November 1999, Martin J. Duerst, Franc,ois Yergeau
http://www.w3.org/TR/1999/WD-charmod-19991129
[Unicode-Markup]
Unicode in XML and other Markup Languages
28 September 1999, Martin Duerst, Mark Davis, Hideki Hiura,
Asmus Freytag
http://www.w3.org/TR/1999/WD-unicode-xml-19990928
[MAIL-I18N]
Using International Characters in Internet Mail
prepared by Internet Mail Consortium
Internet Mail Consortium Report: MAIL-I18N
IMCR-010, August 1, 1998
http://www.imc.org/mail-i18n.html
[PLS]
Portable Layout Services: Context-dependent and Directional Text
The Open Group CAE Specification C616
[DISS2]
Distributed Internationalisation Services, Version 2
The Open Group Snapshot S308
[DIF]
Distributed Internationalisation Framework
The Open Group Snapshot S503
[Mozilla L10N-Spec]
Localization Engineering Check List
http://www.mozilla.org/projects/intl/l10n_eng_chklist.html
International Browser Character Coding Menu UI/UE Specifications
http://www.mozilla.org/projects/intl/uidocs/browsercharmenu.html
International Editor UI/UE Specifications
http://www.mozilla.org/projects/intl/uidocs/editorcharmenu.html
[ICMP]
RFC 0792 Internet Control Message Protocol. J. Postel. Sep-01-1981.
(Format: TXT=30404 bytes) (Obsoletes RFC0777) (Updated by RFC0950)
(Also STD0005) (Status: STANDARD)
RFC 0950 Internet Standard Subnetting Procedure. J.C. Mogul, J. Postel.
Aug-01-1985. (Format: TXT=37985 bytes) (Updates RFC0792) (Also
STD0005) (Status: STANDARD)
[SMTP]
RFC 0821 Simple Mail Transfer Protocol. J. Postel. Aug-01-1982. (Format:
TXT=124482 bytes) (Obsoletes RFC0788) (Also STD0010) (Status:
STANDARD)
[RFC 822]
RFC 0822 Standard for the format of ARPA Internet text messages. D.
Crocker. Aug-13-1982. (Format: TXT=109200 bytes) (Obsoletes RFC0733)
(Updated by RFC1123, RFC1138, RFC1148, RFC1327, RFC2156) (Also
STD0011) (Status: STANDARD)
[TELNET]
RFC 0854 Telnet Protocol Specification. J. Postel, J.K. Reynolds.
May-01-1983. (Format: TXT=39371 bytes) (Obsoletes RFC0764, NIC 18639)
(Also STD 0008) (Status: STANDARD)
RFC 0855 Telnet Option Specifications. J. Postel, J.K. Reynolds.
May-01-1983. (Format: TXT=6218 bytes) (Obsoletes NIC 18640) (Also
STD0008) (Status: STANDARD)
RFC 0856 Telnet Binary Transmission. J. Postel, J.K. Reynolds.
May-01-1983. (Format: TXT=9192 bytes) (Obsoletes NIC 15389) (Also
STD0027) (Status: STANDARD)
RFC 0857 Telnet Echo Option. J. Postel, J.K. Reynolds. May-01-1983.
(Format: TXT=11143 bytes) (Obsoletes NIC 15390) (Also STD0028)
(Status: STANDARD)
RFC 0858 Telnet Suppress Go Ahead Option. J. Postel, J.K. Reynolds.
May-01-1983. (Format: TXT=3825 bytes) (Obsoletes NIC 15392) (Also
STD0029) (Status: STANDARD)
RFC 0859 Telnet Status Option. J. Postel, J.K. Reynolds. May-01-1983.
(Format: TXT=4443 bytes) (Obsoletes RFC0651) (Also STD0030) (Status:
STANDARD)
RFC 0860 Telnet Timing Mark Option. J. Postel, J.K. Reynolds. May-01-1983.
(Format: TXT=8108 bytes) (Obsoletes NIC 16238) (Also STD0031)
(Status: STANDARD)
RFC 0861 Telnet Extended Options: List Option. J. Postel, J.K. Reynolds.
May-01-1983. (Format: TXT=3181 bytes) (Obsoletes NIC 16239) (Also
STD0032) (Status: STANDARD)
[TELNET-CHARSET]
RFC 2066 TELNET CHARSET Option. R. Gellens. January 1997. (Format:
TXT=26088 bytes) (Status: EXPERIMENTAL)
[FTP]
RFC 0959 File Transfer Protocol. J. Postel, J.K. Reynolds. Oct-01-1985.
(Format: TXT=151249 bytes) (Obsoletes RFC0765) (Updated by RFC2228,
RFC2640) (Also STD0009) (Status: STANDARD)
[DNS]
RFC 0974 Mail routing and the domain system. C. Partridge. Jan-01-1986.
(Format: TXT=18581 bytes) (Also STD0014) (Status: STANDARD)
RFC 1034 Domain names - concepts and facilities. P.V. Mockapetris.
Nov-01-1987. (Format: TXT=129180 bytes) (Obsoletes RFC0973, RFC0882,
RFC0883) (Obsoleted by RFC1065, RFC2308) (Updated by RFC1101,
RFC1183, RFC1348, RFC1876, RFC1982, RFC2065, RFC2181, RFC2308,
RFC2535) (Also STD0013) (Status: STANDARD)
RFC 1035 Domain names - implementation and specification. P.V.
Mockapetris. Nov-01-1987. (Format: TXT=125626 bytes) (Obsoletes
RFC0973, RFC0882, RFC0883) (Updated by RFC1101, RFC1183, RFC1348,
RFC1876, RFC1982, RFC1995, RFC1996, RFC2065, RFC2181, RFC2136,
RFC2137, RFC2308, RFC2535) (Also STD0013) (Status: STANDARD)
[LPD]
RFC 1179 Line printer daemon protocol. L. McLaughlin. Aug-01-1990.
(Format: TXT=24324 bytes) (Status: INFORMATIONAL)
[POP3]
RFC 1939 Post Office Protocol - Version 3. J. Myers & M. Rose. May 1996.
(Format: TXT=47018 bytes) (Obsoletes RFC1725) (Updated by RFC1957,
RFC2449) (Also STD0053) (Status: STANDARD)
[*** POP3 Extensions ***]
RFC 1957 Some Observations on Implementations of the Post Office Protocol
(POP3). R. Nelson. June 1996. (Format: TXT=2325 bytes) (Updates
RFC1939) (Status: INFORMATIONAL)
RFC 2449 POP3 Extension Mechanism. R. Gellens, C. Newman, L. Lundblade.
November 1998. (Format: TXT=36017 bytes) (Updates RFC1939) (Status:
PROPOSED STANDARD)
[*** RFC 822 Extensions ***]
RFC 1123 Requirements for Internet hosts - application and support. R.T.
Braden. Oct-01-1989. (Format: TXT=245503 bytes) (Updates RFC0822)
(Updated by RFC2181) (Also STD0003) (Status: STANDARD)
RFC 1138 Mapping between X.400(1988) / ISO 10021 and RFC 822. S.E. Kille.
Dec-01-1989. (Format: TXT=191029 bytes) (Obsoleted by RFC1327,
RFC1495, RFC2156) (Updates RFC0822, RFC0987, RFC1026) (Updated by
RFC1148) (Status: EXPERIMENTAL)
RFC 1148 Mapping between X.400(1988) / ISO 10021 and RFC 822. S.E. Kille.
Mar-01-1990. (Format: TXT=194292 bytes) (Obsoleted by RFC1327,
RFC1495, RFC2156) (Updates RFC0822, RFC0987, RFC1026, RFC1138)
(Status: EXPERIMENTAL)
RFC 1327 Mapping between X.400(1988) / ISO 10021 and RFC 822. S.
Hardcastle-Kille. May 1992. (Format: TXT=228598 bytes) (Obsoletes
RFC987, RFC1026, RFC1138, RFC1148) (Obsoleted by RFC1495, RFC2156)
(Updates RFC0822, RFC0822) (Status: PROPOSED STANDARD)
RFC 2156 MIXER (Mime Internet X.400 Enhanced Relay): Mapping between X.400
and RFC 822/MIME. S. Kille. January 1998. (Format: TXT=280385 bytes)
(Obsoletes RFC0987, RFC1026, RFC1138, RFC1148, RFC1327, RFC1495)
(Updates RFC0822) (Status: PROPOSED STANDARD)
[*** FTP Extensions ***]
RFC 2228 FTP Security Extensions. M. Horowitz, S. Lunt. October 1997.
(Format: TXT=58733 bytes) (Updates RFC0959) (Status: PROPOSED
STANDARD)
[FTP-I18N]
RFC 2640 Internationalization of the File Transfer Protocol. B. Curtin.
July 1999. (Format: TXT=57204 bytes) (Updates 959) (Status: PROPOSED
STANDARD)
[*** DNS Extensions ***]
RFC 1101 DNS encoding of network names and other types. P.V. Mockapetris.
Apr-01-1989. (Format: TXT=28677 bytes) (Updates RFC1034, RFC1035)
(Status: UNKNOWN)
RFC 1183 New DNS RR Definitions. C.F. Everhart, L.A. Mamakos, R. Ullmann,
P.V. Mockapetris. Oct-01-1990. (Format: TXT=23788 bytes) (Updates
RFC1034, RFC1035) (Status: EXPERIMENTAL)
RFC 1348 DNS NSAP RRs. B. Manning. July 1992. (Format: TXT=6871 bytes)
(Obsoleted by RFC1637) (Updates RFC1034, RFC1035) (Updated by
RFC1637) (Status: EXPERIMENTAL)
RFC 1637 DNS NSAP Resource Records. B. Manning, R. Colella. June 1994.
(Format: TXT=21768 bytes) (Obsoletes RFC1348) (Obsoleted by RFC1706)
(Updates RFC1348) (Status: EXPERIMENTAL)
RFC 1706 DNS NSAP Resource Records. B. Manning, R. Colella. October 1994.
(Format: TXT=19721 bytes) (Obsoletes RFC1637) (Status: INFORMATIONAL)
RFC 1876 A Means for Expressing Location Information in the Domain Name
System. C. Davis, P. Vixie, T. Goodwin, I. Dickinson. January 1996.
(Format: TXT=29631 bytes) (Updates RFC1034, RFC1035) (Status:
EXPERIMENTAL)
RFC 1982 Serial Number Arithmetic. R. Elz & R. Bush. August 1996. (Format:
TXT=14440 bytes) (Updates RFC1034, RFC1035) (Status: PROPOSED
STANDARD)
RFC 1995 Incremental Zone Transfer in DNS. M. Ohta. August 1996. (Format:
TXT=16810 bytes) (Updates RFC1035) (Status: PROPOSED STANDARD)
RFC 1996 A Mechanism for Prompt Notification of Zone Changes (DNS NOTIFY).
P. Vixie. August 1996. (Format: TXT=15247 bytes) (Updates RFC1035)
(Status: PROPOSED STANDARD)
RFC 2065 Domain Name System Security Extensions. D. Eastlake, 3rd, C.
Kaufman. January 1997. (Format: TXT=97718 bytes) (Obsoleted by
RFC2535) (Updates RFC1034, RFC1035) (Status: PROPOSED STANDARD)
RFC 2181 Clarifications to the DNS Specification. R. Elz, R. Bush. July
1997. (Format: TXT=36989 bytes) (Updates RFC1034, RFC1035, RFC1123)
(Updated by RFC2535) (Status: PROPOSED STANDARD)
RFC 2136 Dynamic Updates in the Domain Name System (DNS UPDATE). P. Vixie,
Ed., S. Thomson, Y. Rekhter, J. Bound. April 1997. (Format: TXT=56354
bytes) (Updates RFC1035) (Status: PROPOSED STANDARD)
RFC 2137 Secure Domain Name System Dynamic Update. D. Eastlake. April
1997. (Format: TXT=24824 bytes) (Updates RFC1035) (Status: PROPOSED
STANDARD)
RFC 2308 Negative Caching of DNS Queries (DNS NCACHE). M. Andrews. March
1998. (Format: TXT=41428 bytes) (Obsoletes RFC1034) (Updates RFC1034,
RFC1035) (Status: PROPOSED STANDARD)
RFC 2535 Domain Name System Security Extensions. D. Eastlake. March 1999.
(Format: TXT=110958 bytes) (Updates RFC2181, RFC1035, RFC1034)
(Status: PROPOSED STANDARD)
[*** Editor's note: NFS related RFCs (1094, 1813, 1053, 1831, and 1832) may
be added to the referenes. ***]
Annex F (Informative): Future direction
** Editor's note ** Text will be provided by Hideki Hiura.
Annex G (Informative): Guide
** Editor's note *** So far, no text is provided.
Stuart
Stuart R. Anderson anderson@metrolink.com
Metro Link Incorporated South Carolina Office
4711 North Powerline Road 129 Secret Cove Drive
Fort Lauderdale, Florida 33309 Lexington, SC 29072
voice: 954.938.0283x496 voice: 803.951.3630
fax: 954.938.1982 SkyTel: 800.405.3401
http://www.metrolink.com/
Reply to: