« first day (1 day earlier)    last day (16 days later) » 

15:53
@Mari-LouA Your (possibly rethorical?) question about whether the AM/PM question is really about the English language is an interesting point to ponder.
@KyleStrand Could we please try to carry out our extended discussion of the AM/PM question or its answers in this chat room rather than in comments?
@CJDennis Could we please try to carry out our extended discussion of the AM/PM question or its answers in this chat room rather than in comments?
Trying to classify all possible times as being exactly one of either before noon or else after noon but never both is based on a faulty premise, one that leads to paradoxical conclusions.
That one is of course an eminently sensible recommendation.
Writing the month not as a number but as a locale-dependent word also works, in a language-specific way: "June 1, 2016", "1 June 2016", etc.
1-6-16 is terrible of course, but then so is 6-1-16
Which is the point of the nkcd above.
I wonder whether before the modern era anybody ever tried to say that noon was either before noon or after noon. It seems like saying that it was just noon would have been good enough.
Similarly saying "twelve at night" is completely clear.
It's unfortunate that English doesn't have an accepted, customary way of expressing the opposite of that.
Spanish makes it easy by opposing día for the daytime one with noche for the nighttime one: "a las doce del día” versus "a las doce de la noche”.
And pace @Mari-LouA from what I can tell the Italians are capable of doing the same thing there.
It looks like in 2016 ISO 8601 was extended to cover when a day "starts" and when it "ends".
They've specified that a "day" has midnight "twice", in a sense. Or rather, that "Sunday 24:00:00" is exactly the same time as "Monday 00:00:00".
On the one hand, that almost makes sense. On the other, it makes my head hurt.
> Standardization is a truly international activity, and I've been lucky to have worked with more nationalities than I can remember. But, that said, my first business meeting with a German remains etched in my memory. It was in fact nothing more than a working breakfast, a chance to meet face-to-face after a good number of productive and friendly phone calls. "So, we'll meet at the café at half-nine? Look forward to meeting you then!"
> Well, it turns out that for Germans, half-nine, means half-an-hour-before-nine-o’clock-has-arrived (08:30), while for an Englishman, such as myself, it means half-an-hour-has-passed-since-nine-o’clock (09:30). It was an embarrassing mistake, though without serious consequence; an apology, and the pancakes and coffee on me. But it could have been something much more serious than a fudged Frühstück.
@Mari-LouA That quote I just posted above appears to demonstrate that time representations are language-dependent. Maybe.
I bet that before Britain had a national railroad, nobody in the world ever got confused over whether six o’clock meant in the morning or the afternoon. After all, when you ask "What time is it?" to someone face-to-face, they'll know where the sun is. Or isn't.
Times never have AM/PM under ISO 8601 because that introduces a language-dependent element which makes everything harder.
16:27
@tchrist common sense reigns, if someone asks the time (but with smartphones nowadays who does?) one can reply "it's nearly 8", and the querent understands immediately.
@Mari-LouA Exactly!
But when Britain invented train schedules, they had to have another way of talking about it.
The OP wasn't really interested in the "language" but in the mechanism behind the terminology.
I wonder where he saw "12:00 p.m." written.
@tchrist ahh! Good point. Arrivederci, a dopo.
@Mari-LouA hasta
16:42
> To account for customary usage in some countries, APIs should allow for formatting times that go beyond 23:59:59. For example, in some countries it would be customary to indicate that opening hours extending from Friday at 7pm to Saturday at 2am in a format like the following:
> Friday: 19:00 – 26:00
Ouch.
Plus you need 23:59:60 for leap seconds.
> There are 4 dayPeriods that are fixed; am/pm are always defined, and always have the same meaning and definition for every locale. Midnight and noon are optional, however if they are defined, they have the same meaning and definition as in all other locales where they are defined.
<dayPeriodRule type="midnight" at="00:00"/>
<dayPeriodRule type="am" from="00:00" before="12:00" />
<dayPeriodRule type="noon" at="12:00"/>
<dayPeriodRule type="pm" from="12:00" before="24:00" />
> Note that midnight and am can overlap, as can noon and pm.
All locales must support am/pm, but not all support noon or midnight; they are only supported if they meet the above definitions. For example, German has no unique term that means exactly 12:00 noon; the closest is Mittag, but that can extend before or after 12 noon.

Midnight is also special, since it can refer to either 00:00 or 24:00 — either at the start or end of the day. That means that Tuesday 24:00 = Wednesday 00:00. “Midnight Tuesday" is thus ambiguous: it means 24:00 in “the party is Tuesday from 10pm to 12 midnight”, wh
United States Law - 15 U.S.C. §6(IX)(260-7), as amended by Energy Policy Act of 2005:
> "During the period commencing at 2 o'clock antemeridian on the second Sunday of March of each year and ending at 2 o'clock antemeridian on the first Sunday of November of each year, the standard time of each zone established by sections 261 to 264 of this title, as modified by section 265 of this title, shall be advanced one hour..."
> 8.2 AM / PM
Even for countries where the customary date format only has a 24 hour format, both the am and pm localized strings must be present and must be distinct from one another. Note that as long as the 24 hour format is used, these strings will normally never be used, but for testing and unusual circumstances they must be present.

« first day (1 day earlier)    last day (16 days later) »