Cultures and Requirements
This space describes the cultures in each locales which is supported, and the requirements to fulfill them in Sakai.
Person's Name
Name order
There are two orders as follows:
Eastern order (family-name given-name)
It is used in China, Japan, Korea, Taiwan and Vietnam.Western order (given-name family-name)
It is used in some locales other than the above.
Basically, the Eastern people are called as the Eastern order from the Western people, and vice versa. However, Japanese who represent the own name by using the alphabet, are called in the Western order. When listing the names, the Western people use 'family-name, given-name' format.
Wikipedia: http://en.wikipedia.org/wiki/Name_order#Name_order
Requirements in Sakai
When displaying the own username only, it should be switched to the Western or Eastern order along with the own language preferences. (e.g., the menu of the top right side icon in Sakai 2.9.)
When displaying other user's name, it should be displayed in each user's order along with each language preferences. It should be also considered whether 'family-name, given-name' format should be applied or not when listing those names.
When displaying Japanese user's name who represent the own first and last name in the alphabet and set the own language preferences to Japanese, it is better to be displayed in the Western order.
Date
Date format
Investigation codes:
((SimpleDateFormat) DateFormat.getDateInstance(DateFormat.SHORT, locale)).toPattern()
((SimpleDateFormat) DateFormat.getDateInstance(DateFormat.MEDIUM, locale)).toPattern()
((SimpleDateFormat) DateFormat.getDateInstance(DateFormat.LONG, locale)).toPattern()
((SimpleDateFormat) DateFormat.getDateInstance(DateFormat.FULL, locale)).toPattern()Results:
Notes:
Because Basque and Mongolian are not fully supported in Java, their results are the same as English.
The SHORT format:
There are three orders as YMD, DMY and MDY.
They are separated with a slash, a hyphen or a dot.
Especially in Korea, it is separated with '. ' (dot and blank).
Requirements in Sakai
Probably, the above SHORT format is used in the manual input. So the parsers and the validators should accept them.
Month
Investigation codes:
DateFormatSymbols.getInstance(locale).getShortMonths()[0]
DateFormatSymbols.getInstance(locale).getShortMonths()[1]
DateFormatSymbols.getInstance(locale).getShortMonths()[2]
DateFormatSymbols.getInstance(locale).getShortMonths()[3]
DateFormatSymbols.getInstance(locale).getShortMonths()[4]
DateFormatSymbols.getInstance(locale).getShortMonths()[5]
DateFormatSymbols.getInstance(locale).getShortMonths()[6]
DateFormatSymbols.getInstance(locale).getShortMonths()[7]
DateFormatSymbols.getInstance(locale).getShortMonths()[8]
DateFormatSymbols.getInstance(locale).getShortMonths()[9]
DateFormatSymbols.getInstance(locale).getShortMonths()[10]
DateFormatSymbols.getInstance(locale).getShortMonths()[11]
DateFormatSymbols.getInstance(locale).getMonths()[0]
DateFormatSymbols.getInstance(locale).getMonths()[1]
DateFormatSymbols.getInstance(locale).getMonths()[2]
DateFormatSymbols.getInstance(locale).getMonths()[3]
DateFormatSymbols.getInstance(locale).getMonths()[4]
DateFormatSymbols.getInstance(locale).getMonths()[5]
DateFormatSymbols.getInstance(locale).getMonths()[6]
DateFormatSymbols.getInstance(locale).getMonths()[7]
DateFormatSymbols.getInstance(locale).getMonths()[8]
DateFormatSymbols.getInstance(locale).getMonths()[9]
DateFormatSymbols.getInstance(locale).getMonths()[10]
DateFormatSymbols.getInstance(locale).getMonths()[11]Results:
Notes:
Because Basque and Mongolian are not fully supported in Java, their results are the same as English.
It seems that there are no differences except for the translation.
Requirements in Sakai
The date picker widget should be able to select or display those translated months.
Day of week
Investigation codes:
Calendar.getInstance(locale).getFirstDayOfWeek()
DateFormatSymbols.getInstance(locale).getShortWeekdays()[1]
DateFormatSymbols.getInstance(locale).getShortWeekdays()[2]
DateFormatSymbols.getInstance(locale).getShortWeekdays()[3]
DateFormatSymbols.getInstance(locale).getShortWeekdays()[4]
DateFormatSymbols.getInstance(locale).getShortWeekdays()[5]
DateFormatSymbols.getInstance(locale).getShortWeekdays()[6]
DateFormatSymbols.getInstance(locale).getShortWeekdays()[7]
DateFormatSymbols.getInstance(locale).getWeekdays()[1]
DateFormatSymbols.getInstance(locale).getWeekdays()[2]
DateFormatSymbols.getInstance(locale).getWeekdays()[3]
DateFormatSymbols.getInstance(locale).getWeekdays()[4]
DateFormatSymbols.getInstance(locale).getWeekdays()[5]
DateFormatSymbols.getInstance(locale).getWeekdays()[6]
DateFormatSymbols.getInstance(locale).getWeekdays()[7]Results:
Notes:
Because Basque and Mongolian are not fully supported in Java, their results are the same as English.
Most of the first day of week is Sunday or Monday.
Especially in Arabic, it starts from Saturday.
Requirements in Sakai
The date picker widget should start from the proper day of week along with the current user's language preferences.
Time
Time format
Investigation codes:
((SimpleDateFormat) DateFormat.getTimeInstance(DateFormat.SHORT, locale)).toPattern()
((SimpleDateFormat) DateFormat.getTimeInstance(DateFormat.MEDIUM, locale)).toPattern()
((SimpleDateFormat) DateFormat.getTimeInstance(DateFormat.LONG, locale)).toPattern()
((SimpleDateFormat) DateFormat.getTimeInstance(DateFormat.FULL, locale)).toPattern()Results:
Notes:
Because Basque and Mongolian are not fully supported in Java, their results are the same as English.
There are 12-hour and 24-hour locales.
Requirements in Sakai
The time picker widgets should be switched to 12-hour or 24-hour format along with the current user's language preferences.
Probably, the SHORT or the MEDIUM format is used in the manual input. So the parsers and the validators should accept them.
AM/PM
Investigation codes:
DateFormatSymbols.getInstance(locale).getAmPmStrings()[0]
DateFormatSymbols.getInstance(locale).getAmPmStrings()[1]Results: