仕様と根拠
週単位の規則の読み方
RFC 5545 3.3.10 では、FREQ=WEEKLY は週を単位にした繰り返しで、INTERVAL は何週ごとか(省略すると 1)、BYDAY は曜日、WKST は週の始まりの曜日(省略すると月曜)です。隔週で複数の曜日を指定したときは、開始日を含む週から数えて 2 週おきの週だけに、指定した曜日の開催日が並びます。
開始日・COUNT・UNTIL
開始日は最初の 1 回として数えます。COUNT は開催回数、UNTIL は最後の日で、同じ規則に両方は書けません。UNTIL の値は開始日と同じ型にする決まりのため、日付だけの開始日には 20271231 のような日付を使います(時刻つきの値は指摘します)。UNTIL の日が開催日なら、その日も数えます。
例: 毎週 10 回
RFC 5545 の例にならい、1997-09-02(火)開始の FREQ=WEEKLY;COUNT=10 は 9 月 2・9・16・23・30 日、10 月 7・14・21・28 日、11 月 4 日の 10 回です。隔週の火木 8 回(WKST=SU)は 9 月 2・4・16・18・30 日、10 月 2・14・16 日になります。
根拠にした仕様・資料
| 仕様・資料 | 確認日 | 使った箇所 |
|---|---|---|
| IETF RFC 5545 iCalendar 3.3.10 Recurrence Rule・3.8.5.3 の例 | 2026年10月30日 | FREQ=WEEKLY・INTERVAL・BYDAY・WKST・COUNT/UNTIL の規則と、1997-09-02 開始の例の日付(本文は転載せず規則を実装) |
指摘の段階
- エラー: 仕様に反していて、正しく読めない・処理できない入力です。
- 警告: 読めるものの、仕様の推奨に反する・矛盾する・意図と違う結果になりやすい入力です。
- 情報: 誤りではありませんが、知っておくとよい扱い(読み飛ばした部分や解釈)です。
入力の扱い(送信しない仕組み)
処理はすべてお使いのブラウザの中で行います。処理の本体はこのサイトから配信する小さなスクリプト(/app.js)で、外部のサービスやライブラリを読み込みません。ページはブラウザに通信を禁止させる設定(Content-Security-Policy の connect-src)つきで配信しており、入力した内容がサーバーや第三者へ送られることはありません。ファイルを選んだ場合も、端末の中で読み込むだけです。
このツールでできないこと(制約)
- 扱うのは週単位(FREQ=WEEKLY)の規則だけです。毎月・毎年や、BYSETPOS・BYMONTH などの部分は扱いません。
- 祝日・休業日・例外日(EXDATE)は除いていません。数えた開催日のうち祝日などに当たる日は、利用者が別に確かめてください。
- 日付だけを扱い、時刻・タイムゾーンは扱いません。夏時間による時刻のずれは対象外です。
- 開催日は 3,660 件まで(約 70 年分の毎週)で打ち切ります。
ご利用にあたって
- 結果は繰り返し規則だけにもとづく日付で、祝日・休業日・会場の都合は反映していません。重要な日程は予定表で確かめてください。