나무모에 미러 (일반/어두운 화면)
최근 수정 시각 : 2025-07-19 05:23:09

OPML





1. 개요2. 역사3. 구조와 특징4. 주요 용도5. 사용처6. 장점과 단점
6.1. 장점6.2. 단점
7. 기타 사양8. 여담

1. 개요

OPML은 “Outline Processor Markup Language”의 약자로, XML을 기반으로 한 아웃라인(계층 구조) 데이터를 표현하기 위해 만들어진 마크업 언어다. 주로 RSS 피드의 리스트를 저장하거나 공유하는 데 사용되며, 다양한 팟캐스트 앱, RSS 리더, 워크플로 도구 등에서 지원된다. 확장자는 .opml이다.

2. 역사

OPML은 원래 2000년대 초반, Dave Winer가 개발한 RSS 애그리게이터 및 블로그 편집기인 Radio UserLand에서 아웃라인 데이터의 저장 및 공유를 목적으로 처음 설계되었다. 이후 OPML의 활용도가 높아지며 다른 애플리케이션들에서도 사용되기 시작했고, 팟캐스트RSS 리더가 대중화되면서 주요한 포맷으로 자리잡았다.

OPML은 특정한 표준 기관에 의해 공식적으로 규정된 포맷은 아니며, 사실상 산업 표준(de facto standard)으로 자리잡았다. 2003년 Dave Winer는 OPML 1.0 사양을 공개했고, 이후 2006년에는 OPML 2.0 초안이 공개되었지만, 이후 업데이트는 중단된 상태다.

3. 구조와 특징

OPML은 XML 기반의 포맷으로, 기본 구조는 <opml> 루트 엘리먼트 아래에 <head><body> 섹션으로 나뉜다.

예시:
<opml version="1.0">
  <head>
    <title>내 RSS 구독 목록</title>
  </head>
  <body>
    <outline text="뉴스" title="뉴스">
      <outline text="한겨레" type="rss" xmlUrl="https://www.hani.co.kr/rss/" htmlUrl="https://www.hani.co.kr/"/>
      <outline text="경향신문" type="rss" xmlUrl="https://www.khan.co.kr/rss/" htmlUrl="https://www.khan.co.kr/"/>
    </outline>
    <outline text="기술 블로그">
      <outline text="오픈AI 블로그" type="rss" xmlUrl="https://openai.com/blog/rss/" htmlUrl="https://openai.com/blog"/>
    </outline>
  </body>
</opml>


이처럼 <outline> 태그를 중첩하여 계층적인 구조를 구성할 수 있는 것이 OPML의 핵심적인 특징이다.

4. 주요 용도

5. 사용처

6. 장점과 단점

6.1. 장점

6.2. 단점

7. 기타 사양

8. 여담