Overview
ISO/IEC 30112:2020 - Information technology - Specification methods for cultural conventions - defines standardized description formats and functionality for specifying cultural conventions used by software and systems. The standard covers locale-like categories (character classification, collation, numeric/monetary/date formats, messages, addresses, telephone handling, keyboard and measurement conventions), character set description (CHARMAP), repertoire mapping, and bindings of character names to ISO/IEC 10646 (Unicode). It also provides a set of default values to support interoperable implementations.
Key topics and technical requirements
- Locale/category specifications: Formal description formats for categories such as LC_CTYPE, LC_COLLATE, LC_TIME, LC_NUMERIC, LC_MONETARY, LC_MESSAGES, LC_ADDRESS, LC_TELEPHONE, LC_KEYBOARD, and others.
- Character handling and character sets: CHARMAP and Repertoiremap formats to describe character sets and map character names to ISO/IEC 10646 code points.
- Collation and sorting: Syntax and keywords for defining collation order, equivalence, sections, and weights (LC_COLLATE).
- Classification and transliteration: Rules for character classification, transliteration, and string mapping (LC_CTYPE, LC_XLITERATE).
- Formatting rules: Standardized formats for numeric, monetary, date/time, paper, measurement, and telephone handling.
- Functionality and APIs: Defined data types (string, encoding, repertoire, locale), utilities, and functions (for example, strpcoll and setmedia) for implementing locale-aware behavior.
- Defaults and portability: A set of default values and notation guidance to enable consistent behavior across platforms.
- Documentation and portability aids: BNF grammar, rationale, and implementation notes (including annex on glibc).
Practical applications and who should use it
ISO/IEC 30112:2020 is intended for:
- Software developers and library authors building internationalized (i18n) applications and locale-aware APIs.
- Operating system and runtime implementers providing locale data, collation services, and character set support.
- Localization engineers and product managers who need to supply or validate cultural-convention data for markets.
- Vendors and integrators aiming for consistent sorting, formatting, and text-processing across languages and regions.
Practical uses include providing machine-readable locale bundles, implementing culturally correct sorting and formatting, mapping legacy encodings to Unicode, and enabling applications to adapt to different cultural conventions without code changes.
Related standards
- ISO/IEC 10646 (Universal Coded Character Set / Unicode mapping)
- POSIX / IEEE 9945 family (locale concepts and behaviors) - differences are discussed in the standard’s annexes
Keywords: ISO/IEC 30112:2020, cultural conventions, locale specification, collation, CHARMAP, ISO/IEC 10646, i18n, character set, repertoiremap, locale data.