Jump to content

Code page 1089

From Alfawiki
ISO/IEC 8859-6
Company typeCharacter encoding standard
IndustryInformation technology
PredecessorASMO 708
Founded1987
Products8-bit single-byte coded graphic character set for Arabic script

ISO/IEC 8859-6:1999, titled Information technology — 8-bit single-byte coded graphic character sets — Part 6: Latin/Arabic alphabet, belongs to the ISO/IEC 8859 family of ASCII-based character encoding standards, initially released in 1987. Referred to as Latin/Arabic, this standard encodes only the basic Arabic script letters, necessitating shaping algorithms for proper rendering. It does not include supplementary letters found in other Arabic-derived scripts such as Persian or Urdu.

The IANA designates ISO-8859-6 as the preferred charset when used alongside C0 and C1 control codes defined in ISO/IEC 6429. The encoded text follows a logical sequence, requiring BiDi handling for correct display. By definition, ISO-8859-6 (also known as code page 28596) corresponds to "visual order," whereas ISO-8859-6-I (code page 38596) signifies logical order; nevertheless, in real-world usage and within HTML/XML contexts, ISO-8859-6 typically denotes logical order text. The variant ISO-8859-6-E, which depends on explicit directionality control characters, sees minimal application. IBM assigned the code page/CCSID 1089 designation to ISO 8859-6 to emulate it on their AIX platform.

Serving as an early reference for Arabic script encoding in Unicode, ISO-8859-6 has since become technologically obsolete. Contemporary software, particularly on the Internet, predominantly utilizes Unicode with its widespread UTF-8 encoding, which offers extensive support for Arabic script beyond what ISO-8859-6 or Windows-1256 provide. Web usage data reveals that ISO-8859-6 accounts for less than 0.0002% of web pages and ranks below the top three Arabic character encodings online.

History

In 1986, the now-defunct Arab Standardization and Metrology Organization created ASMO 708 as an 8-bit character encoding tailored for Arabic-speaking regions. Although based on the earlier 7-bit ASMO 449, ASMO 708 introduced significant changes rather than merely extending its predecessor.

This bidirectional encoding alters the lower half of the standard ISO 646, especially affecting digits and certain punctuation marks. Digit shapes switch between Latin and Arabic forms depending on the script context, while symmetrical punctuation marks reverse their orientation according to text direction. The upper half comprises Arabic letters, specific Arabic punctuation, and several additional symbols.

Developed jointly with ECMA, ASMO 708 was adopted by ECMA as ECMA-114 in 1986. That same year, it was standardized by the International Organization for Standardization as ISO 8859-6 and registered under IR 127 in the International Register of Coded Character Sets.

Relationship with other character sets

Several character sets derive from or adapt ASMO 708 to extend language coverage or improve system interoperability:

  • ASMO 708/French 1 incorporates French lowercase letters;
  • French 1/ASMO 708 places French lowercase characters into ISO 8859-1 code points but relocates Arabic letters;
  • ISO/IR 167 adds French and German characters;
  • Microsoft's code page 708 for MS-DOS includes French characters alongside box-drawing symbols;
  • Microsoft's code pages 710 (Transparent Arabic) and 720 (Transparent ASMO) introduce French letters while rearranging Arabic characters to maintain original box-drawing positions from code page 437;
  • Microsoft's Windows 1256 integrates French lowercase letters into Windows 1252 locations at the cost of shifting some Arabic characters.

Code chart

... [table continues with similar structure, omitting repetitive background cells for brevity] ...
Template:Chset-left1 Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1
Template:Chset-left1 Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1Template:Chset-cell1
Template:Chset-left1 Template:Chset-ctrl1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1
Template:Chset-left1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell1 Template:Chset-cell Template:Ch set - cell Template:Ch set - cell Template:Ch set - cell

The code points ranging from 0xEB to 0xF2 correspond to combining characters.

See also

External links