Википедия:Техническое соглашение о датах и времени

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Короткая ссылка-перенаправление

Для соблюдения принципа стилистического единообразия, а также для облегчения работы технических инструментов, в разделе Википедии на русском языке рекомендуется использовать формат ISO 8601 YYYY-MM-DDThh:mm:ss.ss для дат, используемых в шаблонах и модулях. Данное соглашение не распространяется на отображаемое содержание и используется только для дат, которые указываются в параметрах в виде одной строки.

Основные принципы[править код]

Значения даты и времени расположены в порядке от более значимого к менее. Каждое число (год, месяц, день, время) записывается с фиксированным числом знаков и, при необходимости, должно быть дополнено до него ведущими нулями. Например, время «7:40» должно быть записано как «07:40». В результате для каждого из ряда форматов дат и времён лексикографический порядок соответствует хронологическому, с исключением для отрицательных лет.

В установленном в проекте формате используются дефисы между элементами даты и двоеточия между часами, минутами и секундами.

От даты и времени можно отбросить любое число элементов, но менее значимые поля обязательно должны быть отброшены раньше более значимых. Например, «2004-05» это корректная дата, означающая май 2004. При этом, такое обозначение по стандарту не может трактоваться как 5-е число неизвестного месяца 2004 года.

Кроме того, стандарт поддерживает добавление десятичной точки к наименьшей единице времени, когда требуется большая точность. При этом допустимо представление с десятичной точкой в сокращённых форматах времени, то есть T13:23.5 эквивалентно T13:23:30. Стандарт не позволяет использовать представление с десятичной точкой для дат.

Практика[править код]

В Википедии в качестве параметров встречаются даты самых разных форматов:

  • 31-12-2222
  • 31.12.2222
  • 12-2222
  • 12.2222
  • 2222-12-31
  • 2222.12.31
  • 2222-12
  • 2222.12
  • декабрь 2222
  • 31 декабря 2222
  • December 31, 2222
  • и прочие

Рекомендуется, чтобы шаблоны и модули могли обрабатывать дату в формате ISO 8601, это можно реализовать через функцию парсера {{#time}}, через модуль:Calendar и иными способами.

Не запрещено использование иных форматов, однако оно тем более нежелательно, чем менее распространены эти форматы, и их стандартизация (замена формата дат) может проводиться в автоматическом режиме ботом.

Даты, записанные в шаблонах отдельными параметрами, как {{...|31|12|2222}}, должны рассматриваться отдельно.

Ссылки[править код]