마이크로소프트사의 오피스 2007 문서들은 Open XML이라고 하는 ECMA 및 ISO 표준 문서 포맷을 따른다. Open XML은 XML 기반의 문서 포맷으로 관련된 요소들을 zip으로 압축한 형태이기 때문에 표준 압축 해제 툴로 내용을 들여다 볼 수 있다. xml 스키마와 관련 요소를 묶는 zip 기술 기반의 이런 패키징 기술은 OPC (Open Packaging Convention)이라는 좀 더 범용 규칙을 따르며, 이 OPC를 따르는 또다른 문서 포맷으로는 보고서용 Readonly 파일로 자주 사용되는 XPS (XML Paper Specification)이 있다. 이러한 OPC 기반의 파일 포맷들은 기본적으로는 .NET Framework의 System.IO.Packaging 네임스페이스가 제공하는 저수준 API를 통해 입출력 등이 가능하다. 이것에 대한 예제는 Windows SDK에 포함되어 있으니 참고하기 바란다.
System.IO.Packaging 기반으로 Open XML 파일 포맷을 다루는 데 있어 좀 더 나은 개발 경험을 전달하기 위해 제공되는 것이 Open XML Format SDK이다. 현재 Open XML Format SKD 2.0 April CTP까지 나와 있으며 1.0 버전과 비교했을 때 가장 달라진 것은, 1.0에서는 W3C XML DOM 모델을 따라 프로그래밍을 하였는데, 2.0에서는 LINQ를 통해 XML 문서를 다룰 수 있게 된 것이다. Open XML Format SDK에 대한 좀 더 상세한 설명은 아래 MSDN 싸이트를 참고하시길...
http://msdn.microsoft.com/en-us/library/bb456487(office.14).aspx
한편, Open XML Format SDK 기반으로 좀 더 나은 사용자 경험을 제공하기 위한 라이브러리로 Simple OOXML이 codeplex를 통해 오픈 소스로 제공되고 있다. 소스 코드까지 공개되어 있으며 LGPL 라이선스 정책을 따른다. Simple OOXML 라이브러리를 사용하기 위해서는 반드시 위에서 언급한 Open XML Format SDK가 설치되어 있어야 한다. Simple OOXML을 이용하면 오피스 제품이 설치되어 있지 않아도 템플릿 기반으로 쉽게 새로운 오피스 문서를 만들어낼 수 있다.
Open XML에 대한 새로운 소식은 OpenXMLDeveloper.org에서 살펴볼 수 있다.
댓글을 달아 주세요