日時構成要素

日時構成要素

[1] 日時の表示にはいろいろな構成要素があります。

具体的場面における定義や性質は日時形式日時表示

[2] 日時構成要素

冗長性

[3] 元号年西暦年暦日曜日新暦旧暦など、 同じ構成要素が1つの日時表示内部に併記されることがあります。 日時の暦法明記

[5] 受信者の暦の換算の不便を送信者が負う性質のものだったり、 検査和的に機能したりします。

[54] 実装は整合性を検査しなければならないことがあります。 日時形式

暦注

[4] 曜日十二直のような暦注的なものが日時表示に併記されることがあります。

精度

[9] 年月日まで書いて以下を省くことで精度であることを暗示的に表していたりします。 しかし0時ちょうどを表すなど省略が最初の値を暗示している場合もあります。

[10] 吉日など精度を意図的に下げる表記が使われることもあります。

[15] 上位の部品が省略されることもあります。 省略により、 または暦法上の制約により、 解釈上の問題が生じることもあります。 日時桁溢れ問題2桁年号干支年

前後

[6] 「于時」 のような慣用句的字句が前後に付くことがあります。

[7] 「東山天皇の御世」のような時代説明的な語句が前後に付くことがあります。

[8] 「ちょうど」、 「頃」、 「前後」、 「ちょっと前」 のような日時の精度や微調整を表す語句が前後に付くことがあります。

部品区切り

[13] 部品の区切りには「:」、「/」、「-」、「.」、空白などの記号が使われることがあります。 どの記号を使うかは言語により、 により、 表記規約により、 あるいは人により異なります。 構文的に定められている場合については各日時形式

[14] 部品を固定長で表せるときは、記号は省略されることもあります。 省略により解釈が曖昧になることもあります。 2020年問題

順序

[16] 部品の順序にはいろいろな流儀があります。 言語により、 により、 あるいは人によっても異なります。

[17] 曖昧性を除去するため月番号ではなく月名を使うなど、 工夫されることもあります。

名前と数値

[11] 「2019年」のように数値で表すタイプと、 「January」のように名前で表すタイプがあります。

[12] どちらのタイプかは言語によっても違います。 どちらでも表せる場合もあります。 文字言語音声言語で違うこともあります。

値域

[18] 各部品が数値で表される場合、値域があります。 通常はその範囲内の値が与えられることが期待されます。

[19] 日時計算の便宜上の手法として、範囲外の値を与え、正規化して結果を得ることがあります。

[20] フィクション作品などで架空の日時に使われることがあります。

[21] 実装は適切に処理しなければ不具合を生じることがあります。 日時のセキュリティー

数値表現

[22] 言語に関わらずアラビア数字を使うことも多いです。

[46] 言語依存の数字を使うこともあります。

[47] 日本語では漢数字を使うことがあります。 特に縦書きでは漢数字を使うべきといわれています (がアラビア数字が使われることもあります)。

[48] 特別な数字を使うこともあります。

[49] ローマ数字で表記することがあります。

[39] 数値を表す特別な表現を使うこともあります。 干支

[24] 言語により、 序数としたり基数としたり、 どちらでも表記できたり、 文字言語音声言語で違ったりします。

[25] 位取り記数法を使うこともあれば、 言語依存の記数法を使うこともあります。

[50] の表記でなく、言語依存の通常の単語列で表すこともあります。

[23] 通常のの読み方とは違う特別な読み方がされることもあります。 英語西暦年

[26] 伝統的な表現と欧米式時刻のずれの処理のため、 言語本来の数値表現と時刻としての表現で値がずれている場合もあります。 東アフリカ時間

[27] 年始改正の影響で月名に含まれる数値と月番号がずれている場合もあります。 欧米の月名

[29] 複数の数値表現があり、使われる場面により異なることがあります。 曜日番号

[35] 数値をそのまま使う場合と、 言語依存の語が前後に付く場合があります。

[36] 第2019番目のを 「2019」 ということもあれば、 「2019年」 ということもあります。 「2019/1/31」 のように区切りがあるため省略することもあります。

[30] 数値表現を使っていても、 第 1 単位を特別に呼ぶことがあります。

[31] 特別な第1単位要素

[56] 「1日」と書いて「ついたち」と読むなど、 表記は原則通りでも音声言語では特殊形になることがあります。

[28] 0起源だったり1起源だったりします。

[34] 通常は 0 を使わなくても、 特別な理由 (計算上の便宜など) のため 0 に拡張する場合があります。 元期改元期日

[32] 数を使うこともあります。 天文学的紀年法大化

[33] 0 以下に別の名前を与えて逆算していくものもあります。 カウントダウン暦

[40] 言語依存の省略表現がある場合もあります。

[41] 「2019年」を「'19年」 と書くことがあります。 2桁年号

文字表現

[42] 完全形、 省略形、 大文字小文字その他表記揺れなど、 いろいろな表現方法がある場合があります。

[43] 省略形は文脈によって使えたり使えなかったりすることがあります。

[44] 英語曜日名は、 日時表示内で曜日であることが明確なら、 水曜日を最大で「W」 まで省略できます。 「T」 は2つあるので日時表示には使えません。 (カレンダーなど文脈上明確なときは「T」と略されることもあります。)

[55] 「30分」を「半」 というように、 数値表現が主であっても特別な名称が存在することがあります。

[45] 日本語文中で英語曜日名を使うなど、 言語習慣次第では他の表記を使うことがあります。

[51] 翻訳先の言語に相当するものがないとき、 原語のままとする場合、 音訳する場合、 意訳する場合、 ほぼ同じものに置き換える場合などいろいろ対処法があります。

[37] 他の言語月名を翻訳するときなど、 一般的でないものを「第月」 のように一般的でない表現で記述することがあります。

[38] 日本語で普通使わないタイ暦月名を表すため、 「タイ暦2462年第3月2日」 のようにいうことがあります。

[52] 月名のある欧米で作られたソフトウェア月番号日本語モードにしたとき微妙な表記になったり、 逆に日本で作られたソフトウェア英語モードにしても月名の表記にできなかったり、 国際化されたソフトウェアであっても原作者の常用する暦法言語に発想が縛られていることがよくあります。

[53] 「11月 26 2018」 のような不自然な表示になることがあります。

独立性

[57]日時構成要素は、 単独で表記され得るものと、そうでないものがあります。

[58] 時刻を 「12:30」 のようにで表示することはありますが、 「12」や「30」 だけ取り出して表示するのは不自然です。

不自然さは表記方法にもよります。 「12時」 や 「30分」 なら単独でもさほど不自然ではありません。

アナログ時計の文字盤という文脈では、逆に「12」 のみの表記でなければ不自然になったりします。

[59] 「2019」 は、文中に突然現れても西暦年を表す可能性が高いことが明白です。 「31」 はそうではなく、平成31年かもしれませんし、 31日かもしれませんし、 31歳かもしれませんし、 31号や31個かもしれません。 文脈がなければ決定できません。

同様に「108」は台湾においては中華民国108年を表す可能性が高いですが、 日本ではそうは認識されない可能性が高いです。

メモ