<translation specifier>
──┬─<source characters>── TO ──<destination characters>─┬──────────────┤ └─<translate table identifier>────────────────────────┘
<source characters>
──┬─<string literal>─┬─────────────────────────────────────────────────┤ └─<character set>──┘
<character set>
──┬─ ASCII ──┬─────────────────────────────────────────────────────────┤ ├─ EBCDIC ─┤ └─ HEX ────┘
<destination characters>
──┬─<string literal>────────────────┬──────────────────────────────────┤ ├─<character set>─────────────────┤ └─<special destination character>─┘
<special destination character>
A string literal that is 1 character long.
Specifying a character set is equivalent to specifying all the characters in that set, in ascending binary sequence. The length of a character set is equal to the total number of characters in the set.
A string literal specifies all the characters in the string literal. The length of a string literal is equal to the number of characters in the string literal in terms of the largest character size specified by the string literal.
A translation specifier is enclosed in parentheses, and each succeeding translation specifier overrides the previous translation specifiers.
Within a single translate table, all source character sizes and all destination character sizes must be the same, although the character sizes of the source and destination parts need not be the same.
The number of destination characters must equal the number of source characters, unless the special destination character is used or unless a character set is used for both the source characters and the destination characters. If the special destination character is used, all the source characters are translated to the special destination character.
Every translate table has a default base in which all source characters are translated to characters with all bits equal to 0 (zero). This means that all source characters that do not appear in the TRANSLATETABLE declaration are translated to the character whose binary representation had all bits equal to 0 (zero).
The use of a character set for both the source and destination parts invokes a standard table from the operating system and provides a way of obtaining a legitimate base on which additional translation specifiers can be used, if desired, to override certain parts of the standard table. The use of a translate table identifier as a translation specifier can also be used to provide a base.
When string literals of equal length are used for the source and destination parts, translation is based on the corresponding positions of the source and destination characters, from left to right.

