마이크로소프트 오피스 2010은 ECMA-376에 대한 읽기 지원, ISO/IEC 29500 Transitional에 대한 완전 지원, ISO/IEC 29500 Strict에 대한 읽기 지원을 제공한다. 마이크로소프트 오피스 2013 이후 버전은 ISO/IEC 29500 Strict를 완전히 지원하지만, 하위 호환성 문제로 인해 기본 파일 형식으로 사용하지는 않는다.
배경
2000년, 마이크로소프트는 오피스 XP에 포함된 마이크로소프트 엑셀용 XML 기반 형식의 초기 버전을 출시했다. 2002년에는 마이크로소프트 워드를 위한 새로운 파일 형식이 뒤를 이었다. 마이크로소프트 오피스 XML 포맷으로 알려진 엑셀 및 워드 형식은 이후 마이크로소프트 오피스 2003 릴리스에 통합되었다.
마이크로소프트는 2005년 11월, 자사의 XML 기반 형식의 새 버전을 Ecma 인터내셔널을 통해 "오피스 오픈 XML"로 표준화하는 데 공동 후원하겠다고 발표했다. Ecma에 대한 프레젠테이션은 마이크로소프트의 장 파올리와 이자벨 발레-하퍼가 진행했다.
마이크로소프트는 초기 자료를 Ecma 인터내셔널 기술 위원회 TC45에 제출하였고, 여기서 표준화되어 2006년 12월 ECMA-376으로 승인되었다.
이 표준은 이후 ISO 및 IEC의 공동 기술 위원회 1(JTC 1)에서 신속하게 처리되었다. 초기에 통과에 실패한 후, 수정된 버전은 2008년 4월에 마무리된 JTC 1 신속 표준화 프로세스의 결과로 ISO/IEC 표준으로서의 승인에 필요한 투표를 받았다. 그 결과로 4부로 구성된 국제 표준(ISO/IEC 29500:2008로 지정)이 2008년 11월에 출판되었으며 ITTF에서 다운로드할 수 있다. 기술적으로 동등한 일련의 문서는 Ecma에 의해 ECMA-376 오피스 오픈 XML 파일 포맷 제2판(2008년 12월)으로 출판되었으며 웹사이트에서 다운로드할 수 있다.
오피스 오픈 XML의 ISO/IEC 표준화는 논란이 많았고 갈등을 빚었으며, 사양과 표준화 과정 모두에 대해 많은 논의가 있었다. 인포월드에 따르면, "OOXML은 소프트웨어 제작자들이 이미 국제 표준인 덜 복잡한 오피스 소프트웨어 형식인 오픈도큐먼트 포맷(ODF)을 사용할 수 있기 때문에 불필요하다는 근거로 많은 이들의 반대에 부딪혔다." 같은 인포월드 기사는 IBM(ODF 형식을 지원함)이 마이크로소프트와 같은 지배적 기업들이 부당한 영향력을 행사하도록 허용한다고 주장하며 표준화 기관을 떠나겠다고 위협했다고 보도했다. 해당 기사는 또한 마이크로소프트가 오피스 오픈 XML이 ISO/IEC에서 통과될 수 있도록 국가들에 압력을 가하여 표준화 과정을 매수했다는 비난을 받았다고 언급했으나, 정확히 누가 마이크로소프트를 비난했는지는 명시하지 않았다.
라이선스
특허 문제에 관한 Ecma 인터내셔널 행동 강령에 따라, ECMA의 참가 및 승인 회원 조직은 자신의 특허권을 FRAND(합리적이고 비차별적인) 기준으로 제공해야 한다.
ISO/IEC 국제 표준과 관련된 특허 보유자는 ISO/IEC/ITU 공동 특허 정책에 따라 해당 특허가 라이선스될 수 있는 조건을 규정하는 표준화된 라이선스에 동의할 수 있다.
이 표준의 주요 기여자인 마이크로소프트는 특허 라이선스를 위해 소송하지 않겠다는 언약을 제공했다. 이 언약은 Groklaw블로그와 같은 일부에서는 이를 비판하는 등 엇갈린 반응을 얻었으며, 스탠퍼드 법학대학원의 변호사이자 강사인 로렌스 로젠과 같은 이들은 이를 지지했다.
마이크로소프트는 귀하가 보장된 사양(Covered Specification)을 준수하는 범위 내에서 구현을 만들거나, 사용하거나, 판매하거나, 판매를 제안하거나, 수입하거나, 배포하는 행위에 대하여 마이크로소프트 필수 청구항(Microsoft Necessary Claims)을 주장하지 않을 것을 취소 불가능하게 약속합니다 [...]
이는 ISO/IEC 29500:2008 또는 Ecma-376 표준을 벗어나지 않는 애플리케이션과 "마이크로소프트의 해당 보장된 사양 구현에 대하여 특허 침해 소송을 제기, 유지 또는 자발적으로 참여"하지 않는 당사자로 제한된다.
오픈 스펙 약속은 ECMA-376 신속 제출을 지원하기 위해 ISO/IEC에 제출된 문서에 포함되었다.
Ecma 인터내셔널은 "OSP는 오픈 소스 및 상용 소프트웨어가 [사양을] 구현할 수 있게 한다"라고 주장했다.
버전
오피스 오픈 XML 사양은 여러 버전으로 존재한다.
ECMA-376 제1판 (2006)
ECMA 표준은 다양한 청중의 요구를 충족하기 위해 5부로 구성되어 있다.
제1부. 기초
어휘, 표기 관례 및 약어
주요 및 보조 마크업 언어 요약
적합성 조건 및 상호 운용성 가이드라인
각 문서 유형에 적용되는 오픈 패키징 컨벤션스 내의 제약 조건
제2부. 오픈 패키징 컨벤션스
패키지 모델 및 물리적 패키지를 위한 오픈 패키징 컨벤션스(OPC)는 여러 공급업체의 다양한 애플리케이션에서 다양한 문서 유형에 의해 정의되고 사용된다.
패키지의 일부 또는 전체 내용에 대한 핵심 속성, 섬네일, 디지털 서명, 승인 및 암호화 기능을 정의한다.
OPC를 위한 XML 스키마는 XSD(XML Schema Definitions) 및 (비규범적으로) RELAX NG(ISO/IEC 19757-2)를 사용하여 선언된다.
제3부. 입문서
워드프로세싱ML, 스프레드시트ML, 프레젠테이션ML, 드로잉ML, VML 및 공유 ML에 대한 정보 제공(비규범적) 소개로, 예시와 다이어그램을 통해 맥락을 제공하고 요소를 설명한다.
비즈니스 데이터와의 통합을 지원하기 위해 패키지 내의 사용자 정의 XML 데이터 저장 기능을 설명한다.
제4부. 마크업 언어 참조
워드프로세싱ML, 스프레드시트ML, 프레젠테이션ML, 드로잉ML, 공유 ML 및 사용자 정의 XML 스키마에 대한 참조 자료를 포함하며, 요소 계층 구조(부모/자식 관계)를 포함한 모든 요소와 속성을 정의한다.
마크업 언어를 위한 XML 스키마는 XSD 및 (비규범적으로) RELAX NG를 사용하여 선언된다.
사용자 정의 XML 데이터 저장 기능을 정의한다.
제5부. 마크업 호환성 및 확장성
오픈 XML 문서의 확장 기능을 설명하고 애플리케이션이 다양한 확장을 통해 작동할 수 있게 하는 요소와 속성을 지정한다.
이후 버전의 ECMA-376 표준은 해당 ISO 표준과 정렬되어 있으며 기술적으로 동등하다.
ISO/IEC 29500:2008
ISO/IEC 표준은 4부로 구성되어 있다: 제1부, 제2부, 제3부는 독립적인 표준이다. 예를 들어 오픈 패키징 컨벤션스를 명시하는 제2부는 XPS 및 디자인 웹 포맷을 포함한 다른 파일 형식에 의해 사용된다. 제4부는 제1부의 수정안으로 읽어야 하며, 이를 필요로 한다.
기술적으로 동등한 일련의 문서 또한 Ecma에 의해 ECMA-376 제2판(2008)으로 출판되었다.
제1부. 기초 및 마크업 언어 참조
5560페이지로 구성된 이 부는 다음을 포함한다:
적합성 정의
표준에 의해 정의된 XML 문서 마크업 언어에 대한 참조 자료
XSD 및 (비규범적으로) RELAX NG를 사용하여 선언된 문서 마크업 언어용 XML 스키마
이 표준은 워드프로세싱ML, 프레젠테이션ML, 스프레드시트ML 각각에 대해 엄격(Strict) 및 전환(Transitional)의 두 가지 문서 및 애플리케이션 적합성 수준을 명시하며, 애플리케이션의 기본 및 전체에 대한 설명도 명시한다.
버전 간 호환성
ECMA-376 제1판에서 ISO/IEC 29500:2008로의 변경 의도는 유효한 ECMA-376 문서가 ISO 29500 전환 문서로도 유효하도록 하는 것이었다. 그러나 BRM에서 도입된 최소 한 가지 변경 사항(xsd:boolean에 대한 추가 값 허용 거부)은 대부분의 문서에 대한 하위 호환성을 깨뜨렸다. 이에 대한 수정안이 ISO/IEC JTC 1/SC 34/WG 4에 제안되었고, 2009년 6월 오피스 오픈 XML의 첫 번째 개정을 위한 권고안으로 승인되었다.
ECMA-376 제1판에 부합하는 문서를 읽을 수 있는 애플리케이션은 ISO 8601 날짜를 포함하는 ISO/IEC 29500-4 전환 문서를 손상된 것으로 간주할 것이다.
마이크로소프트 워드와 마이크로소프트 오피스의 일부 구버전은 마이크로소프트가 제공하는 무료 호환성 팩 설치 후 .docx 파일을 읽고 쓸 수 있지만, 수식과 같은 일부 항목은 편집할 수 없는 이미지로 변환된다.
마이크로소프트 오피스 2007부터 오피스 오픈 XML 파일 형식이 마이크로소프트 오피스의 기본 파일 형식이 되었다. 그러나 오피스 오픈 XML 표준에 도입된 변경 사항으로 인해 오피스 2007은 ISO/IEC 29500:2008을 완전히 준수하지 않는다.
오피스 2010은 ISO/IEC 29500:2008 준수 버전의 오피스 오픈 XML 문서를 여는 것을 지원하지만, 표준의 엄격(Strict) 스키마가 아닌 전환(Transitional) 스키마를 준수하는 문서만 저장할 수 있다. 참고로 ISO/IEC의 의도는 ISO/IEC 29500 표준에서 전환 변형을 제거할 수 있도록 하는 것이다. 마이크로소프트 오피스 2013 이후 버전은 ISO/IEC 29500 Strict를 완전히 지원하지만, 하위 호환성 문제로 인해 기본 파일 형식으로 사용하지는 않는다.
그러나 오피스 오픈 XML 형식을 읽고 쓰는 기능은 마이크로소프트 오피스에만 국한되지 않는다. 다른 오피스 제품들도 이 형식을 읽고 쓸 수 있다.
리브레오피스의 제작자이자 오픈도큐먼트 포맷(ODF)의 후원자인 도큐먼트 재단은 OOXML이 지나치게 복잡하고 불필요하게 난해하다고 주장해 왔다. 재단에 따르면 이는 상호 운용성을 저해하고 마이크로소프트 소프트웨어에 대한 사용자 의존도를 높이는 원인이 된다. 비교 분석 결과, 그들은 OOXML 파일이 동일한 텍스트를 포함하는 ODF 파일보다 몇 배 더 길고 복잡하다는 점을 보고했으며, 추가적인 장황함과 구조적 요소를 마이크로소프트가 아닌 구현을 복잡하게 만드는 태그와 메타데이터의 "미로"라고 묘사했다.