**** Merged from MCS ****
[mono-project.git] / mcs / class / Mono.Globalization / README
blob44a351948e06245819eb824791fd6344429aa0c2
1 On how to fill out the CultureInfo XML files
3 For all the files:
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.
9       DisplayName - This is the full name of this language used in
10       this culture. The format for this string should be:
12            [Full language name] ([Country name] / [Region name])
14       EnglishName - This string is the same as DisplayName, but it
15       must be in English.
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'.
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.
29 For specific cultures:
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.
37     For these cultures, we need the following items:
39         - NumberFormatInfo
41         - DateTimeFormatInfo
43 The format of DateTimeFormatInfo:
45     The DateTimeFormatInfo section consists of 21 parts:
47     Patterns:
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
60     Names:
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.
70     
71     14. MonthNames - The names of the months in the year.
73     Misc:
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.
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.
88     18. DateSeparator - The string that is used to the seperate the
89                         year, the month and the day.
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.
95     20. PMDesignator - The string for representing hours after noon
97     21. TimeSeparator - The string that is used to seperate the hours,
98                         the minutes and the seconds.
99    
101 The format of NumberFormatInfo:
103     The NumberFormatInfo section consists of 25 parts:
105     Currency related:
107      1. CurrencySymbol - The symbol used as the current symbol in this
108                          culture.
110      2. CurrencyPositivePattern
111      3. CurrencyNegativePattern
112      4. CurrencyGroupSizes
113      5. CurrencyGroupSeparator
114      6. CurrencyDecimalSeparator
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.
124      9. PercentPositivePattern
125     10. PercentNegativePattern
126     11. PercentGroupSizes
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.
138     Number related:
140     15. NumberNegativePattern
141     16. NumberGroupSizes
143     17. NumberGroupSeparator - The string that separates groups of
144                                digits to the left of the decimal
145                                point.
147     18. NumberDecimalSeparator - The decimal indicator for numbers.
150     19. NumberDecimalDigits - The number of decimal places to display
151                               in numbers.
153     Misc.
155     20. PositiveSign - The symbol used to indicate a number as
156                        negative.
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.
167     24. Permillesymbol - The string to represent the 'per mille' symbol.
170     25. NaNSymbol - The string to represent the IEEE not-a-number value.