ISO/ IEC JTC1/SC22 N2645

Date: Thu, 8 Jan 1998 16:25:05 -0500 (EST)
From: "william c. rinehuls" <>
Subject: SC22 N2645 - SC22 Contribution to CAW 

_________________ beginning of title page ____________________________
Programming languages, their environments and system software interfaces
Secretariat:  U.S.A.  (ANSI)


JTC 1/SC22 Contribution to the Workshop on Cultural Adaptability


Secretariat, ISO/IEC JTC 1/SC22


SC22 Contribution


The Secretariat has forwarded this contribution to the Workshop convener.




SC22 N2574 (res 97-17, 97-18 and 97-19)


Address reply to:
ISO/IEC JTC 1/SC22 Secretariat
William C. Rinehuls
8457 Rushing Creek Court
Springfield, VA 22153 USA
Telephone:  +1 (703) 912-9680
Fax:  +1 (703) 912-2973

___________ end of title page; beginning of contribution _______________

    JTC 1/SC22 Contribution to the Workshop on Cultural Adaptability

SC22 has been developing standards and technical reports which include
provisions to facilitate the cultural adaptability of applications for
more than a decade.  In recognition of the importance of this work, SC22
established its WG20, Internationalization, in 1990, to develop the work
item "Functionality for internationalization of applications",  
which had recently been approved by JTC 1.  Prior to this, a  number of
SC22's projects, including POSIX and several of the  programming
languages, such C and COBOL, had provided some  capabilities to support
internationalization and localization.

As a result of the NP approved in 1990, SC22 has developed the  TR 11017
"Framework for Internationalization", which sets  forward a model for
Cultural Adaptability. The process for  cultural adaptability is to first
remove all cultural  dependencies from the programming source text in an
application, and move these cultural dependencies into data specifications
that can be accessed via functions/APIs. 

Some of the benefits of this model is:

-    the application will only have one program source
     eliminating the need to maintain different source
     versions of the application.
-    the application will only need to be available as one
     binary per platform, and the introduction of a new
     version of the application can then be done in many
     markets at the same time. 
-    an application can rely on cultural data that has been
     proven to work according to cultural expectations with
     other applications - An application does not need to
     provide itself the cultural conventions for a whole set
     of environments.
SC22 is now developing standards to support this model:

-    a standard specifying the format to describe the cultural
     data, including default data, ISO/IEC 14652, currently at
     FCD stage.
-    A standard for sorting, ISO/IEC 14651 currently at FCD
     stage, including a template for sorting all characters of
     UCS and APIs to handle this. 
-    a standard for accessing the cultural data via APIs,
     ISO/IEC 15435, currently at WD stage.

In addition, a standard for registering cultural conventions, is being
fasttracked in JTC 1 as ISO/IEC 15897.

With this set of standards an application can be fully internationalized
using standard APIs to access standard internationalization data, via
references to standardized names.

SC22 believes the model established in TR 11017 and the standards which
support the model are applicable to a broad  class of standards being
developed within JTC 1.  In order to  ensure appropriate implementation
of cultural adaptability in JTC 1 standards, SC22 advocates that:

1)  JTC 1 directives address the requirement for cultural adaptability, in
a manner similar to that of 10.5, Application Portability (in JTC 1 N
3348).  The following is possible wording:

   "10.6  Cultural Adaptability

    In order to facilitate the cultural adaptability of applications using
JTC 1 standards, each standard shall be developed with consideration given

    -  the requirements and issues of cultural adaptability and

    -  the requirements and issues of interoperability of cultural
adaptability with other relevant JTC 1 standards."

2)  Form 3, Proposal for a New Work Item, be modified to address the
requirements for cultural adaptability.  The following is possible wording
under "Purpose and Justification":

   " b)  The requirements and objectives of the standardization activity
with respect to cultural adaptability.  If there are none, this should be
indicated. "

3)  NP Acceptance Criteria be modified.  The following is possible wording
under "Business Relevance, A.1" as a second paragraph:

    "Specific attention shall be given to the requirements of cultural
adaptability and the interoperability of cultural adaptability with other
relevant JTC 1 standards."

4)  Each JTC 1 subcommittee assume responsibility for ensuring
appropriate assessment of cultural adaptability requirements for project
subdivisions by addressing this annually in project business plans.

5)  An email reflector be established for communication between all groups
involved in cultural adaptability (the SC22/WG20 convener, Arnold Winkler,
is a good source for identifying such groups).

Placement of SC22WG20 in JTC 1

SC22 sees the process of making cultural adaptability
standards as the following:

1.   Gathering a lot of cultural information from a widespread
     area of issues, for example: characters, character
     attributes, sorting, time and date conventions, monetary
     conventions, spelling, hyphenation, postal formats, paper
     sizes, titulation of persons, keyboards, input methods,
     fonts, and terminology. 
2.   Generalize these, finding the commonality and diversity
     in each of the areas, and describing it in a form that
     can be used in an IT environment.
3.   Describe specification formats and APIs that can support
     the diversity of the cultural conventions in each area.

As applications are inherently written in one (or more) specific
programming language, each programming language needs APIs to support
cultural adaptability. Development of each of the programming language
standards in the cultural adaptability area may easily lead to
specifications that behave differently from a users perspective, when
handling the same problems. Users would expect uniform behavior with
respect to cultural conventions across applications on the  same platform,
and also across platforms. To achieve this goal it is necessary to have
strong coordination between the  programming languages, possibly via
development of a programming language independent API, with bindings
for each individual language. The set of APIs should be developed in
close cooperation with each of the programming language  groups, as some
of the data types, e.g.. strings, are  fundamental data types of each
language and thus has impact on  the core language definition.  

In this way, a common specification format for the cultural data can be
exploited for all programming languages. For the data to be well
accessible via APIs, the data specifications formats should be developed
together with the APIs. Each cultural convention area should be accessible
through a general access method so the set of APIs for each of the
cultural areas should be developed together.

SC22 thus sees the writing cultural adaptability standards as a process
gathering cultural processing requirements from many diverse fields,
systemizing and making them into an information technology handleable
specification, which then in close cooperation with the programming
language developing WGs can be incorporated in the programming languages.

The relation to SC22 work is thus very tight as the target of the cultural
adaptability standards, while there are a number of relations on the
information input side to other JTC 1 SCs and ISO TCs outside JTC 1, such
as terminology, sorting, document handling, banking, postal addressing
etc. In some areas, such as character string handling, the functionality
is affecting the core of each programming language. The best way to secure
the strong interaction with programming language standards development is
to keep the cultural adaptability standardization of JTC 1 within SC22. 

_____________________ end of SC22 N2645 _____________________________