Office Open XML (OOXML) vs Open Document Format (ODF)
ODF versus OOXML has been a widely debated subject of late. What does this mean? Why does it matter to us? What is likely to happen? This article attempts to demystify these points.
Standardization and protocols : Computer companies like to develop their own protocols for anything and everything. This creates many problems. The most important of those problems is that applications become incompatible.
In other words, if application A developed by company X wants to send some data to application B developed by company Y, how should they communicate? Should application A prepare its output in text format? If yes, how should it represent the contents? Should there be some headers, some footers, etc? If yes, what should be their names? What should be the lengths of the individual records in the contents? What names should the contents and sub-contents etc have? Well, we can imagine a number of problems, as depicted in the diagram below. Here, we can see that application A wants to represent information about a customer’s account in a particular format, which application B is not ready to receive!
We know that this is where the Extensible Markup Language (XML) comes to our rescue. XML allows applications A and B to define or agree on a common set of tags, which both applications must agree to use and understand. Perhaps a layer of software (usually called as a wrapper) needs to convert the outgoing data of application A into XML, which gets sent to application B. Similar wrapper a application B reads the data as XML, and transforms it into the internal format that application B expects.
However, the next question that emerges is, which XML tags, in what order, and using which rules should be used? For example, should the account number be represented as an Account_Number tag, or as Acc_No tag, and should it be numeric, of what length, with what ranges of values allowed, and so on?Imagine something similar happening when computer applications store data about a simple text document that we create, or a spreadsheet that we use for computations, or a presentation that we make for our management, and so on. How should the document be internally stored? How should it be ported to another platform or another application? Should it be compatible with other formats? A number of such questions must be answered.
It is in this context that the great Andrew Tanenbaum says, “The nice thing about standards is that there are so many of them”. Well, we cannot agree more!
ODF and OOXML : This brings us to the discussion of ODF and OOXML
- ODF – Open Document Format (ODF) is an XML-based file format (i.e. specifications) for various kinds of electronic documents, such as word processing documents, spreadsheets, presentations, charts, and so on. Originally developed by Sun MicroSystems, ODF it was enhanced by the OASIS consortium, and is already an ISO standard. Open Office implements it. It is an open standard, which means that it can be freely used and implemented by anyone. It is intended to be an alternative to proprietary formats, such as the ones used by Microsoft in its Office suite of products.
- OOXML – Open Office XML (OOXML), also called as OpenXML is also an XML-based file format for word processing documents, spreadsheets, presentations, charts, and so on. It differs in syntax and grammar from ODF. However, the basic intention is the same. The original reason behind the development of OOXML was to replace the earlier Microsoft Office file format specifications, which were binary.
Earlier, the file formats used by Microsoft Office applications were binary and proprietary, and therefore incompatible. With OOXML, Microsoft attempted to change all that. Microsoft has handed over the specifications to the ECMA body, and is hoping that OOXML becomes an ISO standard as well. This is where there is a big fight going on. Opponents allege that a standard developed by a company that has a huge track record of creating proprietary software and using so-called arm-twisting techniques should not be allowed to standardize a file format that may eventually become the worldwide standard for document creation and exchange.
Another argument on the debate is that we can have two incompatible standard co-existing, i.e. both ODF and OOXML. Because their syntaxes and efficiency as well differ, let people choose what they want. But the counter-argument that quickly appears is that this is quite unnecessary, given that both standards deal with electronic documents of similar nature.While the verdict would soon be out, it is surely an interesting debate to watch!
About the author: Atul Kahate is Head – Technology Practice, PrimeSourcing (the The Global IT Services business from i-flex solutions limited). He has authored 16 books on Information Technology, 2 on cricket, and over 1500 articles on both of these in various newspapers/journals. He can be reached at akahate @ gmail . com.
Updates:
* ISO Approves OOXML
* Office Open XML is an ISO standard: Now what?
* Ubuntu’s Shuttleworth blames ISO for OOXML’s win
* Microsoft claims victory in ISO struggle over OOXML
* Norway asks to suspend its ‘Yes’ vote on OOXML
* OOXML results in, but ISO delays announcement
Related:
* Xml Security using Xml Encryption and Xml Digital Signature
* Setting up Secure Web Authentication in Tomcat
* Creating a new Google Web Toolkit (GWT) application
Its very nice book written by Karthik Gurumurthy. I am implementing my project code using that book. It really saves 60% of development time. Thanks a lot for apache wicket framework team.