Office Open XML (OOXML) je specifikace pro souborový formát na ukládání dokumentů kancelářských balíků jako textových dokumentů, tabulek či prezentací. Formát byl navržen společností Microsoft a poprvé byl použit v Microsoft Office 2007. Finální specifikace byla vytvořena pod hlavičkou sdružení ECMA v rámci pracovní skupiny TC45, jejímiž členy jsou například také společnosti a organizace, mezi které patří: Apple, Barclays Capital, BP, Britská knihovna, Essilor, Intel, Microsoft, NextPage, Novell, Statoil, Toshiba a Knihovna kongresu USA. Tento standard dostal označení ECMA-376. Schvalování vyvolalo kontroverze.
Formát Office Open XML je soubor ZIP, který v sobě obsahuje XML a další potřebné soubory. Výsledkem jsou tak menší soubory, než byly původní binární soubory, které byly vytvářeny předchozími verzemi kancelářského balíku Microsoft Office. Hlavním cílem zavedení formátu bylo především zajištění splnění podmínek standardizačního procesu a úplná zpětná kompatibilita s doposud existujícími dokumenty, které uživatelé nadále používají, nebo je mají archivované, včetně plné podpory všech jejich rozšiřujících vlastností.[zdroj?!]
Seznam oficiální dokumentace ke specifikaci:
Specifikace je rozdělena do několika částí.
Popisuje vnitřní strukturu archívu ZIP, který obsahuje dokument. Základním prvkem jsou soubory s příponou .rels, které udržují informace o vztazích mezi ostatními soubory. Příkladem může být vztah mezi sešitem v tabulkovém kalkulátoru a listy, které sdružuje. Pomocí OPC lze vytvářet i vlastní formáty, protože se jedná o obecnou specifikaci. K obsahu dokumentu lze přistupovat dvěma způsoby – s využitím OPC nebo přes adresářovou strukturu archivu.
Struktura vychází ze schématu body – paragraph – run. Tělo dokumentu je děleno na odstavce (text, obrázek, tabulka, …) a tyto části jsou dělené na tzv. runs. Zjednodušeně řečeno, run nastavuje formátování informace. Všechny textové informace, které se mají zobrazit uživateli, jsou umístěny vždy v elementu <w:t>.
Dokument tabulkového kalkulátoru se nazývá sešit (workbook) a skládá se s listů (sheet). Sešit i listy jsou umístěny v samostatných souborech, typicky workbook.xml, sheet1.xml, sheet2.xml, … Velmi specifické je ukládání textové informace v tabulkách. Existují dva způsoby – inlinestring nebo sharedstring. Inlinestring ukládá informace přímo v buňce tabulky. Tento způsob je v podstatě identický s html. Sharedstring ukládá texty do samostatného souboru, který je sdílený pro všechny listy a každý textový obsah buňky je v něm unikátní. Buňky se pak odkazují na hodnotu v tomto seznamu.
Obsah dokumentu s prezentací se dělí na snímky (slide), jejich obsah a animace. Každý snímek je opět uložen v samostatném XML souboru. To samé platí např. i pro poznámky ke snímkům.
DrawingML popisuje vektorovou grafiku, která se používá v rámci WordProcessingML, SpreadsheetML a PresentationML. Kromě DrawingML se pro vektorovou grafiku používá i VML, které má být nahrazeno právě DrawingML.
Během standardizace u ISO došlo k několika podstatným změnám ve standardu ECMA-376 na základě požadavků národních standardizačních institutů. V České republice se problematikou standardizace dokumentů zabývá ÚNMZ. Nejdůležitější přijatou změnou bylo vydefinování dvou typů dokumentů, podobně jako u XHTML, Strict a Transitional. Verze Strict neobsahuje žádné elementy, které jsou zatížené zpětnou kompatibilitou směrem ke starším dokumentovým formátům. Verze Transitional pak může obsahovat elementy, které jsou pro zpětnou kompatibilitu nezbytné. Tyto verze byly schváleny jako samostatné části standardu ISO pod číslem ISO/IEC 29500. Ve standardu se přímo uvádí, že verze Transitional slouží jen pro přechodné období a nedoporučuje se používat pro vytváření dalších nových dokumentů.
Formát Office Open XML byl schválen v režimu fast-track Joint Technical Committee 1 ISO a IEC v dubnu 2008, což vyvolalo vlnu kontroverze a rozhořčení[1] s diskuzí o specifikaci a standardizačním procesu[2]a jeho neregulérností.[3]
OOXML byl rozporován z mnoha důvodů jako nepotřebný, protože softwaroví vývojáři mohli použít OpenDocument formát (ODF), který je méně komplikovaný a byl již v té době mezinárodním standardemInfoWorld, [1]
Společnost IBM (která podporovala OpenDocument formát, tj. ODF) opustila standardizační komisi s tím, že dovoluje dominantním společnostem, jako je společnost Microsoft, mít neoprávněný vliv. Společnost Microsoft byla ve zmíněném článku obviněna z kooptace procesu normalizace tím, že se opřela o jisté země, aby zajistila, že bude mít k dispozici dostatek hlasů v ISO pro schválení OOXML, ačkoli neuvádí přesně, kdo obvinil společnost Microsoft.
Ve stručnosti lze konstatovat, že firma Microsoft využila svého vlivu na to, aby schválení standardu OOXML proběhlo v režimu schvalování, který pro takovou situaci nebyl určen. Tento režim nebyl určen pro schválení proprietárního standardu jedné firmy, nýbrž pro rychlé schválení nějakého široce přijímaného nekontroverzního de-fakto standardu. Tím Microsoft dosáhl stavu, kdy se sice ke všem připomínkám musel vyjádřit, ale nemusel na ně nijak reagovat, ani je vypořádat a ani zapracovat do předkládaného standardu a po jeho vyjádření byl OOXML automaticky schválen (bez možnosti jakéhokoliv odvolání či nápravného opatření).
Richard Stallman z Free Software Foundation oznámil, že „Společnost Microsoft nabízí bezplatnou patentovou licenci pro OOXML za podmínek, které neumožňují bezplatné implementace“.[4]
Dále bylo předkladatelům nového návrh vyčítáno, že předlohou pro tento formát byl původně uzavřený formát pro dokumenty kancelářské balíku Microsoft Office. Obavy byly zejména ohledně technologické neutrality navrženého standardu. Jako vedlejším efekt potom byla možná nekompatibilita některých atributů (např. formátu data a času či barevných kódů) s již existujícími standardy ISO.
Mezi specifické odlišnosti jednotlivých formátu patří zejména tyto oblasti: