[1] 
[[日時処理]]では、通常の[[日時]]の値の他に、「不明」「なし」「末尾・終わり」
など特別な値が使われることがあります。

[2] 
[[情報処理]]では一般に処理の都合上こうした値を使う場面がよくありますが ([[rogue value]]、
[[番兵]]など参照)、
[[日時]]はその独特の性質に起因する要件があったり、[[不具合]]の温床になったりしています。

-*-*-



[79] 正確な[[日時]]が不明である時、[[人間]]向けであれば「約」や「頃」や「?」や
「○日から○日」のように[[日時]]の記述の前後で補足したり、[[時間間隔]]として記述したりします。

[80] 機械向けの場合、[[分]]まで、[[日]]までといった精度の低い構文を選択的に用いたり、
始点と終点の組の[[時間間隔]]として記述したりします。

[81] 正確な[[日時]]が不明であることを記述したり、推定される範囲を記述したりできる[[日時形式]]もあります。

[FIG(short list)[ [13] [[日時]]の曖昧性の記述
- [[ISO 8601-2]]
- [[EDTF]]
- [[BDF][Bibliographic Datetime Format]]
- [[TEMPER]]
- [[Exifの日時形式]]
- [[MySQLの日時形式]]
- [CODE[-00:00]]
- [[時間範囲形式]]

]FIG]



-*-*-

[122] 
[[西暦2000年問題]]では、00年や99年を「不明」や「なし」など特別な意味で扱っている場合の問題も指摘されました。

[5] 
[DFN[[CODE[9/9/99]]]] [WEAK[(→ [TIME[1999-09-09]])]] の値によって問題が生じたとされます。 [SRC[>>4, >>3]]

[REFS[

- [4] [CITE[null]], [TIME[2023-11-25T05:31:19.000Z]], [TIME[2008-10-03T07:45:50.423Z]] <https://web.archive.org/web/20081003073858/http://www.informationweek.com/747/47uwjg.htm>
- [3] [CITE@en[Time formatting and storage bugs - Wikipedia]], [TIME[2023-11-24T03:13:21.000Z]], [TIME[2023-11-25T05:31:11.164Z]] <https://en.wikipedia.org/wiki/Time_formatting_and_storage_bugs#9/9/99>

]REFS]

-*-*-

[9] [DFN[[CODE[#1/1/4501#]]]]

- [10] [CITE@en-us[OlMarkInterval enumeration (Outlook) | Microsoft Learn]], [[o365devx]], [TIME[2023-11-25T10:05:47.000Z]] <https://learn.microsoft.com/en-us/office/vba/api/Outlook.OlMarkInterval>
- [11] 
[CITE@en-us[Filtering Items Using Query Keywords | Microsoft Learn]], [[o365devx]], [TIME[2023-11-25T10:05:54.000Z]] <https://learn.microsoft.com/en-us/office/vba/outlook/how-to/search-and-filter/filtering-items-using-query-keywords>

[12] [CITE@en[Time formatting and storage bugs - Wikipedia]], [TIME[2023-11-24T03:13:21.000Z]], [TIME[2023-11-25T10:06:11.850Z]] <https://en.wikipedia.org/wiki/Time_formatting_and_storage_bugs#Year_4501>

>Microsoft Outlook uses the date 1 January 4501 as a placeholder for "none" or "empty".[SNIP[]]

-*-*-


[7] 
[[グレゴリオ暦]]の「月末」を表現するために、[[月]]にかかわらず[[月の日]] [N[31]] を使うことがあります。



[6] 
関連: [[架空の日時]], [[延長日]]

[15] [CITE@en[February 31 - Wikimedia Commons]], [TIME[2023-11-11T12:28:32.000Z]], [TIME[2023-11-25T12:29:13.110Z]] <https://commons.wikimedia.org/wiki/February_31>

[14] [CITE@en[List of non-standard dates - Wikipedia]], [TIME[2023-11-24T02:42:34.000Z]], [TIME[2023-11-25T12:23:40.168Z]] <https://en.wikipedia.org/wiki/List_of_non-standard_dates>


[FIG(quote)[
[FIGCAPTION[
[16] [CITE@ja[[[架空の日付]] - Wikipedia]]
([TIME[2017-03-28 17:32:07 +09:00]])
<https://ja.wikipedia.org/wiki/%E6%9E%B6%E7%A9%BA%E3%81%AE%E6%97%A5%E4%BB%98#99.E6.97.A5>
]FIGCAPTION]

> コンピュータで任意の月の日付を管理する場合、月末日(月の大小により28日〜31日と変化する)を99日と内部表現することがある。

]FIG]



-*-*-

[8] [CITE@en[Time series / date functionality — pandas 2.1.3 documentation]], [TIME[2023-11-10T18:22:59.000Z]], [TIME[2023-11-25T08:20:52.338Z]] <http://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#nonexistent-times-when-localizing>

>A DST transition may also shift the local time ahead by 1 hour creating nonexistent local times (“clocks spring forward”). The behavior of localizing a timeseries with nonexistent times can be controlled by the [CODE[nonexistent]] argument. The following options are available:
-    [CODE['raise']]: Raises a [CODE[pytz.NonExistentTimeError]] (the default behavior)
-    [CODE['NaT']]: Replaces nonexistent times with [CODE[NaT]]
-    [CODE['shift_forward']]: Shifts nonexistent times forward to the closest real time
-    [CODE['shift_backward']]: Shifts nonexistent times backward to the closest real time
-    timedelta object: Shifts nonexistent times by the timedelta duration










