]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/uclibc/lib/contrib/uclibc/extra/locale/programs/categories.def
update
[l4.git] / l4 / pkg / uclibc / lib / contrib / uclibc / extra / locale / programs / categories.def
1 /*
2  *
3  * Copyright (c) 2008  STMicroelectronics Ltd
4  * Filippo Arcidiacono (filippo.arcidiacono@st.com)
5  *
6  * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
7  *
8  * Taken from glibc 2.6
9  *
10  */
11
12
13 /* Definition of all available locale categories and their items.  -*- C -*-
14
15    These definitions are used by the 'locale' the program.
16
17    The general format of the descriptions is like this:
18
19      DEFINE_CATEGORY (ID, name, ( items ), setlocale-postload)
20
21    where items itself is an array of entries in the form
22
23      { ID, name, standard, value-type, min, max }
24
25    The usage of the load, check, output functions depends on the individual
26    program code which loads this file.
27
28    The various value types for the items are `string', `stringarray', `byte'
29    `bytearray', and `word'.  These cover all possible values in the current
30    locale definitions.  `min' and `max' can be individually used again.  */
31
32 #ifndef NO_POSTLOAD
33 #define NO_POSTLOAD NULL
34 #endif
35
36 #if 0
37 DEFINE_CATEGORY
38 (
39  LC_COLLATE, "LC_COLLATE",
40  (
41   DEFINE_ELEMENT (_NL_COLLATE_NRULES,           "collate-nrules",           std, word)
42   DEFINE_ELEMENT (_NL_COLLATE_RULESETS,         "collate-rulesets",         std, string)
43   DEFINE_ELEMENT (_NL_COLLATE_TABLEMB,          "collate-tablemb",          std, wstring)
44   DEFINE_ELEMENT (_NL_COLLATE_WEIGHTMB,         "collate-weightmb",         std, wstring)
45   DEFINE_ELEMENT (_NL_COLLATE_EXTRAMB,          "collate-extramb",          std, wstring)
46   DEFINE_ELEMENT (_NL_COLLATE_INDIRECTMB,       "collate-indirectmb",       std, wstring)
47   DEFINE_ELEMENT (_NL_COLLATE_TABLEWC,          "collate-tablewc",          std, wstring)
48   DEFINE_ELEMENT (_NL_COLLATE_WEIGHTWC,         "collate-weightwc",         std, wstring)
49   DEFINE_ELEMENT (_NL_COLLATE_EXTRAWC,          "collate-extrawc",          std, wstring)
50   DEFINE_ELEMENT (_NL_COLLATE_INDIRECTWC,       "collate-indirectwc",       std, wstring)
51   DEFINE_ELEMENT (_NL_COLLATE_SYMB_HASH_SIZEMB, "collate-symb-hash-sizemb", std, word)
52   DEFINE_ELEMENT (_NL_COLLATE_SYMB_TABLEMB,     "collate-symb-tablemb",     std, wstring)
53   DEFINE_ELEMENT (_NL_COLLATE_SYMB_EXTRAMB,     "collate-symb-extramb",     std, wstring)
54   DEFINE_ELEMENT (_NL_COLLATE_COLLSEQMB,        "collate-collseqmb",        std, wstring)
55   DEFINE_ELEMENT (_NL_COLLATE_COLLSEQWC,        "collate-collseqwc",        std, wstring)
56   DEFINE_ELEMENT (_NL_COLLATE_CODESET,          "collate-codeset",          std, string)
57   ), NO_POSTLOAD)
58 #endif
59
60
61 /* The actual definition of ctype is meaningless here.  It is hard coded in
62    the code because it has to be handled very specially.  Only the names of
63    the functions and the value types are important.  */
64 DEFINE_CATEGORY
65 (
66  LC_CTYPE, "LC_CTYPE",
67  (
68 #if 0
69   DEFINE_ELEMENT (_NL_CTYPE_CLASS,        "ctype-class",        std, wstring)
70   DEFINE_ELEMENT (_NL_CTYPE_TOUPPER,      "ctype-toupper",      std, wstring)
71   DEFINE_ELEMENT (_NL_CTYPE_TOLOWER,      "ctype-tolower",      std, wstring)
72   DEFINE_ELEMENT (_NL_CTYPE_CLASS32,      "ctype-class32",      std, wstring)
73   DEFINE_ELEMENT (_NL_CTYPE_CLASS_NAMES,  "ctype-class-names",  std, stringlist, 10, 32)
74   DEFINE_ELEMENT (_NL_CTYPE_MAP_NAMES,    "ctype-map-names",    std, stringlist, 2, 32)
75   DEFINE_ELEMENT (_NL_CTYPE_WIDTH,        "ctype-width",        std, bytearray)
76   DEFINE_ELEMENT (_NL_CTYPE_MB_CUR_MAX,   "ctype-mb-cur-max",   std, word)
77   DEFINE_ELEMENT (_NL_CTYPE_CODESET_NAME, "charmap",            std, string)
78   DEFINE_ELEMENT (_NL_CTYPE_TOUPPER32,    "ctype-toupper32",    std, wstring)
79   DEFINE_ELEMENT (_NL_CTYPE_TOLOWER32,    "ctype-tolower32",    std, wstring)
80   DEFINE_ELEMENT (_NL_CTYPE_CLASS_OFFSET, "ctype-class-offset", std, word)
81   DEFINE_ELEMENT (_NL_CTYPE_MAP_OFFSET,   "ctype-map-offset",   std, word)
82   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS_MB_LEN, "ctype-indigits_mb-len", std, word)
83   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS0_MB, "ctype-indigits0_mb", std, string)
84   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS1_MB, "ctype-indigits1_mb", std, string)
85   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS2_MB, "ctype-indigits2_mb", std, string)
86   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS3_MB, "ctype-indigits3_mb", std, string)
87   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS4_MB, "ctype-indigits4_mb", std, string)
88   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS5_MB, "ctype-indigits5_mb", std, string)
89   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS6_MB, "ctype-indigits6_mb", std, string)
90   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS7_MB, "ctype-indigits7_mb", std, string)
91   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS8_MB, "ctype-indigits8_mb", std, string)
92   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS9_MB, "ctype-indigits9_mb", std, string)
93   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS_WC_LEN, "ctype-indigits_wc-len", std, word)
94   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS0_WC, "ctype-indigits0_wc", std, wstring)
95   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS1_WC, "ctype-indigits1_wc", std, wstring)
96   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS2_WC, "ctype-indigits2_wc", std, wstring)
97   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS3_WC, "ctype-indigits3_wc", std, wstring)
98   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS4_WC, "ctype-indigits4_wc", std, wstring)
99   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS5_WC, "ctype-indigits5_wc", std, wstring)
100   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS6_WC, "ctype-indigits6_wc", std, wstring)
101   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS7_WC, "ctype-indigits7_wc", std, wstring)
102   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS8_WC, "ctype-indigits8_wc", std, wstring)
103   DEFINE_ELEMENT (_NL_CTYPE_INDIGITS9_WC, "ctype-indigits9_wc", std, wstring)
104 #endif
105   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT0_MB, "ctype-outdigit0_mb", std, string)
106   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT1_MB, "ctype-outdigit1_mb", std, string)
107   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT2_MB, "ctype-outdigit2_mb", std, string)
108   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT3_MB, "ctype-outdigit3_mb", std, string)
109   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT4_MB, "ctype-outdigit4_mb", std, string)
110   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT5_MB, "ctype-outdigit5_mb", std, string)
111   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT6_MB, "ctype-outdigit6_mb", std, string)
112   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT7_MB, "ctype-outdigit7_mb", std, string)
113   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT8_MB, "ctype-outdigit8_mb", std, string)
114   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT9_MB, "ctype-outdigit9_mb", std, string)
115 #if 0
116   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT0_WC, "ctype-outdigit0_wc", std, word)
117   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT1_WC, "ctype-outdigit1_wc", std, word)
118   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT2_WC, "ctype-outdigit2_wc", std, word)
119   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT3_WC, "ctype-outdigit3_wc", std, word)
120   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT4_WC, "ctype-outdigit4_wc", std, word)
121   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT5_WC, "ctype-outdigit5_wc", std, word)
122   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT6_WC, "ctype-outdigit6_wc", std, word)
123   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT7_WC, "ctype-outdigit7_wc", std, word)
124   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT8_WC, "ctype-outdigit8_wc", std, word)
125   DEFINE_ELEMENT (_NL_CTYPE_OUTDIGIT9_WC, "ctype-outdigit9_wc", std, word)
126   DEFINE_ELEMENT (_NL_CTYPE_TRANSLIT_TAB_SIZE, "ctype-translit-tab-size", std, word)
127   DEFINE_ELEMENT (_NL_CTYPE_TRANSLIT_FROM_IDX, "ctype-translit-from-idx", std, wstring)
128   DEFINE_ELEMENT (_NL_CTYPE_TRANSLIT_FROM_TBL, "ctype-translit-from-tbl", std, wstring)
129   DEFINE_ELEMENT (_NL_CTYPE_TRANSLIT_TO_IDX, "ctype-translit-to-idx", std, wstring)
130   DEFINE_ELEMENT (_NL_CTYPE_TRANSLIT_TO_TBL, "ctype-translit-to-tbl", std, wstring)
131   DEFINE_ELEMENT (_NL_CTYPE_TRANSLIT_DEFAULT_MISSING_LEN, "ctype-translit-default-missing-len", std, word)
132   DEFINE_ELEMENT (_NL_CTYPE_TRANSLIT_DEFAULT_MISSING, "ctype-translit-default-missing", std, wstring)
133   DEFINE_ELEMENT (_NL_CTYPE_TRANSLIT_IGNORE_LEN, "ctype-translit-ignore-len", std, word)
134   DEFINE_ELEMENT (_NL_CTYPE_TRANSLIT_IGNORE, "ctype-translit-ignore", std, string)
135   DEFINE_ELEMENT (_NL_CTYPE_MAP_TO_NONASCII, "map-to-nonascii", std, word)
136 #endif
137   ), _nl_postload_ctype)
138
139
140 DEFINE_CATEGORY
141 (
142  LC_MONETARY, "LC_MONETARY",
143  (
144   DEFINE_ELEMENT (INT_CURR_SYMBOL,                     "int_curr_symbol",        std, string)
145   DEFINE_ELEMENT (CURRENCY_SYMBOL,                     "currency_symbol",        std, string)
146   DEFINE_ELEMENT (MON_DECIMAL_POINT,                   "mon_decimal_point",      std, string)
147   DEFINE_ELEMENT (MON_THOUSANDS_SEP,                   "mon_thousands_sep",      std, string)
148   DEFINE_ELEMENT (MON_GROUPING,                        "mon_grouping",           std, bytearray)
149   DEFINE_ELEMENT (POSITIVE_SIGN,                       "positive_sign",          std, string)
150   DEFINE_ELEMENT (NEGATIVE_SIGN,                       "negative_sign",          std, string)
151   DEFINE_ELEMENT (INT_FRAC_DIGITS,                     "int_frac_digits",        std, byte)
152   DEFINE_ELEMENT (FRAC_DIGITS,                         "frac_digits",            std, byte)
153   DEFINE_ELEMENT (P_CS_PRECEDES,                       "p_cs_precedes",          std, byte, 0, 1)
154   DEFINE_ELEMENT (P_SEP_BY_SPACE,                      "p_sep_by_space",         std, byte, 0, 2)
155   DEFINE_ELEMENT (N_CS_PRECEDES,                       "n_cs_precedes",          std, byte, 0, 1)
156   DEFINE_ELEMENT (N_SEP_BY_SPACE,                      "n_sep_by_space",         std, byte, 0, 2)
157   DEFINE_ELEMENT (P_SIGN_POSN,                         "p_sign_posn",            std, byte, 0, 4)
158   DEFINE_ELEMENT (N_SIGN_POSN,                         "n_sign_posn",            std, byte, 0, 4)
159   DEFINE_ELEMENT (__INT_P_CS_PRECEDES,                 "int_p_cs_precedes",      std, byte, 0, 1)
160   DEFINE_ELEMENT (__INT_P_SEP_BY_SPACE,                "int_p_sep_by_space",     std, byte, 0, 2)
161   DEFINE_ELEMENT (__INT_N_CS_PRECEDES,                 "int_n_cs_precedes",      std, byte, 0, 1)
162   DEFINE_ELEMENT (__INT_N_SEP_BY_SPACE,                "int_n_sep_by_space",     std, byte, 0, 2)
163   DEFINE_ELEMENT (__INT_P_SIGN_POSN,                   "int_p_sign_posn",        std, byte, 0, 4)
164   DEFINE_ELEMENT (__INT_N_SIGN_POSN,                   "int_n_sign_posn",        std, byte, 0, 4)
165 #if 0
166   DEFINE_ELEMENT (_NL_MONETARY_DUO_INT_CURR_SYMBOL,    "duo_int_curr_symbol",    std, string)
167   DEFINE_ELEMENT (_NL_MONETARY_DUO_CURRENCY_SYMBOL,    "duo_currency_symbol",    std, string)
168   DEFINE_ELEMENT (_NL_MONETARY_DUO_INT_FRAC_DIGITS,    "duo_int_frac_digits",    std, byte)
169   DEFINE_ELEMENT (_NL_MONETARY_DUO_FRAC_DIGITS,        "duo_frac_digits",        std, byte)
170   DEFINE_ELEMENT (_NL_MONETARY_DUO_P_CS_PRECEDES,      "duo_p_cs_precedes",      std, byte, 0, 1)
171   DEFINE_ELEMENT (_NL_MONETARY_DUO_P_SEP_BY_SPACE,     "duo_p_sep_by_space",     std, byte, 0, 2)
172   DEFINE_ELEMENT (_NL_MONETARY_DUO_N_CS_PRECEDES,      "duo_n_cs_precedes",      std, byte, 0, 1)
173   DEFINE_ELEMENT (_NL_MONETARY_DUO_N_SEP_BY_SPACE,     "duo_n_sep_by_space",     std, byte, 0, 2)
174   DEFINE_ELEMENT (_NL_MONETARY_DUO_INT_P_CS_PRECEDES,  "duo_int_p_cs_precedes",  std, byte, 0, 1)
175   DEFINE_ELEMENT (_NL_MONETARY_DUO_INT_P_SEP_BY_SPACE, "duo_int_p_sep_by_space", std, byte, 0, 2)
176   DEFINE_ELEMENT (_NL_MONETARY_DUO_INT_N_CS_PRECEDES,  "duo_int_n_cs_precedes",  std, byte, 0, 1)
177   DEFINE_ELEMENT (_NL_MONETARY_DUO_INT_N_SEP_BY_SPACE, "duo_int_n_sep_by_space", std, byte, 0, 2)
178   DEFINE_ELEMENT (_NL_MONETARY_DUO_P_SIGN_POSN,        "duo_p_sign_posn",        std, byte, 0, 4)
179   DEFINE_ELEMENT (_NL_MONETARY_DUO_N_SIGN_POSN,        "duo_n_sign_posn",        std, byte, 0, 4)
180   DEFINE_ELEMENT (_NL_MONETARY_DUO_INT_P_SIGN_POSN,    "duo_int_p_sign_posn",    std, byte, 0, 4)
181   DEFINE_ELEMENT (_NL_MONETARY_DUO_INT_N_SIGN_POSN,    "duo_int_n_sign_posn",    std, byte, 0, 4)
182   DEFINE_ELEMENT (_NL_MONETARY_UNO_VALID_FROM,         "uno_valid_from",         std, word)
183   DEFINE_ELEMENT (_NL_MONETARY_UNO_VALID_TO,           "uno_valid_to",           std, word)
184   DEFINE_ELEMENT (_NL_MONETARY_DUO_VALID_FROM,         "duo_valid_from",         std, word)
185   DEFINE_ELEMENT (_NL_MONETARY_DUO_VALID_TO,           "duo_valid_to",           std, word)
186   DEFINE_ELEMENT (_NL_MONETARY_CONVERSION_RATE,        "conversion_rate",         std, wordarray, 2, 2)
187   DEFINE_ELEMENT (_NL_MONETARY_DECIMAL_POINT_WC,       "monetary-decimal-point-wc", std, word)
188   DEFINE_ELEMENT (_NL_MONETARY_THOUSANDS_SEP_WC,       "monetary-thousands-sep-wc", std, word)
189   DEFINE_ELEMENT (_NL_MONETARY_CODESET,                "monetary-codeset",          std, string)
190 #else
191   DEFINE_ELEMENT (_NL_MONETARY_CRNCYSTR,               "monetary-crncystr",         std, string)
192 #endif
193   ), NO_POSTLOAD)
194
195
196 DEFINE_CATEGORY
197 (
198  LC_NUMERIC, "LC_NUMERIC",
199  (
200   DEFINE_ELEMENT (DECIMAL_POINT, "decimal_point", std, string)
201   DEFINE_ELEMENT (THOUSANDS_SEP, "thousands_sep", std, string)
202   DEFINE_ELEMENT (GROUPING,      "grouping",      std, bytearray)
203 #if 0
204   DEFINE_ELEMENT (_NL_NUMERIC_DECIMAL_POINT_WC, "numeric-decimal-point-wc", std, word)
205   DEFINE_ELEMENT (_NL_NUMERIC_THOUSANDS_SEP_WC, "numeric-thousands-sep-wc", std, word)
206   DEFINE_ELEMENT (_NL_NUMERIC_CODESET,          "numeric-codeset",          std, string)
207 #endif
208
209   ), NO_POSTLOAD)
210
211
212 DEFINE_CATEGORY
213 (
214  LC_TIME, "LC_TIME",
215  (
216   DEFINE_ELEMENT (ABDAY_1,     "abday",       std, stringarray,  7,  7)
217   DEFINE_ELEMENT (DAY_1,       "day",         std, stringarray,  7,  7)
218   DEFINE_ELEMENT (ABMON_1,     "abmon",       std, stringarray, 12, 12)
219   DEFINE_ELEMENT (MON_1,       "mon",         std, stringarray, 12, 12)
220   DEFINE_ELEMENT (AM_STR,      "am_pm",       std, stringarray,  2,  2)
221   DEFINE_ELEMENT (D_T_FMT,     "d_t_fmt",     std, string)
222   DEFINE_ELEMENT (D_FMT,       "d_fmt",       std, string)
223   DEFINE_ELEMENT (T_FMT,       "t_fmt",       std, string)
224   DEFINE_ELEMENT (T_FMT_AMPM,  "t_fmt_ampm",  std, string)
225   DEFINE_ELEMENT (ERA,         "era",         opt, stringlist, 0, 100)
226   DEFINE_ELEMENT (ERA_YEAR,    "era_year",    opt, string)
227   DEFINE_ELEMENT (ERA_D_FMT,   "era_d_fmt",   opt, string)
228   DEFINE_ELEMENT (ALT_DIGITS,  "alt_digits",  opt, stringlist,  100, 100)
229   DEFINE_ELEMENT (ERA_D_T_FMT, "era_d_t_fmt", opt, string)
230   DEFINE_ELEMENT (ERA_T_FMT,   "era_t_fmt",   opt, string)
231 #if 0
232   DEFINE_ELEMENT (_NL_TIME_ERA_NUM_ENTRIES,    "time-era-num-entries",    opt, word)
233   DEFINE_ELEMENT (_NL_TIME_ERA_ENTRIES,   "time-era-entries", opt, string)
234   DEFINE_ELEMENT (_NL_WABDAY_1,  "wide-abday",    std, wstringarray,  7,  7)
235   DEFINE_ELEMENT (_NL_WDAY_1,    "wide-day",      std, wstringarray,  7,  7)
236   DEFINE_ELEMENT (_NL_WABMON_1,  "wide-abmon",    std, wstringarray, 12, 12)
237   DEFINE_ELEMENT (_NL_WMON_1,    "wide-mon",      std, wstringarray, 12, 12)
238   DEFINE_ELEMENT (_NL_WAM_STR,   "wide-am_pm",    std, wstringarray,  2,  2)
239   DEFINE_ELEMENT (_NL_WD_T_FMT,  "wide-d_t_fmt",  std, wstring)
240   DEFINE_ELEMENT (_NL_WD_FMT,    "wide-d_fmt",    std, wstring)
241   DEFINE_ELEMENT (_NL_WT_FMT,    "wide-t_fmt",    std, wstring)
242   DEFINE_ELEMENT (_NL_WT_FMT_AMPM, "wide-t_fmt_ampm", std, wstring)
243   DEFINE_ELEMENT (_NL_WERA_YEAR,   "wide-era_year",    opt, wstring)
244   DEFINE_ELEMENT (_NL_WERA_D_FMT,  "wide-era_d_fmt",   opt, wstring)
245   DEFINE_ELEMENT (_NL_WALT_DIGITS,  "wide-alt_digits",  opt, wstringlist, 1000, 100)
246   DEFINE_ELEMENT (_NL_WERA_D_T_FMT, "wide-era_d_t_fmt", opt, wstring)
247   DEFINE_ELEMENT (_NL_WERA_T_FMT,   "wide-era_t_fmt",   opt, wstring)
248   DEFINE_ELEMENT (_NL_TIME_WEEK_NDAYS,      "week-ndays",          std, byte)
249   DEFINE_ELEMENT (_NL_TIME_WEEK_1STDAY,     "week-1stday",         std, word)
250   DEFINE_ELEMENT (_NL_TIME_WEEK_1STWEEK,    "week-1stweek",        std, byte)
251   DEFINE_ELEMENT (_NL_TIME_FIRST_WEEKDAY,   "first_weekday",       std, byte)
252   DEFINE_ELEMENT (_NL_TIME_FIRST_WORKDAY,   "first_workday",       std, byte)
253   DEFINE_ELEMENT (_NL_TIME_CAL_DIRECTION,   "cal_direction",       std, byte)
254   DEFINE_ELEMENT (_NL_TIME_TIMEZONE,        "timezone",            std, string)
255   DEFINE_ELEMENT (_DATE_FMT,                "date_fmt",            opt, string)
256   DEFINE_ELEMENT (_NL_W_DATE_FMT,           "wide-date_fmt",       opt, wstring)
257   DEFINE_ELEMENT (_NL_TIME_CODESET,         "time-codeset",        std, string)
258 #endif
259   ), NO_POSTLOAD)
260
261
262 DEFINE_CATEGORY
263 (
264  LC_MESSAGES, "LC_MESSAGES",
265  (
266   DEFINE_ELEMENT (YESEXPR, "yesexpr", std, string)
267   DEFINE_ELEMENT (NOEXPR,  "noexpr",  std, string)
268   DEFINE_ELEMENT (YESSTR,  "yesstr",  opt, string)
269   DEFINE_ELEMENT (NOSTR,   "nostr",   opt, string)
270 #if 0
271   DEFINE_ELEMENT (_NL_MESSAGES_CODESET, "messages-codeset", std, string)
272 #endif
273   ), NO_POSTLOAD)
274
275 #if 0
276 DEFINE_CATEGORY
277 (
278  LC_PAPER, "LC_PAPER",
279  (
280   DEFINE_ELEMENT (_NL_PAPER_HEIGHT, "height", std, word)
281   DEFINE_ELEMENT (_NL_PAPER_WIDTH,  "width",  std, word)
282   DEFINE_ELEMENT (_NL_PAPER_CODESET, "paper-codeset", std, string)
283   ), NO_POSTLOAD)
284
285 DEFINE_CATEGORY
286 (
287  LC_NAME, "LC_NAME",
288  (
289   DEFINE_ELEMENT (_NL_NAME_NAME_FMT,  "name_fmt",  std, string)
290   DEFINE_ELEMENT (_NL_NAME_NAME_GEN,  "name_gen",  std, string)
291   DEFINE_ELEMENT (_NL_NAME_NAME_MR,   "name_mr",   std, string)
292   DEFINE_ELEMENT (_NL_NAME_NAME_MRS,  "name_mrs",  std, string)
293   DEFINE_ELEMENT (_NL_NAME_NAME_MISS, "name_miss", std, string)
294   DEFINE_ELEMENT (_NL_NAME_NAME_MS,   "name_ms",   std, string)
295   DEFINE_ELEMENT (_NL_NAME_CODESET,   "name-codeset", std, string)
296   ), NO_POSTLOAD)
297
298 DEFINE_CATEGORY
299 (
300  LC_ADDRESS, "LC_ADDRESS",
301  (
302   DEFINE_ELEMENT (_NL_ADDRESS_POSTAL_FMT,      "postal_fmt",      std, string)
303   DEFINE_ELEMENT (_NL_ADDRESS_COUNTRY_NAME,    "country_name",    std, string)
304   DEFINE_ELEMENT (_NL_ADDRESS_COUNTRY_POST,    "country_post",    std, string)
305   DEFINE_ELEMENT (_NL_ADDRESS_COUNTRY_AB2,     "country_ab2",     std, string)
306   DEFINE_ELEMENT (_NL_ADDRESS_COUNTRY_AB3,     "country_ab3",     std, string)
307   DEFINE_ELEMENT (_NL_ADDRESS_COUNTRY_CAR,     "country_car",     std, string)
308   DEFINE_ELEMENT (_NL_ADDRESS_COUNTRY_NUM,     "country_num",     std, word)
309   DEFINE_ELEMENT (_NL_ADDRESS_COUNTRY_ISBN,    "country_isbn",    std, string)
310   DEFINE_ELEMENT (_NL_ADDRESS_LANG_NAME,       "lang_name",       std, string)
311   DEFINE_ELEMENT (_NL_ADDRESS_LANG_AB,         "lang_ab",         std, string)
312   DEFINE_ELEMENT (_NL_ADDRESS_LANG_TERM,       "lang_term",       std, string)
313   DEFINE_ELEMENT (_NL_ADDRESS_LANG_LIB,        "lang_lib",        std, string)
314   DEFINE_ELEMENT (_NL_ADDRESS_CODESET,         "address-codeset", std, string)
315   ), NO_POSTLOAD)
316
317 DEFINE_CATEGORY
318 (
319  LC_TELEPHONE, "LC_TELEPHONE",
320  (
321   DEFINE_ELEMENT (_NL_TELEPHONE_TEL_INT_FMT, "tel_int_fmt", std, string)
322   DEFINE_ELEMENT (_NL_TELEPHONE_TEL_DOM_FMT, "tel_dom_fmt", std, string)
323   DEFINE_ELEMENT (_NL_TELEPHONE_INT_SELECT,  "int_select",  std, string)
324   DEFINE_ELEMENT (_NL_TELEPHONE_INT_PREFIX,  "int_prefix",  std, string)
325   DEFINE_ELEMENT (_NL_TELEPHONE_CODESET,     "telephone-codeset", std, string)
326   ), NO_POSTLOAD)
327
328 DEFINE_CATEGORY
329 (
330  LC_MEASUREMENT, "LC_MEASUREMENT",
331  (
332   DEFINE_ELEMENT (_NL_MEASUREMENT_MEASUREMENT, "measurement", std, byte)
333   DEFINE_ELEMENT (_NL_MEASUREMENT_CODESET,     "measurement-codeset", std, string)
334   ), NO_POSTLOAD)
335
336 DEFINE_CATEGORY
337 (
338  LC_IDENTIFICATION, "LC_IDENTIFICATION",
339  (
340   DEFINE_ELEMENT (_NL_IDENTIFICATION_TITLE,        "title",        std, string)
341   DEFINE_ELEMENT (_NL_IDENTIFICATION_SOURCE,       "source",       std, string)
342   DEFINE_ELEMENT (_NL_IDENTIFICATION_ADDRESS,      "address",      std, string)
343   DEFINE_ELEMENT (_NL_IDENTIFICATION_CONTACT,      "contact",      std, string)
344   DEFINE_ELEMENT (_NL_IDENTIFICATION_EMAIL,        "email",        std, string)
345   DEFINE_ELEMENT (_NL_IDENTIFICATION_TEL,          "tel",          std, string)
346   DEFINE_ELEMENT (_NL_IDENTIFICATION_FAX,          "fax",          std, string)
347   DEFINE_ELEMENT (_NL_IDENTIFICATION_LANGUAGE,     "language",     std, string)
348   DEFINE_ELEMENT (_NL_IDENTIFICATION_TERRITORY,    "territory",    std, string)
349   DEFINE_ELEMENT (_NL_IDENTIFICATION_AUDIENCE,     "audience",     std, string)
350   DEFINE_ELEMENT (_NL_IDENTIFICATION_APPLICATION,  "application",  std, string)
351   DEFINE_ELEMENT (_NL_IDENTIFICATION_ABBREVIATION, "abbreviation", std, string)
352   DEFINE_ELEMENT (_NL_IDENTIFICATION_REVISION,     "revision",     std, string)
353   DEFINE_ELEMENT (_NL_IDENTIFICATION_DATE,         "date",         std, string)
354   DEFINE_ELEMENT (_NL_IDENTIFICATION_CATEGORY,     "category",     std, stringarray, 13, 13)
355   DEFINE_ELEMENT (_NL_IDENTIFICATION_CODESET,      "identification-codeset", std, string)
356   ), NO_POSTLOAD)
357 #endif