Office Open XML (OOXML, DOCX[1], проект ISO/EIC DIS 29500) — серия форматов файлов для хранения электронных документов пакетов офисных приложений — в частности, Microsoft Office. Формат представляет собой zip-архив, содержащий текст в виде XML, графику и другие данные, которые могут быть сериализованы с применением защищённых патентами двоичных форматов, спецификации которых были опубликованы Microsoft для пользователей OOXML на условиях Microsoft Open Specification Promise (англ.). Две разные версии OOXML определены в ECMA-376[1][2] и ISO 29500.
Microsoft заявила, что Office Open XML будет открытым стандартом, и представила его на утверждение ECMA. 8 декабря2005 года ECMA организовала технический комитет 45 (TC45), чтобы «выпустить формальный стандарт для офисных приложений, полностью совместимый с форматами Office Open XML, представленными Microsoft». Предложение также поддержали Apple Inc., Barclays Capital, BP, the British Library, Essilor, Intel, NextPage., Statoil ASA и Toshiba.[3]
ISO/IEC
5 сентября2007 года принятие варианта OOXML как стандарта ISO/IEC 29500 было временно отклонено по результатам голосования.[4]
В марте 2008 года изменённая спецификация была принята как будущий стандарт ISO/IEC 29500. В частности, в Норвегии при этом были отмечены нарушения процесса стандартизации.[5] Позже оказалось, что файлы, сохраняемые Microsoft Office 2007, не проходят тестов на соответствие стандарту, что нарушает правила принятия стандарта через процедуру Fast-Tracking, требующие, чтобы существовали реализации стандарта.[6]
Публикация ISO/IEC DIS 29500 была отложена на период рассмотрения аппеляций (30 дней).[13][14]
В июле руководители ISO и IEC порекомендовали Technical Management Board отклонить аппеляции, указав в качестве причины то, что проект стандарта был принят голосованием в соответствии с ISO/IEC JTC 1.[15]
В августе ISO отклонила аппеляции стран выступающих против принятия OOXML как стандарта, так как они не смогли получить поддержку необходимого числа участников ISO для приостановления принятия стандарта [16]
В конце августа государственные IT‐организации Бразилии, ЮАР, Венесуэлы, Эквадора, Кубы и Парагвая опубликовали заявление о сомнениях в нейтральности ISO.[17][18]
Поддержка в текстовых процессорах
Предыдущие версии MS Office
Бо́льшей популярностью на 2007 год пользуется его предшественники — двоичные форматы Microsoft Office 97—2000. Поддержка одной из версий OOXML (не соотвествующая ISO/IEC 29500) появилась в Microsoft Office 2007.[6] Для работы с этим форматом в предыдущих версиях MS Office, Microsoft предлагает установить Microsoft Office Compatibility Pack, который обеспечивает «прозрачную» работу с форматами Office 2007 пакетов MS Office 2000, XP и 2003.[19]
Поддержка формата в других текстовых процессорах
В OpenOffice.org отсутствует встроенная поддержка OOXML. Для решения данной проблемы существуют онлайн-конверторы, способные конвертировать формат DOCX в другие форматы. Так же существует плагин (Разработанный фирмой Novell) позволяющий открывать и сохранять файлы в этом формате в ОС семейств SUSE и Microsoft Windows.[20]
Поддержка формата OOXML в текстовом процессоре CorelWord Perfect ожидалась в середине 2007 года.[21]
Название Office Open XML слишком похоже на OpenOffice.org, что приводит к путанице.[23][24] Такое уже случалось с предложениями стандартов от Microsoft.[25] Некоторые считают[источник?], что это было сделано намеренно.
Несмотря на то, что информация о формате открыта, он защищён патентами Microsoft, и любая программа (нарушающая лицензионное соглашение на использование запатентованных составляющих стандарта) для чтения Open XML нарушит законы США. [26][27]
Документация к Open XML занимает более 6000 страниц, что является излишне большим и существенно усложняет попытку создания программы с поддержкой Open XML.[28]
Из‑за широкого использования в Open XML битовых масок невозможно провести формальную проверку XML‐файла с помощью DTD.
Open XML является, по сути, переводом в XML бинарных форматов Microsoft Office. Как ручное редактирование, так и поддержка Open XML в других программах серьёзно затруднены. Размеры бумаги перенумерованы числами от 1 до 68, вместо имён A4, B5 и т. д; аналогично сделано с кодами языков. Некоторые имена цветов отличаются от стандартных.
Формат поддерживает вставку двоичных данных, что в будущем может привести к несовместимости.
Отсутствие поддержки языков с начертанием справа налево, и как результат, невозможность написания документов на арабском языке и иврите.
Формат времени, доставшийся Open XML по наследству от Microsoft Excel, а тому от Lotus 1-2-3, отсчитывает годы начиная с 1900. При этом сам 1900 год неправильно трактуется как високосный, вследствие чего все даты до 28 февраля 1900 года включительно имеют неправильное соответствие с днём недели. Также в формате времени не задан часовой пояс, и временны́е расчёты не учитывают переходов на летнее время.
Использование специального формата математических формул, который имеет альтернативу в виде MathML, и вдобавок был отвергнут консорциумом W3C ещё в 1997 году. В других местах также используются собственные форматы Microsoft — например, для векторной графики применяется внутренний формат Windows WMF, а не стандартизированный SVG.
Отсутствие поддержки других выходных дней недели кроме субботы-воскресенья: в частности, пятницы-субботы (в Израиле) и четверга-пятницы (в странах Ближнего Востока).
Andreas Fischer (2007-08-31) Tracking the status of Office Open XML(англ.)Balance of Cowards — Примерная сводная таблица готовящихся голосов за стандартизацию OOXML ISO. Проверено 2 сентября 2007 г.