Какие поля сохранить
Для каждой записи полезно разделять фактические сведения и выводы. Минимальный набор: идентификатор записи, статус в формулировке источника, запланированное время, фактическое время при его наличии, момент фиксации, источник и единицы времени.
Если фактическое время ещё неизвестно, его оставляют неизвестным, а не записывают как 0 или как время по расписанию. Плановое и фактическое время отвечают на разные вопросы и должны храниться раздельно.
Учебный пример записи
Учебный пример: в расписании указано запланированное начало 19:10 с часовым смещением −04:00. В 19:05 −04:00 источник показывает статус «задержка» и не указывает фактическое время первого питча. Запись можно сохранить как: статус источника — «задержка»; запланировано — 19:10 −04:00; фактическое начало — неизвестно; момент фиксации — 19:05 −04:00.
Если нужно привести указанное время к UTC, смещение вычитают из местного времени. Для учебного примера 19:10 при смещении −04:00 соответствует 23:10 UTC. Это преобразование времени не меняет статус матча и не подтверждает, состоялась ли игра.
Условие, от которого зависит дальнейшая запись
Слова «задержка» и «перенос» нельзя заменять друг другом без сообщения источника. Задержка описывает зафиксированный статус в конкретный момент, а дальнейшее решение о продолжении, переносе или завершении требует официального статуса и применимых правил конкретного соревнования.
Базовая карточка иннингов суммирует только введённые половины и не проверяет все условия завершения матча. Поэтому при неполной игре числовую часть табло и официальный статус нужно сохранять отдельно.
Последовательность фиксации
- Скопируйте статус ровно в той формулировке, которую дал источник.
- Запишите запланированное время отдельно от фактического времени.
- Укажите дату, смещение или UTC, если они доступны; одно время без даты и смещения не определяет момент однозначно.
- Оставьте неизвестные значения пустыми или помеченными как неизвестные.
- Сохраните источник и момент фиксации рядом со статусом.
