ISO 8601은 날짜와 시간의 표기에 관한 국제 표준 규격이다. 정식 명칭은 Data elements and interchange formats - Information interchange - Representation of dates and times이다. 최신버전인 ISO 8601:2004와 구버전인 ISO 8601:2000, ISO 8601:1988이 있다.

목차

  [숨기기

[편집]날짜

ISO 8601에 따라 날짜를 기록하는 방법에는 3가지가 있다. 연월일(年月日)로 기록하는 방법, 연(年)와 연중일수로 기록하는 방법, 연(年)과 주(週)와 주중일수로 기록하는 방법이 그것이다.

ISO 8601에는 날짜의 표기에 그레고리력을 따른다.

  • 연(年)을 표기할 때는 기원전 1년에 해당하는 0000부터 기원후 9999년에 해당하는 9999까지의 값을 사용할 수 있는데, 율리우스력이 사용되던 0000년부터 1582년까지의 값은 정보 교환시 상호 합의 하에 그레고리력으로 환산해야 한다.[1] 0000년 전이나 9999년 후의 연도 표기도 역시 사용하는 주체간의 상호 합의가 필요하다. 이 경우 연도 앞에 빼기표(-)를 붙이면 기원전 1년 이전, 더하기표(+)를 붙이면 기원전 1년 이후를 가리킨다. 예를 들어 -0001은 기원전 2년이며, 추가할 연도 자릿수를 2개로 합의한 경우 +010000은 서기 10000년이다.
  • 월(月)의 표기는 01부터 12까지 값을 가지며, 각각 1월부터 12월까지를 나타낸다.
  • 일(日)의 표기는 01부터 시작하며 달에 따라 28에서 31까지의 값을 가진다.
  • 연중 일의 표기는 001부터 시작하며 해에 따라 365에서 366까지의 값을 가진다.
  • 연중 주의 표기는 01부터 시작한다.
  • 주중 일의 표기는 월요일을 1로 시작하여 순서대로 요일에 숫자를 붙이며, 일요일을 7로 한다.

[편집]연월일 표기법

YYYY-MM-DD(확장 형식) 또는 YYYYMMDD(기본 형식)로 표기한다.

1981-02-22 또는 19810222는 1981년 2월 22일을 나타낸다.

DD나 MM-DD를 쓰지 않으면 달 또는 해를 나타낸다. 이때는 하이픈(-)을 써서 YYYY-MM로 표기하는 것이 기본 형식이며 확장 형식은 없다. YYYYMM 형식은 예전에 자주 쓰이던 형식인 YYMMDD와 혼동될 수 있기 때문에 허용되지 않는다.

1981-02 : 1981년 2월.
1981 : 1981년.
19 : 1900년대(1900년부터 1999년까지의 100년)를 나타낸다. 이는 20세기(1901년부터 2000년까지의 100년)와는 다르다.

[편집]연과 연중일수 표기법

YYYY-DDD(확장 형식) 또는 YYYYDDD(기본 형식)로 표기한다. DDD는 연중 날의 번호로서 1월 1일이 001이며, 12월 31일은 평년은 365, 윤년은 366이 된다.

1981-053 또는 1981053 : 1981년의 53번째 날, 즉 2월 22일을 나타낸다.

[편집]연과 주와 주중일수 표기법

YYYY-Www-D(확장 형식) 또는 YYYYWwwD(기본 형식)로 표기한다. ww는 연중의 주의 번호로, 해의 첫 주는 01, 마지막 주는 52 또는 53이 된다. 단, 해의 첫 주는 그해의 첫번째 목요일을 포함한 주로 한다. D는 요일을 나타내며, 월요일이 1, 일요일이 7이다.

1981-W07-7 또는 1981W077 : 1981년의 7번째 주의 일요일, 즉 2월 22일을 나타낸다.

D를 생략하면 주를 나타낸다.

1981-W07 또는 1981W07 : 1981년의 7번째 주를 나타낸다.

[편집]시간

시간의 표기에는 쌍점을 쓴 hh:mm:ss(확장 형식) 또는 hhmmss(기본 형식)를 사용한다. hh는 시(時)로서 00부터 24까지의 값을 갖는다. mm은 분(分)으로서 00부터 59까지의 값을 갖는다. ss는 초(秒)로서 00부터 59까지의 값을 갖는다. 반점이나 온점을 써서 앞 단위를 나눈 시간을 나타낼 수도 있는데, 이때 십진수를 사용하며 자릿수는 정보 교환 주체 사이에 미리 합의해야 한다. 다음은 분절 시간 표현 자릿수로 한 자리를 정한 예이다.

10:20:30,4 또는 102030,4 : 10시 20분 30.4초
10:30,5 또는 1030,5 : 10:30:30과 같다.
10.5 : 10:30와 같다.

[편집]날짜와 함께 표기할 때

날짜와 시간 사이에 T를 넣어 표기한다.

1981-02-22T09:00:00 : 1981년 2월 22일 09:00

[편집]시간대 표기

UTC 시간대에서는 시각 뒤에 Z를 붙인다.

1981-02-22T09:00Z 또는 19810222T1200Z : UTC 시간대에서의 1981년 2월 22일 오전 9시

UTC외의 시간대에서는 시각 뒤에 ±hh:mm±hhmm±hh를 덧붙여 쓴다.

1981-02-22T09:00:00+09:00 : UTC+9 시간대에서의 1981년 2월 22일 오전 9시

[편집]기간

기간을 나타낼 때에는 시작일시/종료일시로 표기한다.

1981-02-22/2007-09-26 : 1981년 2월 22일 ~ 2007년 9월 26일
1981-02-22T09:00:00+09:00/2007-09-26T17:00:00+09:00 : UTC+9 시간대에서 1981년 2월 22일 9시 ~ 2007년 9월 26일 17시

시작일시와 종료일시가 같은 해이거나 같은 달인 경우에는 다음과 같이 생략할 수 있다.

1981-02-22/09-26 : 1981년 2월 22일 ~ 1981년 9월 26일
1981-02-22/26 : 1981년 2월 22일 ~ 1981년 2월 26일

[편집]참고 문헌

  1.  ISO 8601:2004(E) (영어) (PDF). 국제 표준화 기구 (2004년 12월 1일). 2011년 1월 28일에 확인. “4.1.2.1 General ... calendar year is, unless specified otherwise, represented by four digits. Calendar years are numbered in ascending order according to the Gregorian calendar by values in the range [0000] to [9999]. Values in the range [0000] through [1582] shall only be used by mutual agreement of the partners in information interchange.”

[편집]바깥 고리




'Development > Common' 카테고리의 다른 글

context  (0) 2012.11.21
accessor 와 mutator  (0) 2012.11.05
http - Content Length와 Transfer Encoding  (0) 2012.07.18
특수문자 이름  (0) 2012.07.17
동기 비동기  (0) 2012.07.03
Posted by linuxism
,