Progress
Internationalization Guide
Case Tables
A case table tells Progress how to convert a character in the code page from uppercase to lowercase or from lowercase to uppercase. Progress uses a case table when it encounters code such as:
Figure 3–2 shows code page ISO8859–15’s BASIC case table, which resides in the
8859-15.dat
file.Figure 3–2: Code Page ISO8859–15’s BASIC Case Table
Case tables have two sections, one for converting a character to uppercase and the other for converting a character to lowercase. Each section contains a value for each element in the code page. The values are arranged in rows of sixteen. In each section, the first value in the first row corresponds to the first element (element 0) of the code page, the second value in the first row corresponds to the second element (element 1), the first value in the second row corresponds to the seventeenth element (element 16), and the last value in the last row corresponds to the last element (element 255).
Within a section, each value is the number of the element with the opposite case. Figure 3–2 shows, for example, that the uppercase equivalent of element 97 is element 65 and that the lowercase equivalent of element 65 is element 97. In code page ISO8859–15, element 97 represents the character “a” and element 65 represents the character “A.” In other words, this case table tells us that the uppercase equivalent of “a” is “A” and that the lowercase equivalent of “A” is “a,” which agrees with what we know about the characters “A” and “a” in ISO8859–15.
NOTE: Languages that do not distinguish between uppercase and lowercase, such as Arabic and Hebrew, still have case tables. These case tables map each code page element to itself. This means that if an application tries to change the case of, say, an Arabic character string, the result is the same character string.
Copyright © 2004 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |