Copied remotely
[mono.git] / mcs / class / Mono.Globalization / README
1 On how to fill out the CultureInfo XML files
2
3 For all the files:
4
5     * We need translation for the name of each culture. Given a
6       CultureInfo code, we'd like to know its DisplayName, EnglishName
7       and NativeName.
8
9       DisplayName - This is the full name of this language used in
10       this culture. The format for this string should be:
11
12            [Full language name] ([Country name] / [Region name])
13
14       EnglishName - This string is the same as DisplayName, but it
15       must be in English.
16
17       NativeName - This string is the same as DisplayName, but it is
18       in the language of this specific culture. For example, for 'de',
19       the NativeName should be 'Deutsch'.
20
21     * We need to fill in possible Calendars that can be used in this
22       Culture. If alternative calendars are used in this culture, an
23       element should be added to the sequence in
24       OptionalCalendars. The string inside each additional element
25       should be the full name of a class in the System.Globalization
26       namespace, and this class must be a decendant of the
27       System.Globalization.Calendar class.
28
29 For specific cultures:
30
31     These are the files that are in the form ??-??.xml (excluding
32     zh-CHS.xml and zh-CHT.xml). These files describe a culture /
33     language that is specific to a single location. For example, while
34     'fr' is the code for 'French' in general; 'fr-FR' is the code for
35     French used in France specifically.
36
37     For these cultures, we need the following items:
38
39         - NumberFormatInfo
40
41         - DateTimeFormatInfo
42
43 The format of DateTimeFormatInfo:
44
45     The DateTimeFormatInfo section consists of 21 parts:
46
47     Patterns:
48
49      1. FullDateTimePattern
50      2. LongDatePattern
51      3. LongTimePattern
52      4. MonthDayPattern
53      5. RFC1123Pattern
54      6. ShortTimePattern
55      7. ShortDatePattern
56      8. SortableDateTimePattern
57      9. UniversalSortableDateTimePattern
58     10. YearMonthPattern
59
60     Names:
61
62     11. AbbreviatedDayNames - The abbreviated names of the days of the
63                               week.
64         
65     12. AbbreviatedMonthNames - The abbreviated names of the months of
66                                 the year
67     
68     13. DayNames - The names of the days of the week.
69
70     
71     14. MonthNames - The names of the months in the year.
72
73     Misc:
74
75     15. AMDesignator - The string for representing hours before noon.
76     
77     16. Calendar - The name of the default Calendar of this
78                    culture. The string must be the full name of a
79                    class in the System.Globalization namespace, and
80                    this class must be a decendant of the
81                    System.Globalization.Calendar class.
82
83     17. CalendarWeekRule - The rule that specifies the first week of
84                            the year. This string must conform to the
85                            names set out by the
86                            System.CalendarWeekRule enumeration.
87
88     18. DateSeparator - The string that is used to the seperate the
89                         year, the month and the day.
90
91     19. FirstDayOfWeek - The first day of the week. This string must
92                          conform to the names set out by the
93                          System.DayOfWeek enumeration.
94
95     20. PMDesignator - The string for representing hours after noon
96
97     21. TimeSeparator - The string that is used to seperate the hours,
98                         the minutes and the seconds.
99    
100
101 The format of NumberFormatInfo:
102
103     The NumberFormatInfo section consists of 25 parts:
104
105     Currency related:
106
107      1. CurrencySymbol - The symbol used as the current symbol in this
108                          culture.
109
110      2. CurrencyPositivePattern
111      3. CurrencyNegativePattern
112      4. CurrencyGroupSizes
113      5. CurrencyGroupSeparator
114      6. CurrencyDecimalSeparator
115
116      7. CurrencyDecimalDigits - The number of decimal places used in
117                                 this currency.
118      
119     Percentage related:
120      
121      8. PercentSymbol - The symbol used as the percentage symbol in
122                         this culture.
123
124      9. PercentPositivePattern
125     10. PercentNegativePattern
126     11. PercentGroupSizes
127
128     12. PercentGroupSeparator - The string that seperates groups of
129                                 digits to the left of the decimal
130                                 point.The string
131     
132     
133     13. PercentDecimalSeparator - The decimal indicator for percentages.
134     
135     14. PercentDecimalDigits - The number of decimal places to display
136                                in percentages.
137
138     Number related:
139
140     15. NumberNegativePattern
141     16. NumberGroupSizes
142
143     17. NumberGroupSeparator - The string that separates groups of
144                                digits to the left of the decimal
145                                point.
146
147     18. NumberDecimalSeparator - The decimal indicator for numbers.
148
149
150     19. NumberDecimalDigits - The number of decimal places to display
151                               in numbers.
152
153     Misc.
154
155     20. PositiveSign - The symbol used to indicate a number as
156                        negative.
157
158     21. NegativeSign - The symbol used to indicate a number as
159                        positive.
160         
161     22. PositiveInfinitySymbol - The symbol used to represent positive
162                                  infinity.
163         
164     23. NegativeInfinitySymbol - The symbol used to represent negative
165                                  infinity.
166
167     24. Permillesymbol - The string to represent the 'per mille' symbol.
168
169
170     25. NaNSymbol - The string to represent the IEEE not-a-number value.