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

ISO 8601 Элементы данных и форматы обмена - Обмен информацией - Представление даты и времени - это международный стандарт, охватывающий обмен данными, относящимися к дате и времени . Он поддерживается Международной организацией по стандартизации (ISO), базирующейся в Женеве, и впервые был опубликован в 1988 году с обновлениями в 1991, 2000, 2004 и 2019 годах. Цель этого стандарта - предоставить однозначный и четко определенный метод представления дат. и время, чтобы избежать неправильной интерпретации числовых представлений даты и времени, особенно когда данные передаются между странами с разными соглашениями для записи числовых дат и времени.

В общем, ISO 8601 применяется к представлениям и форматам дат в григорианском (и, возможно, пролептическом григорианском ) календаре, времени на основе 24-часовой системы хронометража (с необязательным смещением UTC ), временных интервалов и их комбинаций. [2] Стандарт не придает какое-либо конкретное значение элементам даты / времени, которые должны быть представлены; значение будет зависеть от контекста его использования. Кроме того, представляемые даты и время не могут включать слова без определенного числового значения в стандарте (например, названия лет в китайском календаре ) или без символов.(например, изображения, звуки). [2]

В представлениях для обмена даты и время расположены так, что самый большой временной член (год) помещается слева, а каждый последующий меньший член помещается справа от предыдущего. Представления должны быть написаны комбинацией арабских цифр и определенных символов (таких как «-», «:», «T», «W» и «Z»), которым в стандарте даны определенные значения; подразумевается, что некоторые обычные способы написания частей дат, такие как «январь» или «четверг», не допускаются в взаимообменных представлениях.

История [ править ]

Первое издание стандарта ISO 8601 было опубликовано как ISO 8601: 1988 в 1988 году. Оно унифицировало и заменило ряд старых стандартов ISO по различным аспектам обозначения даты и времени: ISO 2014 , ISO 2015 , ISO 2711 , ISO 3307 и ISO 4031 . [3] Он был заменен вторым изданием ISO 8601: 2000 в 2000 г., третьим изданием ISO 8601: 2004, опубликованным 1 декабря 2004 г., отозванным и пересмотренным в соответствии с ISO 8601-1: 2019 и ISO 8601-2: 2019. 25 февраля 2019 г. Стандарт ISO 8601 был подготовлен, [4] и находится под прямой ответственностью,Технический комитет ISO TC 154. [5]

ISO 2014, хотя и был заменен, является стандартом, который первоначально вводил полностью числовую нотацию даты в порядке от наиболее значимого до наименее значимого [ГГГГ] - [MM] - [ДД] . Система нумерации недель ISO была введена в ISO 2015, а идентификация дней по порядковым датам была первоначально определена в ISO 2711.

Четвертая редакция стандарта ISO 8601-1: 2019, выпущенная в феврале 2019 года, представляет собой слегка обновленное содержание предыдущего стандарта ISO 8601: 2004, [6] [7], тогда как новый ISO 8601-2: 2019 определяет различные расширения, такие как неопределенности или части расширенного формата даты / времени (EDTF). [8] [9] [10] [11] [12] [13]

Общие принципы [ править ]

  • Значения даты и времени упорядочены от наибольшей к наименьшей единице времени: год, месяц (или неделя), день, час, минута, секунда и доля секунды. Таким образом, лексикографический порядок представления соответствует хронологическому порядку, за исключением представлений даты, включающих отрицательные годы или временной сдвиг. Это позволяет естественным образом сортировать даты , например, по файловым системам.
  • Каждое значение даты и времени имеет фиксированное количество цифр, которые должны быть дополнены ведущими нулями .
  • Представления могут быть выполнены в одном из двух форматов - базовом формате с минимальным количеством разделителей или расширенном формате с разделителями, добавленными для повышения удобства чтения человеком. [14] [15] В стандарте отмечается, что «следует избегать основного формата в виде простого текста ». [16] Разделитель, используемый между значениями даты (год, месяц, неделя и день) - это дефис , а двоеточие используется в качестве разделителя между значениями времени (часы, минуты и секунды). Например, 6-й день 1-го месяца 2009 года может быть записан как «2009-01-06» в расширенном формате или просто как «20090106» в базовом формате без двусмысленности.
  • Для снижения точности [17] любое количество значений может быть удалено из любого представления даты и времени, но в порядке от наименьшего к наиболее значимому. Например, «2004-05» является действительной датой ISO 8601, которая указывает на май (пятый месяц) 2004 года. Этот формат никогда не будет представлять 5-й день неуказанного месяца в 2004 году, а также не будет представлять временной интервал от 2004 г. в 2005 г.
  • При необходимости для конкретного приложения стандарт поддерживает добавление десятичной дроби к наименьшему значению времени в представлении.

Даты [ править ]

Стандарт использует григорианский календарь , который «служит международным стандартом для гражданского использования». [18]

ISO 8601: 2004 фиксирует контрольную календарную дату по григорианскому календарю 20 мая 1875 года как дату подписания Mètre ( Meter Convention ) в Париже (явная контрольная дата была удалена в ISO 8601-1: 2019). Однако календарные даты ISO до конвенции по-прежнему совместимы с григорианским календарем вплоть до официального введения григорианского календаря 15 октября 1582 года.

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

Годы [ править ]

ISO 8601 предписывает, как минимум, четырехзначный год [ГГГГ], чтобы избежать проблемы 2000 года . Следовательно, он представляет годы от 0000 до 9999, год 0000 равен 1 году до нашей эры, а все остальные годы нашей эры . Однако годы до 1583 года автоматически не допускаются стандартом. Вместо этого «значения в диапазоне от [0000] до [1582] должны использоваться только по взаимному соглашению партнеров по обмену информацией». [19]

Для представления лет до 0000 или после 9999 стандарт также разрешает расширение представления года, но только по предварительному соглашению между отправителем и получателем. [20] Расширенное представление года [± Y YYYY] должно иметь согласованное количество дополнительных цифр года сверх четырехзначного минимума, и оно должно иметь префикс + или - [21] вместо более распространенного AD. Обозначение / BC (или CE / BCE ); по соглашению 1 BC обозначается как +0000 , 2 BC обозначается как −0001, и так далее. [22]

Календарные даты [ править ]

Представления календарной даты представлены в форме, показанной в соседнем поле. [ГГГГ] указывает год из четырех цифр, от 0000 до 9999. [MM] указывает месяц года, состоящий из двух цифр, с 01 по 12. [ДД] указывает день этого месяца с двумя цифрами, с 01 по 31. Например, , «5 апреля 1981 года» может быть представлено либо как «1981-04-05» [14] в расширенном формате, либо как «19810405» в основном формате .

Стандарт также позволяет записывать календарные даты с пониженной точностью. Например, можно написать «1981-04», чтобы обозначить «апрель 1981 года». Версия 2000 года позволяла писать «-04-05» для обозначения «5 апреля» [23], но версия 2004 года не допускала опускания года при наличии месяца. Можно просто написать «1981» для обозначения этого года, «198» для обозначения десятилетия с 1980 по 1989 г. включительно или «19» для обозначения века с 1900 по 1999 г. включительно. Хотя стандарт допускает форматы «ГГГГ-ММ-ДД» и ГГГГММДД для полного представления календарной даты, если день [ДД] опущен, то только ГГГГ-ММформат разрешен. Запрещая даты в форме YYYYMM, стандарт избегает путаницы с усеченным представлением YYMMDD (все еще часто используемым).

Даты недели [ править ]

Представления даты недели имеют форматы, показанные в соседнем поле. [ГГГГ] указывает год нумерации недель ISO, который немного отличается от года по традиционному григорианскому календарю (см. Ниже). [Www] - номер недели с префиксом W , от W01 до W53. [D] - номер дня недели от 1 до 7, начиная с понедельника и заканчивая воскресеньем.

Есть несколько взаимно эквивалентных и совместимых описаний недели 01:

  • неделя с первым четвергом года (формальное определение ISO),
  • неделя с 4 января в ней,
  • первая неделя с большинством (четырьмя или более) дней в начальном году, и
  • неделя, начинающаяся с понедельника в период с 29 декабря по 4 января.

Как следствие, если 1 января приходится на понедельник, вторник, среду или четверг, это происходит на неделе 01. Если 1 января приходится на пятницу, субботу или воскресенье, это происходит на 52 или 53 неделе предыдущего года (есть нет недели 00). 28 декабря всегда последняя неделя в году.

Номер недели можно описать, посчитав четверг: на 12-й неделе приходится 12-й четверг года.

ISO недели нумерации год начинается в первый день (понедельник) недель 01 и заканчиваются в воскресенье перед началом нового года ISO (следовательно , без перекрытия или зазора). Он состоит из 52 или 53 полных недель. Первая неделя года по стандарту ISO может иметь до трех дней, которые фактически относятся к завершающемуся году по григорианскому календарю; если три, то это понедельник, вторник и среда. Точно так же последняя неделя года по стандарту ISO может иметь до трех дней, которые фактически находятся в григорианском календарном году, который начинается; если три, это пятница, суббота и воскресенье. Четверг каждой недели ISO всегда соответствует году григорианского календаря, который обозначается годом нумерации недель ISO.

Примеры:

  • Понедельник, 29 декабря 2008 г. написано «2009-W01-1».
  • Воскресенье, 3 января 2010 г. написано «2009-W53-7».

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

Порядковая дата простой форма для случаев , когда произвольный характер недели и месяца определения больше препятствия , чем помощь, например, при сравнении дат разных календарей. Как показано выше, [ГГГГ] обозначает год. [DDD] - день этого года, с 001 по 365 (366 в високосных годах ). Например, «1981-04-05» - это также «1981-095» .

Этот формат используется с простыми аппаратными системами, которым нужна система дат, но где включение полного календарного программного обеспечения для расчета может быть значительной неприятностью. Эту систему иногда называют «юлианской датой», но это может вызвать путаницу с астрономическим юлианским днем , последовательным подсчетом количества дней, прошедших с дня 0, начиная с 1 января 4713 г. до н.э. Полдень по Гринвичу, пролептический календарь по юлианскому календарю (или полдень по ISO дата -4713-11-24, в которой используется григорианский пролептический календарь с 0000 годом).

Times [ править ]

ISO 8601 использует 24-часовую систему часов . Согласно ISO 8601-1: 2019 основным форматом является T [чч] [мм] [сс], а расширенным форматом является Т [чч]: [мм]: [сс]. В более ранних версиях буква T (обозначающая время) отсутствовала в обоих форматах.

  • [hh] относится к часу с нулями между 00 и 23.
  • [мм] относится к дополненной нулями минуты между 00 и 59.
  • [ss] относится к секунде, дополненной нулями, между 00 и 60 (где 60 используется только для обозначения дополнительной дополнительной секунды ).

Таким образом, время может отображаться как «T134730» в базовом формате или «T13: 47: 30» в расширенном формате . ISO 8601-1: 2019 позволяет опускать T в расширенном формате, как в «13:47:30», но позволяет опускать T только в базовом формате, когда нет риска двусмысленности с выражениями даты.

Либо секунды, либо минуты и секунды могут быть опущены в основном или расширенном формате времени для большей краткости, но меньшей точности; результирующие форматы времени с уменьшенной точностью: [24]

  • T [чч] [мм] в базовом формате или [чч]: [мм] в расширенном формате , если секунды не указаны.
  • T [чч], когда опущены и секунды, и минуты.

Согласно ISO 8601-1: 2019 полночь может обозначаться только как «00:00», что соответствует началу календарного дня. Более ранние версии стандарта допускали «24:00», соответствующие концу дня, но это явно запрещено редакцией 2019 года.

Десятичная дробь может быть добавлена ​​к присутствующему элементу времени самого низкого порядка в любом из этих представлений. Десятичный знак , либо запятая или точка ( в соответствии с ISO 80000-1 в соответствии с ISO 8601: 1-2019, [25] , который не предусматривает предпочтение за исключением того, в рамках международных стандартов, но с предпочтением запятой в соответствии со стандартом ISO 8601 : 2004) [26]используется как разделитель между элементом времени и его дробью. Для обозначения «14 часов 30 с половиной минут» не включайте цифру в секундах. Представьте его как «14: 30,5», «T1430,5», «14: 30,5» или «T1430,5». Нет ограничений на количество десятичных знаков для десятичной дроби. Однако количество десятичных разрядов должно быть согласовано сторонами связи. Например, в Microsoft SQL Server точность десятичной дроби равна 3, т. Е. «Гггг-мм-ддтчч: мм: сс [.ммм]». [27]

Обозначения часовых поясов [ править ]

Часовые пояса в ISO 8601 представлены как местное время (без указания местоположения), как UTC или как смещение от UTC.

Местное время (без уточнения) [ править ]

Если информация о соотношении UTC не указана с представлением времени, предполагается, что время находится в местном времени. Хотя может быть безопасно использовать местное время при общении в одном часовом поясе, это неоднозначно при использовании связи в разных часовых поясах. Даже в пределах одного географического часового пояса некоторые местные времена будут неоднозначными, если в регионе будет соблюдаться летнее время . Обычно предпочтительнее указывать часовой пояс (обозначение зоны), используя стандартную нотацию.

Всемирное координированное время (UTC) [ править ]

Если время указано в формате UTC , добавьте Z сразу после времени без пробела. Z - обозначение зоны для нулевого смещения UTC. «09:30 UTC» поэтому представляется как «09: 30Z» или «T0930Z». «14:45:15 UTC» будет «14: 45: 15Z» или «T144515Z».

Z суффикс в временном представлении ISO 8601 иногда называют как «зулусское время» , так как та же буква используются для обозначения часового пояса зулусского . Однако стандарт ACP 121, который определяет список военных часовых поясов, не упоминает UTC и выводит «зулусское время» из среднего времени по Гринвичу [28], которое ранее использовалось как международный стандарт гражданского времени. GMT более точно не определяется научным сообществом и может относиться к UTC или UT1 в зависимости от контекста. [29]

Смещение времени от UTC [ править ]

UTC смещение добавляется к тому времени , таким же образом , что 'Z' была выше, в виде ± [HH]: [мм], ± [HH] [мм], или ± [чч].

Отрицательные смещения UTC описывают часовой пояс к западу от UTC ± 00: 00 , где гражданское время отстает (или раньше), чем UTC, поэтому обозначение зоны будет иметь вид «-03: 00», «-0300» или «-03». ".

Положительные смещения UTC описывают часовой пояс к востоку от UTC ± 00: 00 , где гражданское время опережает (или позже), чем UTC, поэтому обозначение зоны будет иметь вид «+02: 00», «+ 0200» или «+02». ".

Примеры

  • «−05: 00» для Нью-Йорка по стандартному времени ( UTC-05: 00 )
  • «−04: 00» для Нью-Йорка на летнее время ( UTC-04: 00 )
  • «+00: 00» (но не «-00: 00») для Лондона ( UTC ± 00: 00 )
  • «+02: 00» для Каира ( UTC + 02: 00 )
  • «+05: 30» для Мумбаи ( UTC + 05: 30 )
  • «+14: 00» для Кирибати ( UTC + 14: 00 )

См. Список смещений времени UTC для других смещений времени UTC .

Чтобы представить отрицательное смещение, ISO 8601 определяет использование знака минус . Если набор символов обмена ограничен и не имеет знака минус, следует использовать дефис-минус . ASCII не имеет знака минус, поэтому будет использоваться его дефис-минус (код 45 десятичный или двумерный шестнадцатеричный). Если в наборе символов есть знак минус, то следует использовать этот символ. Юникод имеет знак минус, а его символьный код - U + 2212 (2212 шестнадцатеричный); HTML характер объект вызова является −.

Следующие моменты времени относятся к одному и тому же моменту: «18: 30Z», «22: 30 + 04», «11:30–0700» и «15: 00–03: 30». Буквы морских часовых поясов не используются, за исключением Z. Для расчета времени UTC необходимо вычесть смещение из местного времени, например, для «15: 00−03: 30» до 15:00 - (−03: 30) чтобы получить 18:30 UTC.

Смещение нуля, помимо специального представления «Z», также может быть указано численно как «+00: 00», «+0000» или «+00». Однако не разрешается указывать его численно с отрицательным знаком, например, «-00: 00», «-0000» или «-00». В разделе, определяющем использование знаков [30], говорится, что знак плюс должен использоваться для положительного или нулевого значения, а знак минус - для отрицательного значения. В отличие от этого правила, RFC 3339 , который в остальном является профилем ISO 8601, разрешает использование «-00» с тем же обозначением, что и «+00», но с другим значением. [31] [32]

Комбинированные представления даты и времени [ править ]

Отдельный момент времени может быть представлен путем конкатенации полного выражения даты, буквы «T» в качестве разделителя и допустимого выражения времени. Например, «2007-04-05T14: 30» . В ISO 8601: 2004 было разрешено опускать символ «T» по взаимному согласию, как в «200704051430» , [33], но это положение было удалено в ISO 8601-1: 2019. Разделение частей даты и времени другими символами, такими как пробел, не допускается в ISO 8601, но разрешено в его профиле RFC 3339 . [34]

Если требуется указатель часового пояса, он следует за комбинированной датой и временем. Например, «2007-04-05T14: 30Z» или «2007-04-05T12: 30−02: 00» .

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

Продолжительность [ править ]

Длительности определяют количество промежуточного времени во временном интервале и представлены в формате P [n] Y [n] M [n] DT [n] H [n] M [n] S или P [n] W, как показано ». в стороне. В этих представлениях [n] заменяется значением для каждого из элементов даты и времени, следующих за [n]. Начальные нули не требуются, но максимальное количество цифр для каждого элемента должно быть согласовано сторонами связи. Заглавные буквы P , Y , M , W , D , T , H , M и S являются обозначениями для каждого элемента даты и времени и не заменяются.

  • P - обозначение длительности (для периода ), помещенное в начале представления длительности.
    • Y - обозначение года, которое следует за значением количества лет.
    • M - это обозначение месяца, которое следует за значением количества месяцев.
    • W - это обозначение недели, которое следует за значением количества недель.
    • D - это обозначение дня, которое следует за значением количества дней.
  • T - временное обозначение, которое предшествует временным компонентам представления.
    • H - обозначение часа, которое следует за значением количества часов.
    • M - обозначение минут, которое следует за значением количества минут.
    • S - это второе обозначение, которое следует за значением количества секунд.

Например, «P3Y6M4DT12H30M5S» представляет продолжительность «три года, шесть месяцев, четыре дня, двенадцать часов, тридцать минут и пять секунд».

Элементы даты и времени, включая их указатель, могут быть опущены, если их значение равно нулю, а элементы более низкого порядка также могут быть опущены для снижения точности. Например, «P23DT23H» и «P4Y» являются приемлемыми представлениями продолжительности. Однако должен присутствовать хотя бы один элемент, поэтому "P" не является допустимым представлением в течение 0 секунд. «PT0S» или «P0D», однако, действительны и представляют одинаковую продолжительность.

Чтобы устранить двусмысленность, «P1M» - это продолжительность в один месяц, а «PT1M» - это одна минута (обратите внимание на указатель времени T, который стоит перед значением времени). Наименьшее используемое значение может также иметь десятичную дробь, как в «P0.5Y» для обозначения полугодия. Эта десятичная дробь может быть указана либо через запятую, либо через точку , как в «P0,5Y» или «P0,5Y». Стандарт не запрещает, чтобы значения даты и времени в представлении продолжительности превышали их «точки переноса», за исключением случаев, указанных ниже. Таким образом, «PT36H» может использоваться так же, как «P1DT12H» для представления той же продолжительности. Но имейте в виду, что «PT36H» - это не то же самое, что «P1DT12H» при переключении с или на летнее время .

В качестве альтернативы, формат для продолжительности, основанный на комбинированном представлении даты и времени, может использоваться по соглашению между взаимодействующими сторонами либо в базовом формате PYYYYMMDDThhmmss, либо в расширенном формате P [ГГГГ] - [MM] - [DD] T [hh]: [мм]: [сс] . Например, первая показанная выше продолжительность будет «P0003-06-04T12: 30: 05» . Однако отдельные значения даты и времени не могут превышать их модули (например, значение 13 для месяца или 25 для часа недопустимо). [35]

Хотя стандарт описывает продолжительность как часть временных интервалов, которые обсуждаются в следующем разделе, формат продолжительности (или его подмножество) широко используется независимо от временных интервалов, как в случае с классом длительности Java 8. [36] [37]

Временные интервалы [ править ]

Временной интервал - это промежуток времени между двумя временными точками. Количество промежуточного времени выражается продолжительностью (как описано в предыдущем разделе). Две точки времени (начало и конец) выражаются либо комбинированным представлением даты и времени, либо просто представлением даты.

Есть четыре способа выразить временной интервал:

  1. Начало и конец, например «2007-03-01T13: 00: 00Z / 2008-05-11T15: 30: 00Z».
  2. Начало и продолжительность, например "2007-03-01T13: 00: 00Z / P1Y2M10DT2H30M".
  3. Продолжительность и конец, например "P1Y2M10DT2H30M / 2008-05-11T15: 30: 00Z"
  4. Только продолжительность, например "P1Y2M10DT2H30M", с дополнительной контекстной информацией.

Из них первые три требуют двух значений, разделенных указателем интервала, который обычно представляет собой знак солидуса (чаще называемый косой чертой "/"). В разделе 3.2.6 ISO 8601-1: 2019 отмечается, что «Знак« солидус »может быть заменен двойным дефисом [« - »] по взаимному согласию партнеров по обмену информацией.», А в предыдущих версиях использовались обозначения типа «2000-2002». ". [38] Использование двойного дефиса вместо символа солидуса позволяет включать его в имена файлов компьютеров . [39] Знак солидуса - это зарезервированный символ, который не допускается в имени файла в обычных операционных системах.

Для выражений <start> / <end>, если в конечном значении отсутствуют какие-либо элементы, предполагается, что они совпадают с начальным значением, включая часовой пояс. Эта особенность стандарта позволяет кратко представлять временные интервалы. Например, дату двухчасовой встречи, включая время начала и окончания, можно просто отобразить как «2007-12-14T13: 30/15: 30», где «/ 15: 30» подразумевает »/ 2007-12- 14T15: 30 "(та же дата, что и начало), или даты начала и окончания ежемесячного расчетного периода как" 2008-02-15 / 03-14 ", где" / 03-14 "подразумевает" / 2008-03 -14 "(год старта).

Если для представления временного интервала желательна более высокая точность, тогда к представлению можно добавить больше элементов времени. Интервал обозначается «2007-11-13 / 15» может начаться в любое время на 2007-11-13 и в конце в любое время на 2007-11-15 , тогда как «2007-11-13T09: 00 / 15T17: 00» включает в себя время начала и окончания. Чтобы явно включить все даты начала и окончания, интервал будет представлен как «2007-11-13T00: 00 / 16T00: 00» .

Повторяющиеся интервалы [ править ]

Интервалы повторения указаны в п. «4.5 Периодичность повторения». Они образуются путем добавления «R [n] /» в начало выражения интервала, где R используется как сама буква, а [n] заменяется числом повторений. Отсутствие значения для [n] означает неограниченное количество повторений. Если интервал указывает начало (формы 1 и 2 выше), то это начало повторяющегося интервала. Если интервал указывает конец, но не начало (форма 3 выше), то это конец повторяющегося интервала. Например, чтобы повторить интервал «P1Y2M10DT2H30M» пять раз, начиная с «2008-03-01T13: 00: 00Z» , используйте «R5 / 2008-03-01T13: 00: 00Z / P1Y2M10DT2H30M» .

Усеченные представления [ править ]

ISO 8601: 2000 разрешает усечение (по согласованию), когда ведущие компоненты даты или времени опускаются. Примечательно, что это позволило использовать двузначные годы и неоднозначные форматы ГГ-ММ-ДД и ГГММДД. Это положение было удалено в ISO 8601: 2004.

Только первый тип (конкретная дата в подразумеваемом столетии) опускает ведущие -за столетие. Все остальные форматы имеют одно начало -на каждый пропущенный век, год и месяц.

Стандартизированные расширения [ править ]

ISO 8601-2: 2019 определяет набор стандартизованных расширений форматов даты и времени ISO 8601.

Расширенный формат даты / времени (EDTF)
EDTF приведен в качестве примера профиля ISO 8601. Некоторые из его функций: [8]
  • Неопределенные и приблизительные уточнения, '?' и "~", а также комбинированный "%". Может применяться ко всей дате или к отдельным компонентам.
  • Временные интервалы с открытым (неограниченным) концом или неизвестным концом.
  • Обозначение экспоненциальных и значащих цифр в годах.
  • Специальные значения «месяца», указывающие на подгодовые группы, например сезоны и кварталы.
  • Синтаксис для сериализации списка дат.
Функции EDTF описаны в разделе «Расширения даты и времени» стандарта ISO 8601-2: 2019.
Правила повторения для повторяющихся временных интервалов
ISO 8601-2: 2019 также определяет формат для ограничения повторяющихся интервалов на основе синтаксиса iCalendar .

Использование [ править ]

В Интернете , то World Wide Web Consortium (W3C) использует ISO 8601 в определении профиля стандарта, ограничивающего поддерживаемые форматы даты и времени , чтобы уменьшить вероятность ошибок и сложность программного обеспечения. Очень простая спецификация основана на проекте RFC 3339, упомянутом ниже. [40]

ISO 8601 упоминается в нескольких спецификациях, но не всегда используется полный набор опций ISO 8601. Например, различные стандарты электронных программ для телевидения, цифрового радио и т. Д. Используют несколько форм для описания моментов времени и продолжительности. Спецификация метаданных аудио ID3 также использует подмножество ISO 8601. [41] Стандарт кодирования X.690 GeneralizedTime использует другое подмножество ISO 8601.

Торговля [ править ]

Дата недели ISO 8601, начиная с 2006 года, появилась в своей основной форме на коммерческой упаковке основных брендов в Соединенных Штатах. Его внешний вид зависел от конкретной упаковки, консервного завода или завода по розливу в бутылки больше, чем от какой-либо конкретной марки. Формат особенно полезен для обеспечения качества, так что производственные ошибки можно легко отследить до рабочих недель, а продукты можно правильно выбрать для отзыва.

RFC [ править ]

RFC 3339 определяет профиль ISO 8601 для использования в интернет-протоколах и стандартах . Он явно исключает продолжительность и даты до нашей эры . Более сложные форматы, такие как номера недель и порядковые дни, не допускаются. [42]

RFC 3339 отклоняется от ISO 8601, позволяя указывать смещение нулевого часового пояса как «-00: 00», что запрещает ISO 8601. RFC 3339 намеревается, что «-00: 00» несут коннотацию, что он не указывает предпочтительный часовой пояс, тогда как соответствующий «+00: 00» или любое ненулевое смещение означает, что используемое смещение является предпочтительным. Это соглашение относительно «-00: 00» получено из более ранних RFC, таких как RFC 2822, который использует его для отметок времени в заголовках электронной почты . RFC 2822 не утверждал, что какая-либо часть его формата временной метки соответствует ISO 8601, и поэтому он мог свободно использовать это соглашение без конфликтов.

Принятие в качестве национальных стандартов [ править ]

См. Также [ править ]

  • Нумерация астрономических лет
  • Представление даты и времени по странам
  • Формат даты по стране
  • Часы

Примечания и ссылки [ править ]

  1. ^ a b последний в ISO 8601: 2000, используется «RFC 6350 - vCard Format Specification» . IETF . Август 2011 . Проверено 21 января 2021 . Усеченное представление, как указано в [ISO.8601.2000], разделы 5.2.1.3 d), e) и f), разрешено., хотя удалено в ISO 8601: 2004
  2. ^ a b ISO 8601: 2004 [E] раздел 1 Область применения
  3. ^ ISO 8601: 2004 (E) , ISO , 2004-12-01, Приложение A: ... Из этой концепции были логически выведены представления всех других значений даты и времени; таким образом, ISO 2014, ISO 3307 и ISO 4031 были заменены. ... Идентификация конкретной даты с помощью порядковых дат (ISO 2711) и с помощью системы нумерации недель (ISO 2015) были альтернативными методами, которые также могла включать основная концепция этого международного стандарта; таким образом, стандарты ISO 2015 и ISO 2711 были отменены.
  4. ^ ISO 8601: 2004 (E) . ISO . 2004-12-01. п. iv Предисловие.
  5. ^ «TC 154 Процессы, элементы данных и документы в торговле, промышленности и администрации» . Технические комитеты. ISO.
  6. ^ "ISO / DIS 8601-1: 2016-10-26" (PDF) . Архивировано из оригинального (PDF) на 19.10.2017.
  7. ^ «Немецкий проект E DIN ISO 8601-1: 2017-02 Datenelemente und Austauschformate - Informationsaustausch - Darstellung von Datum und Uhrzeit - Teil 1: Grundlegende Regeln (ISO / DIS 8601-1: 2016) » . DIN-Normenausschuss Informationstechnik und Anwendungen (NIA).
  8. ^ a b «Спецификация расширенного формата даты / времени (EDTF)» . Библиотека Конгресса . 2019-10-08 [2019-02-04, 2014, 2012]. Архивировано 07 марта 2020 года . Проверено 7 марта 2020 .
  9. ^ «Фон в расширенном формате даты / времени (EDTF)» . Библиотека Конгресса . 2019-10-08 [2019-03-01]. Архивировано 07 марта 2020 года . Проверено 7 марта 2020 .
  10. ^ «Расширенный формат даты / времени (EDTF) 1.0 2012/2014» . Подача черновиков. Библиотека Конгресса . Архивировано из оригинала на 2017-07-15 . Проверено 15 июля 2017 .
  11. ^ "ISO / WD 8601-2: 2016-02-16" (PDF) . Архивировано из оригинального (PDF) на 19.10.2017.
  12. ^ "ISO / DIS 8601-2: 2016-10-26" (PDF) . Архивировано из оригинального (PDF) 20 октября 2017 года.
  13. ^ «Немецкий проект E DIN ISO 8601-2: 2017-02 Datenelemente und Austauschformate - Informationsaustausch - Darstellung von Datum und Uhrzeit - Teil 2: Erweiterungen (ISO / DIS 8601-2: 2016) » . DIN-Normenausschuss Informationstechnik und Anwendungen (NIA).
  14. ^ a b ISO, FAQ: Числовое представление даты и времени
  15. ^ «Форматы даты и времени» .
  16. ^ ISO 8601: 2004 раздел 2.3.3 основной формат
  17. ^ В более ранних версиях ISO 8601в соответствующем разделеиспользовалось слово « точность» , а не « точность », например: 2.3.7 представление с пониженной точностью. Это было исправлено в ISO 8601-1: 2019.
  18. Перейти ↑ Doggett, LE (1992). «Календари». В П. К. Зайдельманн (ред.). Пояснительное приложение к астрономическому альманаху . Саусалито, Калифорния: Научные книги университета. п. 580. ISBN 0-935702-68-7. Архивировано из оригинала на 2004-04-01. Григорианский календарь сегодня служит международным стандартом для гражданского использования.
  19. ^ ISO 8601: 2004 (E) . ISO . 2004-12-01. раздел 4.1.2.1 Общие.
  20. ^ ISO 8601: 2004 (E) . ISO . 2004-12-01. 3.5 Расширение ... По взаимному соглашению партнеров по обмену информацией разрешается расширять компонент, идентифицирующий календарный год, который в противном случае ограничен четырьмя цифрами. Это позволяет ссылаться на даты и время в календарных годах за пределами диапазона, поддерживаемого полными представлениями, то есть до начала года [0000] или после конца года [9999].
  21. ^ ISO 8601: 2004 разделы 3.4.2, 4.1.2.4
  22. ^ Например, см. Приложение B.1.1 стандарта.
  23. ^ «RFC 6350 - спецификация формата vCard» . IETF . Август 2011 . Проверено 29 июня 2016 . Усеченное представление, как указано в [ISO.8601.2000], разделы 5.2.1.3 d), e) и f), разрешено.
  24. ^ ISO 8601-1: 2019 раздел 5.3.1.3 Представления с пониженной точностью
  25. ^ ISO 8601-1: 2019 раздел 3.1.3.9 Десятичный знак
  26. ^ ISO 8601: 2004 (E) , ISO , 2004-12-01, 4.2.2.4 ... десятичная дробь должна быть отделена от целой части десятичным знаком, указанным в ISO 31-0, т. Е. Запятой [,] или точка [.]. Из них предпочтительным знаком является запятая.
  27. ^ «Формат ISO 8601» . technet.microsoft.com . Проверено 16 октября 2017 .
  28. ^ «ОБЩИЕ ИНСТРУКЦИИ ПО СВЯЗИ ACP 121 (I)» (PDF) . Комбинированная плата связи электроники . Октябрь 2010 . Проверено 15 января 2018 .
  29. ^ Маккарти, Деннис Д .; Зайдельманн, Кеннет П. (2009). Время: от вращения Земли к атомной физике . Вайнхайм: Wiley-VCH Verlag GmbH & Co. KGaA . п. 10. ISBN 978-3-527-40780-4.
  30. ^ ISO 8601-1: 2019 раздел 3.2.4, ISO 8601: 2004 раздел 3.4.2
  31. ^ RFC 3339  - Неизвестное соглашение о локальном смещении
  32. ^ Ньюман, Крис (июль 2002 г.). Клайн, Грэм (ред.). Дата и время в Интернете: отметки времени . Страницы инструментов IETF . Рестон, Вирджиния: Секретариат IETF, Корпорация национальных исследовательских инициатив. п.  4 . OCLC 43315042 . Архивировано 12 января 2021 года . Проверено 1 февраля 2021 года . Соглашение о неизвестном локальном смещении: если время в формате UTC известно, но смещение к местному времени неизвестно, это может быть представлено смещением «-00: 00». Это семантически отличается от смещения «Z» или «+00: 00», которые подразумевают, что UTC является предпочтительной точкой отсчета для указанного времени. RFC2822 [IMAIL-UPDATE] описывает аналогичное соглашение для электронной почты.
  33. ^ «ISO 8601: 2004 (E)». ISO . 2004-12-01. 4.3.2 ПРИМЕЧАНИЕ: По взаимному соглашению партнеров по обмену информацией, символ [T] может быть опущен в приложениях, где нет риска спутать представление даты и времени дня с другими, определенными в этом международном стандарте. Цитировать журнал требует |journal=( помощь )
  34. ^ " RFC 3339 ". 2002-07-01. 5.6. ПРИМЕЧАНИЕ: ISO 8601 определяет дату и время, разделенные буквой «T». Приложения, использующие этот синтаксис, могут выбрать, для удобства чтения, указать полную дату и полный рабочий день, разделенные (скажем) пробелом. Цитировать журнал требует |journal=( помощь )
  35. ^ ISO 8601: 2004 раздел 4.4.3.3 Альтернативный формат, ISO 8601-1: 2019 раздел 5.5.2.4 Альтернативный формат
  36. ^ "Продолжительность класса Java 8" . Стандартная версия платформы Java 8 . Oracle . Проверено 7 октября 2017 .
  37. ^ «Продолжительность Amazon Alexa» . Разработчик Amazon . Amazon.com . Проверено 7 октября 2017 .
  38. ^ «Информация о стандарте представления даты и времени ISO 8601» . Cs.tut.fi . Проверено 29 августа 2012 .
  39. ^ «ISO 8601 - Со временем (и датами)» . Гидрогольд. 2012-01-01 . Проверено 13 августа 2013 .
  40. ^ Примечание о форматах даты и времени для W3C от Reuters
  41. ^ Нильссон, М. (2000-11-01). «Тег ID3 версии 2.4.0 - Основная структура» . id3.org. С. § 4 . Проверено 27 сентября 2009 .
  42. ^ RFC 3339 , раздел 5.6
  43. ^ Национальный стандарт Канады, «CAN / CSA-Z234.4-89 (R2007): числовые даты и время» . Совет по стандартам Канады . 31 декабря 1989 . Проверено 29 марта 2018 года .
  44. ^ Czubla, Альбин (2020-12-04). "Główny Urząd Miar" (PDF) . Główny Urząd Miar . Архивировано (PDF) из оригинала на 2020-12-04 . Проверено 4 декабря 2020 .

Внешние ссылки [ править ]

  • Запись в каталоге ISO для ISO 8601: 2004
  • Последний прототип ISO 8601-1 (ISO / TC 154 N)
  • Последний прототип ISO 8601-2 (ISO / TC 154 N)
  • Используйте международный формат даты (ISO) - Советы по качеству Интернета Консорциум World Wide Web (W3C)
  • ISO 8601 в Curlie
  • Резюме ISO 8601 Маркуса Куна
  • Резюме 8601 от ISO на Wayback Machine (архивировано 14 июня 2011 г.)
  • Математика календаря ISO 8601
  • Спецификация W3C о дате и времени UTC , основанная на ISO 8601: 1988
  • IETF RFC 3339 на основе ISO 8601: 2000
  • «ISO 8601-1: 2019» . Проверено 23 октября 2020 .
  • «ISO 8601-2: 2019» . Проверено 23 октября 2020 .

Обзор реализации

  • Внедрение ISO 8601 во всем мире