The UK government recently announced that they would use ISO approved document standard ODF for viewing and sharing government documents. It’s a very important move because it breaks Microsoft’s vendor lock where single US-based company ‘owns’ and ‘controls’ all the documents created on Earth. Microsoft is infamous for using unethical means to make it harder for other players to offer any kind of interoperability with their products which can threaten Microsoft’s market share.

So we reached out to Italo Vignoli of The Document Foundation, the organization responsible for developing LibreOffice which is a fork of OpenOffice, to understand the risks of using OOXML…

Swapnil Bhartiya: What are the practical and technological problems by using Microsoft’s products or the OOXML format (DOCX, XLSX and PPTX extensions).
Italo Vignoli: MS Office locks-in the user not only with proprietary formats but also with the OOXML pseudo-standard format. This is due to the way the supposedly standard format is handled by MS Office.

In fact, each version of MS Office since 2007 has a different and non standard implementation of OOXML, which is defined as “transitional” because it contains elements which are supposed to be deprecated at standard level, but are still there for compatibility reasons.

Although LibreOffice manages to read and write OOXML in a fairly appropriate way, it will be impossible to achieve a perfect interoperability because of these different non standard versions.
In addition to format incompatibilities, Microsoft – with OOXML – has introduced elements which may lead the user into producing a non interoperable document, such as the C-Fonts (for instance, Calibri and Cambria).

C-Fonts are the default choice for MS Office documents, but their license forbids users of other office suites to adopt them for any document (as you must own a Microsoft Office license).

So, a LibreOffice user who receives an OOXML document will be able to open it properly, but the document will not look the same because the C-Font will be automatically replaced by another font.

Most of the times, the LibreOffice user will think that the document does not look the same because of LibreOffice and not because Microsoft intentionally induced him into this “visual incompatibility”.

So, using MS Office with the native OOXML format is a problem for everyone, and the more people are using OOXML the more non standard documents will be around.

Swapnil: OOXML was approved “illegally” as an ISO standard, despite ODF being already a standard. How much of OOXML specifications are used in Microsoft’s own products?
Italo: I disagree with the statement that OOXML was approved “illegally”. On the other hand, it was approved according to a “fast track” process which was totally inadequate for such a standard, and this gave Microsoft the opportunity of using “politics” instead of the usual process (which could point out that two document standards are a nonsense).

Actually, Microsoft is using OOXML specifications, but is not using them consistently between software versions as the nature of the standard would request. So, we have OOXML 2007 Transitional, OOXML 2010 Transitional and OOXML 2013 Transitional, in addition to OOXML 2013 Strict (which is not the default choice of Microsoft Office 2013, and therefore non one is using it).

MS Office users are not aware of this situation, and are producing a “rainbow” of document versions which are a problem for interoperability.

Swapnil: Interoperability between OOXML files created with MS Office and other offerings whether it be LO, Google Docs or Calligra is a nightmare. Which is the reason of this non-interoperability?
Italo: LibreOffice is the free office suite which offers the best level of interoperability with OOXML documents, although it is not and will never be perfect. The issue is related to the non standard management of the OOXML standard by MS Office, and also to C-Fonts.

Of course, Microsoft has introduced C-Fonts when it had to replace the proprietary document formats with a standard one (although mis-managed) in order to artificially extend the interoperability problems to the visual appearance.

Microsoft is extremely efficient when it comes to lock-in users, even with creative solutions. Of course, lock-in does not foresee interoperability, which is the opposite concept. Because of this, any kind of interoperability coming from Microsoft will include a degree of “creative” lock-in.

Swapnil: Is Microsoft doing something to make it harder for other vendors to work with OOXML?
Italo: Microsoft is apparently trying to make it easier to work with OOXML. Recently, the company has released the OOXML SDK under the Apache License (no doubt that Microsoft will ever release something with a true open source license such as GPL, LGPL or MPL).

The real actions against interoperability, though, will never be easy to spot. Microsoft is way too smart to let the ecosystem suspect of a potential issue with document formats based on a specific obstacle built into the standard. For instance, it took quite a long time to spot the C-Font trick built into the last versions of MS Office, and most users – including corporate IT managers – are still completely unaware of it.


  1. So if I get it correctly, the main problem with OOXML is that the fonts Calibri and Cambria are used as defaults? So when I use a document template that has different default fonts, everything would be fine?

  2. I’ve been telling people this for years, they say “Office for Mac is not as good, what is wrong with Apple?” To which I respond, because that is the way MS wants it, Office was originally a Mac only product before MS released Windows. Do you really think that if they wanted it to be 100% compatible they couldn’t do it? Of course they could! They want you to stick with Windows and hesitate to switch. The C-font swap is definitely the most annoying thing of all, it totally destroys the formatting.

  3. […] People continue to face issues when they try to use LibreOffice for documents that were created using Microsoft Office. There can be a lot of reasons for things breaking between the two, but the problem is more cultural than technological. Small mistakes, such as using spaces instead of tabs to align text, can create interoperability issues. In an earlier interview, Vignoli told me about some dirty tricks that Microsoft uses to break interoperability. […]

  4. A minor note: Vignoli does not consider the Apache License to be truly open-source, as opposed to GPL, LGPL, and MPL. The Apache License really is open source, because open source is a development methodology and not a software category; the other three licenses are for free software, which is a political movement in addition to a software category.


Please enter your comment!
Please enter your name here