暦日とは、暦体系の中で表現される特定の日を指すもので、特定の日を明確に識別することを可能にします。日付間の計算は簡単で、一般的には2つの日付間の日数を計算することができます。例えば、「2025年11月25日」は「2025年11月15日」の10日後です。特定の出来事の日付は、記録に使用されたタイムゾーンによって異なります。例えば、 1941年12月7日午前7時48分(ハワイ時間)に始まった真珠湾攻撃は、日本標準時(JST)では12月8日午前3時18分に発生したものとして記録されます。
特定の日には、使用されている暦に従って異なる名目上の日付が割り当てられることがあります。[a]世界中で日付を記録するための事実上の標準は、世界で最も広く使用されている民間暦であるグレゴリオ暦です。[1]多くの文化では、グレゴリオ暦 (西方キリスト教世界、AD)、ユリウス暦(東方キリスト教世界、AD)、ヘブライ暦(ユダヤ教、AM )、ヒジュラ暦(イスラム教、AH ) などの宗教暦や、世界中で使用されている他の多くの暦を使用しています。一部の地域では、特定の目的のために、統治暦(君主の統治開始からの年数で日付を記録する) も使用されています。
ほとんどの暦システムでは、日付は3つの部分、つまり(番号付きの)日、月、(番号付きの)年で構成されます。曜日などの追加の部分がある場合もあります。年は、エポックと呼ばれる特定の開始点から数えられ、時代はそのエポックからの時間の範囲を示します。[b]年のない日付は、日付またはカレンダー日付と呼ばれることもあります(「2025年11月19日」ではなく「11月19日」など)。そのため、これは現在の年の省略形であるか、3月25日の誕生日や12月25日のクリスマスなど、年間イベントの日を定義します。

日付には、国やその他の慣例に応じてさまざまな形式が使用されており、日付要素と区切り文字の順序によって異なります。たとえば、日付「1995 年 3 月 25 日」は、 25/03/1995 (DMY 規則)、03/25 /1995 (MDY 規則)、 1995/ 03/25 (YMD 規則)と表記できます。異なる種類の区切り文字 (例: 25.03.1995、25/03/1995、25-03-1995、25 03 1995) を使用するか、先頭のゼロを含めるかどうか (例: 25/3/1995と25/03/1995 )、年の 4 桁すべてを書き込むかどうか (例: 25.03.1995と25.03.95 )、月をアラビア数字またはローマ数字で表すか、名前で表すか (例: 25.03.1995、25.III.1995、25 1995年3月)。日付の表示形式は場所やユーザーによって異なり、データベース管理では日付マスクと呼ばれることもあります。 [要出典]特定のコンテキストにおける実際の表示は、入力マスクと出力マスクによって制御されます。(この名称は、仮面舞踏会で同じ人物が様々な仮面を被ることで表面上は異なって見えるように、日付を表す基となる値も異なる表示形式を持つという比喩に由来しています。)

このリトルエンディアン形式は世界の大多数で使用されており、国連も公式文書で日付の完全な形式を表記する際に推奨しています。この日付形式は、西洋の宗教文書や法律文書において日付を「西暦[年]の[月]日」と表記する慣習に由来しています。形式は時とともに短縮されてきましたが、要素の順序は一定です。以下の例では、1995年3月25日の日付を使用しています。2桁の年号の場合、異なる世紀に属するものと解釈されないように注意する必要があります(例:「01」は「2001」ではなく「1901」と解釈されます)。ドットは序数を表すドットとして機能します。
この形式では、最も重要なデータ項目が、より小さなデータ項目の前に記述されます。つまり、年、月、日がそれぞれ前になります。これは、上位から下位へと桁数を進めるヒンドゥー・アラビア数字体系のビッグエンディアン方式と一致しています。つまり、この形式を用いると、テキストの順序と時系列の順序が同一になります。この形式は、東アジア、イラン、リトアニア、ハンガリー、スウェーデン、そしてその他の一部の国でも、限定的に採用されています。
1995年3月25日の例:
これは、ユニバーサル ビッグ エンディアン形式のクロック時間によっても拡張されます: 1995 年 3 月 25 日、18 時 14 分 12 秒、または 1995/03/25/18:14:12、または (ISO 8601) 1995-03-25T18:14:12。
この順序は主にフィリピンとアメリカ合衆国で使用されています。また、カナダでも程度の差はありますが使用されています(ただし、ケベック州では決して使用されていません)。[4]この日付形式は、20世紀半ばまでイギリスでリトルエンディアン形式と並んで一般的に使用されており、ロンドン・ガゼットやタイムズなどの廃刊した印刷メディアと現代の印刷メディアの両方で見ることができます。この形式は、多くの旧イギリス植民地のいくつかの英語の印刷メディアでも一般的に使用されており、20世紀半ばまで イギリス領インド帝国時代のインドで一般的に使用されていた2つの形式のうちの1つでもあります。
現代のスタイルガイドでは、日が月の後に続く場合(例えば、7月4日)に序数(例:1st、2nd、3rd、4th)の数字の使用を避けることを推奨しており、[5] [6]その形式はISO標準には含まれていません。[7]序数は過去に一般的であり、現在でも時々使用されています([the] 4th [of] July またはJuly 4th)。
この日付形式は、カザフスタン、ラトビア、ネパール、トルクメニスタンで使用されています。政府機関による日付の表記に関する公式ルールによると、[8]カザフ語の長い日付形式は年-日-月の順で表記されます(例:1995年3月25日(カザフ語:1995 жылғы 25 наурыз)。ただし、ラトビアとカザフスタンの両国では、すべて数字の日付に日-月-年形式(DD.MM.YYYY または DD/MM/YYYY)を使用しています。[9] [10]これら4か国はいずれも、すべて数字の日付形式YYYY.DD.MMを使用していません。
日付形式を指定する標準はいくつかあります。

国際的な文書において、特に文脈を考慮せずに年号を最後の2桁に省略すると、多くの数値形式が混乱を招く可能性があります。例えば、「07/08/06」は、2006年8月7日、2006年7月8日(あるいは1906年、あるいはどの世紀の6年目)を指す場合もあれば、2007年8月6日を指す場合もあります。
ISO 8601のYYYY-MM-DDの日付形式は、他の国際標準と同様に、国境を越えた曖昧さの軽減や機械処理の簡素化などの理由から、多くのアプリケーションで採用されています。[14]
初期の米国連邦情報処理規格では、2桁の年号が推奨されていました。これは、2000年問題により、現在では極めて問題が多いことが広く認識されています。一部の米国政府機関は現在、4桁の年号を採用したISO 8601を使用しています。[15] [より適切な出典が必要]
ある暦や日付表記法から別の暦や日付表記法に移行する場合、両方のスタイルを含む形式が開発されることがあります。例えば、ユリウス暦からグレゴリオ暦への移行時には、旧形式と新形式の日付が使用されます。[16]
ISO 8601日付形式を使用する利点の一つは、すべての日付が同じタイムゾーンにあると仮定した場合、表現の辞書式順序(ASCII形式)が日付の時系列順序と等価になることです。したがって、日付は単純な文字列比較アルゴリズム、さらには任意の左から右への照合順序で並べ替えることができます。例えば、
2003-02-28 (2003年2月28日) より前 2006年3月1日(2006年3月1日)より前にソートされます 2015年1月30日(2015年1月30日)
YYYY-MM-DDレイアウトは、これを実現できる唯一の一般的な形式です。[17]他の日付表現をソートするには、日付文字列の解析が必要です。これは、日付の後に24時間形式の時刻が含まれている場合にも機能します。ただし、すべての時刻が同じタイムゾーンにあると理解されている必要があります。
ISO 8601は、簡潔で人間が読みやすく、かつ容易に計算でき、明確な日付が求められる場合に広く使用されています。ただし、多くのアプリケーションは日付を内部的にはUNIX時間で保存し、表示時にのみISO 8601に変換します。最新のコンピュータオペレーティングシステムはすべて、ファイルの日付情報をタイトルとは別に保持するため、ユーザーはファイル名に関係なく、好みの形式を選択して並べ替えることができます。
米軍は、年と1年365日のうちの実際の日を示す「ユリウス暦」[18]と呼ばれるシステムを使用することがあります。これは、月を指定する必要がないためです。例えば、「1999年12月11日」は、文脈によっては「1999345」または「99345」と表記され、1999年の345日目を表します。[19]このシステムは、出荷予定日と到着予定日の計算を簡素化するため、米軍の兵站業務で最もよく使用されています。例えば、戦車のエンジンを米国から韓国まで海上輸送するのに35日かかるとします。エンジンを6月104日(2006年4月14日金曜日)に発送した場合、到着予定日は6月139日(2006年5月19日金曜日)となります。米軍と内国歳入庁を含む一部の米国政府機関以外では、この形式は通常「ユリウス日」ではなく「序数日」と呼ばれます。 [20]
このような序数形式の日付は、多くのコンピュータプログラム(特にメインフレームシステム用)でも使用されています。3桁のユリウス日を使用すると、2桁の月と2桁の日を使用する場合に比べてコンピュータの記憶容量が1バイト節約されます。例えば、「1月17日」はユリウス日では017ですが、月日形式では0117になります。OS /390またはその後継OSであるz/OSでは、ほとんどの操作で日付をyy.ddd形式で表示します。
UNIX 時間は、 UNIX エポック (1970-01-01) の開始からの秒数を数値として保存します。
もう一つの「序数」日付システム(「序数」とは、日付が1日進むごとに値が1ずつ進むという意味)は、天文学的な計算や参照において広く用いられており、この「ロジスティクス」システムと同じ名称が用いられています。対象とする時期に関係なく、期間の表現が連続性を持つことは、どちらの専門家グループにとっても非常に有用です。天文学者たちは、このシステムを「ユリウス日」システムとも呼んでいます。[21]
ヨーロッパの企業では、計画立案の際に年、週番号、曜日を使用することが多いです。例えば、あるプロジェクト内のイベントはw43(第43週)またはw43-1(第43週月曜日)に発生する可能性があり、年を明記する必要がある場合はw0643(2006年第43週、つまり2006年 10月23日月曜日~ 10月29日日曜日)に発生する可能性があります。
ISO週番号法に基づく1年は、 52週または53週で構成されます。これは、従来のグレゴリオ暦の1年である365日または366日ではなく、364日または371日となります。この53週の年は、1月1日が木曜日であるすべての年と、1月1日が水曜日に始まる閏年に発生します。この追加の週は「閏週」と呼ばれることがありますが、ISO 8601ではこの用語は使用されていません。
北米以外の英語圏(主に英語圏ヨーロッパとオーストラリアの一部の国)では、日付は「7 December 1941」(または「7th December 1941」)と表記され、「the seventh of December, nineteen forty-one」(「the」と「of」が非常によく使われる)と発音されます。また、「December 7, 1941」(「December the seventh, nineteen forty-one」)と表記されることも稀にあります。ただし、ヨーロッパ大陸のほとんどの慣習と同様に、数字のみの日付は常にdd/mm/yyyyの順序で表記されます。
カナダとアメリカ合衆国では、 1941年12月7日は通常の書き言葉で「December seventh, nineteen forty-one(12月7日、1941年)」、または口語で「December the seventh, nineteen forty-one(12月7日、1941年)」と発音されます。しかし、日付の表記や発音に序数が必ずしも用いられるわけではなく、「December seven, nineteen forty-one(12月7日、1941年)」という日付を「December seven, nineteen forty-one(12月7日、1941年) 」と発音することも認められています。この規則の注目すべき例外は、 7月4日(アメリカ合衆国独立記念日) です。
、16世紀に教皇グレゴリウス13世が招集した委員会によって設計された
グレゴリオ暦、または新暦です。
指定された3つの形式(YYYYMMDD、MMDDYYYY、またはDDMMYYYY)のいずれかで数値日付フィールドを採用します。日付フィールドの下に、使用されている形式を示すフィールドインジケーターを印刷することが不可欠です。