仕様と根拠

日付の妥当性

RFC 3339 の 5.6 節では、月は 01〜12、日は月と閏年で決まる範囲(1 月は 31 日、4 月は 30 日、2 月は平年 28 日・閏年 29 日など)、時は 00〜23、分は 00〜59、秒は 00〜59(うるう秒のとき 60)と定めています。閏年は 4 で割り切れる年のうち、100 で割り切れる年は 400 でも割り切れる年だけです。この規則で、2 月 30 日や 2100 年 2 月 29 日などの存在しない日付を見つけます。

未来日の判定

日付の部分(YYYY-MM-DD)を基準日と文字列として比べ、基準日より後なら未来日とします。基準日と同じ日は未来日ではありません。時刻とオフセットは未来日の判定には使いません。基準日が空のときは、未来日は判定せず、その旨を情報として表示します。

時刻とオフセット

日時の形では、Z または ±HH:MM のオフセットが RFC 3339 で必須です。ない場合はオフセットなしとして警告します。うるう秒(秒が 60)は、協定世界時で 6 月 30 日か 12 月 31 日の 23:59:60 のときだけ有効で、オフセット付きの日時はずらして判定します。列のオフセットが混在していれば情報で知らせます。

根拠にした仕様・資料

仕様・資料と確認日
仕様・資料確認日使った箇所
RFC 3339 Date and Time on the Internet: Timestamps2026年10月29日5.6 節 ABNF(date-fullyear 4DIGIT、date-month 01-12、date-mday は月・年で 01-28〜31、time-hour 00-23、time-minute 00-59、time-second 00-58/59/60、time-numoffset ±HH:MM)。5.7 節の月ごとの日数の表と閏年(4 で割り切れ、100 年の倍数は 400 でも割り切れる年。Appendix C)、うるう秒は 6 月末・12 月末。WebFetch で確認

指摘の段階

入力の扱い(送信しない仕組み)

処理はすべてお使いのブラウザの中で行います。処理の本体はこのサイトから配信する小さなスクリプト(/app.js)で、外部のサービスやライブラリを読み込みません。ページはブラウザに通信を禁止させる設定(Content-Security-Policy の connect-src)つきで配信しており、入力した内容がサーバーや第三者へ送られることはありません。ファイルを選んだ場合も、端末の中で読み込むだけです。

このツールでできないこと(制約)

ご利用にあたって

  • この検査は日付の形と存在、基準日との前後だけです。データの業務上の正しさは、元の資料で確認してください。
  • 大きな列は端末の性能により処理に時間がかかることがあります。