[Unicode]   Common Locale Data Repository : Bug Tracking Home | Site Map | Search

CLDR Ticket #11455(reviewing)

Opened 7 weeks ago

Last modified 2 weeks ago

Persian/Iran dayPeriod data is bad

Reported by: roozbeh Owned by: roozbeh
Component: datetime Data Locale: fa
Phase: dsub Review: mark
Weeks: Data Xpath:

Description (last modified by roozbeh) (diff)

Here's the current data:

from supplementalData.xml:

<hours preferred="H" allowed="H hb hB h" regions="AF IR LA"/>

from dayPeriods.xml for 'fa':

<dayPeriodRule type="midnight" at="00:00"/> <!-- نیمه‌شب -->
<dayPeriodRule type="noon" at="12:00"/> <!-- ظهر -->
<dayPeriodRule type="morning1" from="04:00" before="12:00"/> <!-- صبح -->
<dayPeriodRule type="afternoon1" from="12:00" before="17:00"/> <!-- عصر -->
<dayPeriodRule type="evening1" from="17:00" before="19:00"/> <!-- سر شب -->
<dayPeriodRule type="night1" from="19:00" before="04:00"/> <!-- شب -->

From fa.xml:
<dayPeriodWidth type="wide">

<dayPeriod type="am">قبل‌ازظهر</dayPeriod>
<dayPeriod type="noon">ظهر</dayPeriod>
<dayPeriod type="pm">بعدازظهر</dayPeriod>
<dayPeriod type="morning1">صبح</dayPeriod>
<dayPeriod type="afternoon1">بعدازظهر</dayPeriod>
<dayPeriod type="evening1">عصر</dayPeriod>
<dayPeriod type="night1">شب</dayPeriod>

Decoded, this claims that for fa-IR, 24-hour time is preferred, and all kinds of 24-hour and 12-hour formats are OK to use. Also, it says نیمه‌شب is just for exactly midnight, ظهر is just for exactly noon, 4am to noon should be called صبح, noon to 5pm should be called بعدازظهر, that 5pm to 7pm should be called عصر, and finally 7pm to 4am should be called شب.

The actual situation is quite different. The reason 24-hour has been traditionally preferred was that there was no flexible 12-hour formatting. And the non-flexible AM/PM format is very confusing for Persian speakers in Iran and should be avoided as much as possible. Persian speakers in Iran use 12-hour flexible formats (hB) for all practical purposes, and fall back to 24-hour in very format situations or when flexible 12-hour formatting is not available.

So hours data should change to:

<hours preferred="hB" allowed="hB H" regions="IR"/>

As for the day periods themselves, نیمه‌شب is used for midnight to 1am, ظهر is used for noon to 1pm, عصر could be used for 1pm to 7pm, and 1am to 4am is called بامداد.

So the dayPeriods.xml data should change to:

<dayPeriodRule type="morning1" from="01:00" before="04:00"/> <!-- بامداد -->
<dayPeriodRule type="morning2" from="04:00" before="12:00"/> <!-- صبح -->
<dayPeriodRule type="afternoon1" from="12:00" to="13:00/> <!-- ظهر -->
<dayPeriodRule type="afternoon2" from="13:00" before="19:00"/> <!-- عصر -->
<dayPeriodRule type="night1" from="19:00" before="24:00"/> <!-- شب -->
<dayPeriodRule type="night2" from="00:00" to="01:00/> <!-- نیمه‌شب -->

The data in fa.xml would be:
<dayPeriodWidth type="wide">

<dayPeriod type="am">قبل‌ازظهر</dayPeriod>
<dayPeriod type="pm">بعدازظهر</dayPeriod>
<dayPeriod type="morning1">بامداد</dayPeriod>
<dayPeriod type="morning2">صبح</dayPeriod>
<dayPeriod type="afternoon1">ظهر</dayPeriod>
<dayPeriod type="afternoon2">عصر</dayPeriod>
<dayPeriod type="night1">شب</dayPeriod>
<dayPeriod type="night2">نیمه‌شب</dayPeriod>

(Internal ID: T34734240)


Change History

comment:1 Changed 6 weeks ago by roozbeh

  • Description modified (diff)

comment:2 Changed 3 weeks ago by roozbeh

  • Owner changed from anybody to roozbeh
  • Priority changed from assess to medium
  • Status changed from new to accepted
  • Milestone changed from UNSCH to 35

Based on committee discussions, "preferred" value may only be "h" or "H". Real preferences should be kept in the order used in "allowed".

comment:3 Changed 3 weeks ago by roozbeh

Updating dayPeriods.xml and fa.xml based on my comments. Cleaning up fa_AF to only have an override from عصر to بعدازچاشت. Keeping the fa_AF override as contributed since I don't really have a good way to confirm. fa_AF may even need to get different dayPeriods ranges, since these things tend to change per culture.

Will change the hours data for Iran (IR) to:

<hours preferred="H" allowed="hB H" regions="IR"/>

Will keep hours data for Afghanistan (AF) as is, since I don't have access to confirm.

comment:4 Changed 3 weeks ago by roozbeh

  • Status changed from accepted to reviewing
  • Review set to mark

comment:5 Changed 3 weeks ago by roozbeh

  • type changed from unknown to data
  • Component changed from unknown to datetime

comment:6 Changed 2 weeks ago by emmons

The narrow override for fa_AF can't remain because it conflicts with the narrow for morning1. I will fix.


Add a comment

Modify Ticket

as reviewing

E-mail address and user name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.