設計の手順
数字より役割を先に決める
架空メール:請求10月3日、申込締切10月8日、定価USD120、割引USD90。締切と支払額を指定します。最初や最大の数字とは限りません。
候補と原文範囲を保存する
ID、位置、元の文字、前後文を残します。Choice は候補か none を選びます。同じ90でも役割が違うため位置を保持します。
意味上の役割だけ判断する
公式例は候補を選んでコードでコピーします。締切や支払額の明示を問い、なければ none。欠けた年や値を作りません。
地域と基準時刻を渡す
03/04 は地域で異なります。明日には基準日と時区が必要です。本例は2026-10-02を基準に10月3日。金額は Decimal と明示的な通貨を使います。
コードで有効性を調べる
日付ライブラリで非法日付を拒否し、原文と正規値を両方保存します。役割の正解でも形式の曖昧さや支払権限は解決しません。
具体例 · 本サイトの架空データ
| 観察した事実 | 判断 | コードでの処理 |
|---|---|---|
| 定価120、割引90USD | 支払候補を選択 | 90とUSDを保存、支払なし |
| 地域なしの03/04 | 順序が曖昧 | 原文を保持し確認 |
| 基準日2026-10-02の明日 | 時区も必要 | コードで10月3日に解決 |
コピーできる設計例
独自の例です。JSON はリクエストや入力の形、Python は架空スコアの計算のみを示します。API は実行しません。接続前に公式仕様と処理方針を確認してください。
# Offline date arithmetic with an explicit reference date.
from datetime import date, timedelta
reference = date(2026, 10, 2)
print(reference + timedelta(days=1)) # 2026-10-03
# Candidate selection is a separate judgment, not performed here.
# Preserve timezone and source text when handling real messages.判断を設計するよくある失敗
- 最初や最大の数字を選ぶ。
- 欠けた年や通貨を作る。
- 元の範囲を捨てる。
TRY / THINK / COMPARE
先に考えてから解説へ
03/04 の選択 confidence が高ければ4月3日にできますか?
解説を開く
役割と書式は別です。地域の根拠がなければ確認します。
提出前の確認
- 役割と none を定義。
- 候補範囲を保存。
- 年・時区・通貨・地域を明示。
- 非法値と曖昧さは確認へ。
よくある質問
日付計算は誰がしますか?
コードと日付ライブラリです。
候補に目的の値がなければ?
none にして候補抽出を改善します。
参考資料
公式パターンと Datawhale の実践テーマを参考に、説明・例・演習を独自に作成しています。API の実行結果や性能測定ではありません。