ODF versus OpenXML, maar waarom niet beide? Er bestaan plug-ins voor zowel Microsoft Office als OpenOffice.org/ StarOffice waarmee je beide formaten kunt gebruiken. Hoe uitwisselbaar zijn die ‘standaard’ open documentformaten nu echt?
Wij weten natuurlijk niet hoe het met jou zit, maar wellicht interesseert het je niet in wat voor bestandsformaat je je documenten bewaart. Het enige wat je interesseert is dat je ze zonder wijzigingen weer kunt inlezen en dat je ze desgewenst kunt uitwisselen met anderen, ongeacht met welke software en onder welk platform die anderen werken.
In die zin was het goed nieuws dat het ‘Open Document Format’ of ODF een ISO-standaard werd: dit garandeert dat een document opgeslagen als ODF inderdaad ingelezen én bewerkt kan worden door wat voor software dan ook die dit formaat ondersteunt. Microsoft zag dat niet zitten en probeerde de globale aanvaarding van ODF te stoppen door een eigen open documentformaat uit te brengen waarvan Microsoft sindsdien ook geprobeerd heeft dat te doen aanvaarden als een industriestandaard. Dat documentformaat van Microsoft heet OpenXML. Het is al aanvaard als standaard door de ECMA en dit wordt nu ook overwogen door de ISO.
ISO of niet?
Er is een versneld standaardisatieproces gestart, maar op dit moment is OpenXML nog altijd geen ISO-standaard en ODF wel. Nu is het natuurlijk heel makkelijk om partij te kiezen voor een formaat en duidelijke argumenten te geven waarom het ene formaat beter is dan het andere. Voor veel bedrijven en overheidsinstanties wordt die keuze bepaald door de ISO. Zij willen een ISO-standaard, punt uit. Dat is dan de enige reden om voor ODF te kiezen. Als OpenXML een ISO-standaard was geweest, zouden die bedrijven wellicht voor OpenXML gekozen hebben. We gaan niet proberen om te vertellen welk formaat je moet kiezen. Nee, we stellen gewoon vast dat beide formaten bestaan. En dat documenten in beide formaten bewaard en uitgewisseld worden. Dus willen we weten of ook alles daadwerkelijk uitwisselbaar is. Dat is tenslotte wat een gebruiker uiteindelijk interesseert. Ben je toch geïnteresseerd in een meer gedetailleerd overzicht van de voor- en nadelen van beide formaten, dan vind je daar meer informatie over in het kader (links).
Plug-ins
Microsoft Office ondersteunt standaard het ODF-formaat niet en alleen Office 2007 ondersteunt OpenXML. Voor alle Office-versies heb je een plugin nodig om ODF-documenten te kunnen lezen en schrijven. Om in oudere Office-versies OpenXML te kunnen gebruiken heb je ook een plug-in nodig. Ook voor Office 2004 voor de Apple Mac zijn er ODF- en OpenXML-plug-ins.
Kantoorsuites die ODF ondersteunen zoals OpenOffice.org vanaf versie 2.0 of KOffice vanaf versie 1.5, hebben standaard dan weer geen ondersteuning voor OpenXML aan boord (wel voor oudere Microsoft Office-formaten). De commerciële variant StarOffice 8 zou oorspronkelijk wel standaard ondersteuning van OpenXML hebben gehad, maar dat is uiteindelijk niet doorgegaan en StarOffice 8 kan dus standaard geen OpenXML-documenten lezen of schrijven. Om OpenXML te kunnen lezen en schrijven heb je een plug-in nodig voor OpenOffice.org, KOffice en StarOffice. Overigens zit de concurrentie van Microsoft en Sun ook niet stil. Corel heeft aangekondigd dat de volgende versie van WordPerfect Suite zowel ODF als OpenXML zal ondersteunen. Die versie is er nog niet en hebben we dus niet kunnen testen.
Na installatie van deze plug-ins in de kantoorsuite naar keuze zou je in theorie zowel ODF als OpenXML moeten kunnen lezen en schrijven. Maar is dat ook echt het geval?
Testmethode
Als test gebruiken we een tekstverwerkingsdocument en een spreadsheet. Het tekstverwerkingsbestand is een boek van meer dan vijfhonderd pagina’s met diverse lay-outs (kleuren, fonts), indices en voetnoten. De spreadsheet is een grote tabel met weinig lay-out maar heel veel getallen en heel veel formules. Van beide documenten maakten we een basisversie in beide open formaten. Daarna proberen we telkens de OpenXML- en ODF-versie in te lezen met de pakketten die deze formaten via een plug-in ondersteunen. We schrijven ze ook weer weg, zowel in het eigen open formaat als in het ‘vreemde’ open formaat, op zoek naar conversieproblemen.
1. Microsoft Office 2000, Office XP, Office 2003, Office 2004 voor de Mac
OpenXML: Microsoft heeft een converter beschikbaar voor oudere Office-pakketten zodat die OpenXML kunnen inlezen en wegschrijven: het Office Compatibility Pack 2007. Hoewel Office 2003 zelf ook XML als bestandsformaat gebruikt, is dat niet hetzelfde als OpenXML en dus heb je ook voor Office 2003 een converter nodig. Deze converter is uitsluitend Engelstalig en kan als plug-in geïntegreerd in Office draaien vanaf Office XP. Voor Office 97 en Office 2000 kun je de converter uitsluitend als alleenstaand hulpprogramma gebruiken om de OpenXML-bestanden eerst te converteren naar systeemeigen Office-bestanden en naderhand die systeemeigen bestanden weer te converteren naar OpenXML. Dat is niet echt gebruiksvriendelijk, maar de functionaliteit is er dan tenminste.
ODF: Microsoft en Sun hebben allebei een plug-in voor Office 2003 uitgebracht om ODF-documenten te kunnen verwerken. Eigenlijk heeft Microsoft zelf niets geprogrammeerd aan die plug-in (Open XML Translator 1.0, zie http://sourceforge.net/projects/odf-converter), maar het bedrijf heeft wel meebetaald aan de ontwikkeling ervan. Het programmeerwerk werd gedaan door het Franse bedrijf Cleverage. De plugin werkt momenteel alleen vanaf Word XP. Excel en Powerpoint zullen in de nabije toekomst ondersteund worden. Het eerder vermelde Compatibility Pack voor oudere Office-versies moet overigens al geïnstalleerd zijn om de Open XML Translator te kunnen gebruiken.
De plug-in van Sun werkt momenteel alleen voor Word 2003. Ondersteuning voor Excel en Powerpoint en Office 2007 zouden vanaf april beschikbaar komen. Office 97 en Office 2000 worden niet ondersteund.
Noch Sun, noch Microsoft ondersteunen ODF voor Office voor de Mac.
Test: De ODF-spreadsheet kunnen we niet inlezen omdat de plug-ins dat niet ondersteunen. Het ODF-boek wordt niet correct ingelezen met de plug-in van Sun. De lay-out is niet zoals die van het origineel. Het weer wegschrijven van dit boek met diezelfde ODF plug-in laat ons achter met een bestand dat qua tekstuele inhoud nog wel correct is, maar dat naar onze smaak te veel wijzigingen bevat in de lay-out, de voetnoten en de index. Als we de Sun plug-in verwijderen, blijkt bovendien dat Windows XP compleet instabiel geworden is en voortdurend crasht. Sun heeft duidelijk nog heel wat werk voor de boeg. Voor de duidelijkheid: we hebben de Sun plug-in alleen maar geprobeerd nadat we eerst het Microsoft Compatibility Pack 2007 geïnstalleerd hadden. Het zou dus kunnen dat de vastgestelde instabiliteit een gevolg was van die combinatie. Sun noemt de momenteel downloadbare plug-in een testversie: de uiteindelijke versie zou in juni klaar zijn.
Met de door Microsoft gesponsorde plug-in van Cleverage kan het ODF-boek correct ingelezen worden en als we het weer wegschrijven kan OpenOffice.org 2.1 het ook probleemloos weer inlezen. De plug-in werkt overigens niet rechtstreeks met ODF; het ODF-bestand wordt ingelezen en geconverteerd naar een read-only DOCX-bestand (OpenXML) en als je het weer wilt wegschrijven moet je het eerst schrijven naar een tussenformaat van Word of OpenXML en dan bewaren als ODF (wat weer een conversie vereist). Dat is dus nogal omslachtig, maar het werkt wel.
De OpenXML-bestanden (boek en spreadsheet) kunnen allebei zonder problemen ingelezen en weer weggeschreven worden, maar dat hadden we ook wel verwacht. In beide gevallen duurt het inlezen en bewaren van ODF-documenten flink wat langer dan bij OpenXML-documenten.
2. Microsoft Office 2007
OpenXML: Office 2007 ondersteunt standaard OpenXML. Je hebt geen aparte plug-ins nodig.
ODF: Dezelfde eerder genoemde plug-ins van Microsoft en Sun werken ook voor Word 2007. Excel 2007 en PowerPoint 2007 worden nog niet ondersteund, maar dat is wel aangekondigd.
Test: De ODF-spreadsheet kan niet ingelezen worden aangezien de plug-ins van Microsoft en van Sun dit nog niet ondersteunen.
Het ODF-tekstverwerkingsbestand (het boek) kan prima ingelezen worden met de door Microsoft gesponsorde plug-in van Cleverage. Ook na wegschrijven (door voortdurende conversies naar en van OpenXML) ziet het er prima uit als we het weer inlezen in OpenOffice.org. Met de plug-in van Sun lukt dit alleen met fouten in de documentlay-out.
OpenOffice.org 2.1
OpenXML: Novell heeft een gratis downloadbare OpenXML-converter. Deze plug-in is alleen beschikbaar voor OpenOffice 2.0.4 of hoger en wel de Novell-editie, niet voor oudere of andere versies. Omdat OpenOffice.org tenslotte gratis is, hebben we geen verder onderzoek gedaan naar plug-ins of conversiegereedschappen voor oudere versies. Voor andere versies dan die van Novell is ons geen OpenXML-plug-in bekend. OpenOffice 2.0.4 Novell Edition voor Windows kun je gratis downloaden bij Novell. Voor Linux zit hij standaard in de Novell SuSE Linux-distributies.
ODF: dit pakket ondersteunt standaard ODF, je hebt geen aparte plug-ins nodig.
Test: OpenOffice 2.0.4 Novell Edition kan OpenXML-bestanden van Microsoft Office 2007 prima inlezen en ook weer wegschrijven, maar dat geldt helaas niet voor de algemene OpenOffice.org versies en met name OpenOffice.org 2.1. Die kan momenteel gewoon niet overweg met OpenXML. Het installeren van de Novell plug-in op een niet-Novell OpenOffice.org variant levert een foutmelding op en zelfs als de installatie lijkt te lukken, werkt het achteraf niet.
Sun StarOffice 8
OpenXML: StarOffice ondersteunt geen OpenXML en er bestaan momenteel ook geen plug-ins voor. Sun werkt er wel aan (zie http://blogs.sun.com/GullFOSS/entry/importing_the_beast), maar op dit moment heb je dus pech wat OpenXML betreft.
ODF: dit pakket ondersteunt standaard ODF, je hebt dus geen aparte plug-ins nodig. ODF is het systeemeigen formaat van StarOffice 8.
Test: niet van toepassing, ODF is immers het eigen formaat en OpenXML wordt (nog) niet ondersteund.
KOffice 1.6.2
OpenXML: er is ons geen converter, filter of plug-in voor KOffice bekend.
ODF: dit is het standaard systeemeigen formaat van KOffice.
Test: Omdat KOffice alleen onder Linux met KDE bestaat en geen OpenXML-conversie ondersteunt, hebben we dit pakket niet verder getest.
Hoe open is open?
Het is op dit moment nog niet mogelijk ongestoord ODF- en OpenXML-documenten uit te wisselen tussen alle mogelijke kantoorsuites. OpenOffice.org blijkt standaard geen ondersteuning voor OpenXML te hebben, tenzij je de Novell-editie gebruikt: dan is er volledige en goedwerkende OpenXML-ondersteuning, tenminste voor teksten en rekenbladen. StarOffice 8 van Sun heeft ook geen OpenXML-ondersteuning en er bestaan nog geen plug-ins voor, maar Sun werkt er wel aan. Op dit moment kun je OpenXML met de open source kantoorsuites dus niet behoorlijk verwerken, tenzij je de Novell-editie van OpenOffice voor Windows gebruikt.
Bij Microsoft Office bestaan voor alle versies conversiegereedschappen, add-ins of plug-ins om ODF te ondersteunen, maar vaak zijn die beperkt tot ondersteuning voor alleen Word. ODF-ondersteuning voor Excel en Powerpoint komt later dit jaar uit. Die hebben we dus nog niet kunnen testen. De .odt-ondersteuning blijkt met de plug-in van Sun nogal wat steken te laten vallen en met de door Microsoft gesponsorde plug-in verlies je heel veel tijd omdat je voortdurend heen en weer moet converteren tussen OpenXML en ODF, maar het werkt wel.
Als de organisatie verplicht ODF moet ondersteunen, is op dit moment OpenOffice.org of StarOffice de enige keuze voor volwaardig en betrouwbaar gebruik voor teksten en rekenbladen. Gaat het alleen om ODF-tekstdocumenten, dan kan Microsoft Word XP of hoger met de door Microsoft gesponsorde ODF-add-in ook handig zijn. Als volledige ondersteuning van alle documenttypes van een kantoorsuite pas vanaf 2008 hoeft, kun je mogelijk ook werken met Microsoft Office 2003 of hoger met de dan hopelijk aangevulde ODF-converter. Voor OpenXML kun je kiezen tussen sofware van Microsoft of de OpenOffice-editie van Novell.
Conclusie
ODF blijkt momenteel het best en meest algemeen ondersteunde open document formaat te zijn. De uitwisselbaarheid is momenteel sowieso beperkt tot teksten en rekenbladen. Er is dus nog wel wat werk aan de winkel voordat de universele uitwisselbaarheid van documenten een feit is.
De kern
* ODF is een ISO-standaard en mogelijk ben je dus verplicht die te ondersteunen. OpenXML is geen ISO-standaard, maar Microsoft probeert er wel een van te maken.
* ODF volledig ondersteunen gaat op dit moment alleen met OpenOffice.org of StarOffice, de plug-in voor Microsoft Office is nog onvolledig (alleen Word is af). En OpenXML ondersteunt je het volledigst met – uiteraard – Microsoft Office of met de Novell-editie van OpenOffice.
ODF – Oasis open document format
ODF is een documentbestandsformaat voor elektronische documenten zoals tekstverwerkingsdocumenten, rekentabellen, kaarten en grafieken, presentaties en kortom alles wat je normaal aanmaakt in een kantoorsuite. Het is zijn leven begonnen als het oorspronkelijke bestandsformaat van de gratis kantoorsuite OpenOffice.org en werd door een technisch comité opgericht door het consortium ‘Organization for the Advancement of Structured Information Standards’ of kortweg OASIS uitgewerkt. OpenDocument is sinds vorig jaar een ISO- en IEC-internationale standaard: ISO/IEC 26300:2006.
Omdat de specificatie vrij beschikbaar en implementeerbaar is, komt OpenDocument tegemoet aan de gangbare definitie van een ‘open standaard’.
De basis van ODF is XML en een ODF-bestand kan zo’n XML-document zijn, maar ook een verzameling documenten in een zip-bestand. ODF kent de volgende bestandstypes:
.odt: ODF tekst – tekstverwerkingsdocument
.ods: ODF spreadsheet – rekenblad(en)document
.odp: ODF presentaties
.odg: ODF graphics – grafisch document
.odf: ODF formules – wiskundige vergelijkingen
Voordelen
ISO-standaard!
vrij uitwisselbaar
vrij implementeerbaar
volledig gratis, geen licentie- of patentverplichtingen of -beperkingen, Sun belooft eventuele toekomstige inbreuken op haar patenten niet te vervolgen
Nadelen
.odf gebruikt MathML voor wiskundige formules terwijl bijna de hele wetenschappelijke wereld met TeX werkt.
er is nog geen voorgedefinieerde spreadsheetformuletaal, daardoor zou je dus .ods bestanden kunnen tegenkomen met formules die de applicatie niet begrijpt. Er wordt wel aan gewerkt om een spreadsheetformuletaal toe te voegen aan de standaard.
de ISO-standaard van ODF ondersteunt geen tabellen in presentaties, maar de huidige OpenOffice-implementatie van ODF ondersteunt dat wel. Het is de bedoeling dat dit ook toegevoegd wordt aan de standaard.
er is geen macrotaal gedefinieerd in ODF – er is discussie over of dit een nadeel is of niet; geen macrotaal betekent immers geen macrovirussen of andere malware die daarvan misbruik kan maken, en sommigen zijn van mening dat macro’s en scripting best systeemspecifiek geïmplementeerd worden.
OpenXML
Microsoft definieerde OpenXML op basis van het xml-bestandsformaat ontworpen voor Office 2003. OpenXML is daar dan ook achterwaarts compatibel mee. Omdat Microsoft vindt dat ODF onvoldoende specificaties en definities aan boord heeft voor alle functionaliteiten van Microsoft Office, kon en wou het ODF niet als standaard voor Office overnemen. Microsoft voelde zich dan ook genoodzaakt een eigen standaard te ontwikkelen die wel alle benodigde functionaliteit ondersteunt. Dat is dan OpenXML geworden en Office 2007 gebruikt dat als systeemeigen bestandsformaat. Ook OpenXML is in feite een zip-bestand met daarin XML en andere documenttypes. Zelfs oudere binaire Microsoft Office bestanden mogen in zo’n OpenXML-container voorkomen. Dat heeft meteen geleid tot heel wat kritiek, omdat openheid en overdraagbaarheid natuurlijk niet meer gegarandeerd zijn als gesloten bestandsformaten ingesloten mogen worden in een OpenXML document. OpenXML kent de volgende hoofdbestandstypes:
.docx – OpenXML document (Word)
.xlsx – OpenXML spreadsheet (Excel)
.pptx – OpenXML presentation (PowerPoint)
Voordelen
– ECMA-standaard
– vrij uitwisselbaar
– vrij implementeerbaar mits naleving Microsoft licentie
– volledig gratis, Microsoft belooft patentinbreuken niet te vervolgenOpenXML bevat spreadsheetformuletaalspecificatie (namelijk die van Excel)OpenXML kan tabellen in presentaties aan
Nadelen
– momenteel geen ISO-standaard
– uitwisselbaarheid kan beperkt worden door insluiting bedrijfseigen bestandsformaten
– eventuele licentie- of patentspecifieke beperkingen mogelijk
– datumformaat gebruikt in OpenXML is incompatibel met ISO 8601
– taalspecificatie in OpenXML is incompatibel met ISO 639