ISO/IEC JTC1/SC22/WG14 N1041


Keld Simonsen
2003-10-24

I18N APIs


ISO 15435  was disbanded by SC22
This is an expert contribution by me.

One comment on 15435: should rather have been done
in individual WGs

Current draft:
      Written as a C specification
       Based on submission from WG14
       Feature-complete



Architecture:
       Some APIs compatible with C std
       character set independent (10646 reference)
       reentrant/thread safe (no global variables)
       interfaces to TR 14652 (but 14652 not required)
       Bindings to other programming languages possible
           (first incarnation LID/LIPC, second IBM techniques)

A number of APIs implemented in glibc







Main structures:
       string - with length, can contain \0, locale independent
                     str[0] == length
       locale - as we know and love it in C
       encoding == SC2 coded character set, internet charset
                  may be specified with POSIX or TR 14652 charmap
       repertoiremap == SC2 character repertoire, in 10646.
                  may be specified with IS 15897 or TR 14652 repertoiremap

construtors and destructors specified for all main structures.
attribute, copy, conversion






Locale APIs
all have locale as explicit parameter
istype(), tolowers(), touppers(), strcoll_l(), strncoll_l() strxfrm_l()
stringcoll() stringncoll() stringxfrm() - with precision
stringget() - message catalogue

conversion to and from string:
int, real, bytes, time, money, name, address, tel

localedef utility










WG14 TR?

Possibly together with security?

Some functionality may be left out