CCSID


A CCSID is a 16-bit number that represents a particular encoding of a specific code page. For example, Unicode is a code page that has several encoding forms, like UTF-8, UTF-16 and UTF-32, but which may or may not actually be accompanied by a CCSID number to indicate that this encoding is being used.

Difference between a code page and a CCSID

The terms code page and CCSID are often used interchangeably, even though they are not synonymous. A code page may be only part of what makes up a CCSID. The following definitions from IBM help to illustrate this point:
The following examples show how some CCSIDs are made up of other CCSIDs.
Character setCode pageCCSIDEncoding scheme
0112200897897
0037000301301

Character setCode pageCCSIDEncoding scheme
01172010411041SBCS
0037000301301DBCS

Character setCode pageCCSIDEncoding scheme
01170008974993SBCS
0037000301301DBCS

All three of these variant Shift-JIS CCSIDs are multi-byte character sets : the single-byte character set portion of each CCSID is different. The double-byte character set portion is the same across each CCSID. CCSID 5028 uses an updated code page 897 called CCSID 4993. CCSID 932 uses the original code page 897, which is CCSID 897. CCSID 942 uses a different SBCS from the other two CCSIDs, which is 1041.
Also notice how CCSID 5028 and 4993 are different by 4096 from the predecessor CCSID with the same code page identifier. This is a common way that CDRA denotes an upgraded CCSID.
There are a few reasons for this complexity: