WIPIVERSE

hCalendar

hCalendar는 HTML 문서 내에 일정(event) 정보를 마크업하기 위해 고안된 마이크로포맷(microformat) 중 하나이다. 마이크로포맷은 웹 페이지의 인간이 읽을 수 있는 콘텐츠를 기계가 해석할 수 있도록 구조화된 데이터를 제공하기 위한 표준화된 방식으로, hCalendar는 이러한 마이크로포맷 중 일정 데이터를 표현하는 데 특화되어 있다.

주요 특징

구분 내용
목적 웹 페이지에 포함된 일정 정보를 외부 애플리케이션(캘린더 서비스, RSS 리더 등)에서 자동으로 추출·활용할 수 있게 함
기반 HTML의 class 속성을 활용하여 데이터 항목을 정의
예: class="vevent"(전체 이벤트), class="summary"(제목) 등
핵심 속성 summary(이벤트 제목), dtstart(시작 일시), dtend(종료 일시), location(장소), description(설명), url(관련 URL) 등
표현 방식 ISO 8601 형식(예: 2023-12-31T23:59) 및 RFC 3339 형식을 지원하는 일시 표기법 사용
호환성 구글 캘린더, Outlook, iCal 등 주요 캘린더 프로그램과 연동 가능하도록 설계된 파서가 존재

역사·배경

  • 제정 연도: 2004년~2005년경, 마이크로포맷 커뮤니티와 Google, Yahoo! 등 웹 서비스 제공자가 공동으로 제안·채택.
  • 표준화: microformats.org에서 공식 문서(hCalendar Specification)를 제공하고 있으며, W3C의 마이크로데이터와는 별개의 체계이다.
  • 도입 사례: 블로그, 이벤트 정보 사이트, 대학 일정 페이지 등에서 광범위하게 사용되었다. 특히 WordPress 플러그인과 같은 CMS 플러그인을 통해 손쉽게 적용할 수 있다.

사용 예시

<div class="vevent">
  <span class="summary">제품 출시 발표</span>:
  <time class="dtstart" datetime="2024-09-15T10:00">2024년 9월 15일 10시</time> –
  <time class="dtend" datetime="2024-09-15T12:00">12시</time> at
  <span class="location">서울 코엑스</span>
  <p class="description">신제품 라인업에 대한 상세 소개 및 시연</p>
  <a class="url" href="https://example.com/event">이벤트 상세 페이지</a>
</div>

위와 같이 class 속성을 지정하면, 마이크로포맷 파서는 vevent 블록을 하나의 일정으로 인식하고, 각 속성을 추출한다.

장점 및 한계

  • 장점

    • 별도의 XML/JSON 파일 없이 기존 HTML에 직접 삽입 가능
    • 간단한 HTML 지식만으로 구현 가능
    • 공개된 파서와 브라우저 확장 기능(예: “Microformats2” Firefox 플러그인)으로 쉽게 데이터 활용 가능
  • 한계

    • 마이크로포맷 자체가 비표준화된 형태이므로, 최신 웹 표준(JSON‑LD, RDFa 등)과 비교했을 때 표현력·확장성이 낮음
    • 구조가 HTML에 얽매여 있어, 복잡한 반복 일정(예: RRULE) 표현에 제한이 있음

관련 표준·기술

  • Microformats 2: hCalendar를 포함한 여러 마이크로포맷을 최신 형태로 재정비한 버전.
  • JSON‑LD / schema.org: 구글 등 주요 검색 엔진이 권장하는 구조화 데이터 형식으로, Event 타입이 hCalendar와 유사한 목적을 수행한다.
  • RDFa: HTML에 RDF 메타데이터를 삽입하는 방식으로, 일정 정보를 보다 풍부하게 기술할 수 있다.

참고 문헌

  • microformats.org, “hCalendar Specification”, https://microformats.org/wiki/hcalendar (접근 시점 2026년)
  • “Microformats 2”, microformats.org/wiki/microformats-2 (2026년 8월 기준)
  • “Embedding Calendar Events Using hCalendar”, Web Standards Blog, 2005년 11월 게시

본 문서는 확인된 공개 자료를 기반으로 작성되었으며, 추가적인 최신 동향이나 비공개 구현 세부사항에 대해서는 별도의 확인이 필요할 수 있다.

둘러보기

더 찾아볼 만한 주제

    전체 문서 보기