DITA 와 XML
개요
DITA는 XML 출판 분야에서 가장 중요한 혁신 중 하나다. 기술 문서 출판을 위해 XML
을 사용하고 있거나 사용할 계획이라면 조만간 DITA를 접할 수 있을 것이다.
‘Darwin Information Typing Architecture(다윈 정보 입력 아키텍처)’의 약어인 DITA는
정보 표준 발전 조직인 OASIS(Organizationfor the Advancement of Structured
Information Standards, http://www.oasisopen.org)의 후원을 받아 IBM이 개발해 커
뮤니티에 기증한 것이다.(OASIS가 구성한DITA 관련 기술 위원회에 관한 자세한 정보
는 http://xml.coverpages.org/DITA-OASISCFP.html에서 찾아 볼 수 있다.
본 문서는 구현하는 사람에게 ‘ 방법 ’ 을 지도하기 위해 작성한 것이 아니고 기술적
으로 심도 있는 내용을 다루지도 않다. IBM은 DITA와 관련한 다수의 심도 깊고 내용이
좋은 기술 정보를 발행했다.(http://www-106.ibm.com/developerworks/xml/library/x-dita1/ 참조)
저자는 IBM의 직원과 지원 덕분에 DITA를보다 잘 이해할 수 있었다는 점을 매우 감사하게 생각한다.
모든 오류와 내용 누락,잘못된 해석은 전적으로 저자의 책임이라는 점을 밝혀둔다.
DITA에 관심을 가져야 하는 이유
XML 자체와 마찬가지로 DITA는 심오한 함축적 의미를 지닌 몇몇 단순한 구성개념을
구체적으로 표현하고 있다. DITA를 정의하는 것은 쉽지만 DITA의 함축적 의미를 기술하는 것은 어려운 부분이다. 따라서 DITA를 정의하는 부분을 먼저 다룬다.
DITA는 기술 문서를 출판하기 위해 XML에 기초해 작성한 아키텍처다. 어떤 면에서는 기술 매뉴얼, 특히 컴퓨터 하드웨어와 소프트웨어에 관한 문서를 XML 기반으로 출판하는 기반으로서 수년 전에 작성한
DocBook과 유사하다.(본 문서를 작성할 때http://www.namahn.com/resourcesnotes.html에서 여러 가지 흥미로운 자료를 우연히 발견할 수 있었다. 읽어 볼 만한 몇몇 백서중에서는 본 문서보다도 더 기술적인 DITA관련 백서도 있었다. 약간 오래 되기는 했지만 DocBook과 비교하는 내용이 포함돼 있다.)
DITA를 특별한 것으로 만드는 것은 다음과 같은 두 가지 측면이다.
? 모듈 방식 ? DITA는 모듈 방식으로 정보를 생성하는 방식을 지원하는 토픽DTD(Topic DTD)를 정의한다. 토픽은 정보 구성요소이지 완전한 책자가 아니다.
토픽은 관심 분야의 특정 부분의 한 측면을 다룬다.(예를 들면 이 문서는 도입,개요, 원문의 세 가지 토픽으로 나눌 수있다.)
DITA는 문서가 적절한 계층 구조를 가질수 있도록 토픽을 문서에 결합시키는 메커니즘을 정의한다. 예를 들면 책자의계층 구조는 보통 장, 섹션, 하부 섹션으로 구성돼 있다.
? 융통성 ? 토픽 DTD는 제목, 단락, 목록과 같이 각각 상이한 지정 서식을 가진 일반적인 요소를 명시한다는 점에서 HTML과 유사하다. 토픽 DTD를 특정 필요에 맞도록 개조하기 위해 DITA는 토픽
에 있는 행태와 속성을 상속받은 새로운 태그를 정의할 수 있도록 하는 ‘세분화(specialization) ’ 라고 하는 메커니즘을 정의한다.
세분화를 통해 DITA를 지원하는 다운스트림 애플리케이션이 알 수 없는 태그를
자신이 속성을 상속받은 태그처럼 처리할 수도 있다. 예를 들면 ‘ 정렬된 목록’에서 상속받은 ‘절차’라는 태그와 ‘목록 항목’에서 상속받은 ‘단계’라는 태그를 작성할 수 있다. ‘절차’와 ‘단계’ 태그에 특정한 처리를 추가하고 싶을 수도 있겠지만 이 같은 태그에 대해서 아무 것도 알지 못하는 DITA 지원 애플리케이션은 ‘절차’와 ‘단계’를 ‘정렬 목록’ 또는 ‘목록 항목’인 것처럼 처리할 것이다. 예를 들면 ‘단계’ 태그를 전혀 알지 못하는 DITA 지원 문서 출판 애플리케이션은 ‘단계’태그를 마치 ‘목록 항목’인 것처럼 서식을 지정할 것이다.DITA 정의에 대해서 알고 있다고 할지라도 DITA의 함축적 의미를 이해할 수 있는 충분
한 배경 지식을 가질 수 없다. 이제 이야기를 시작해 보도록 하자.