top | item 39667913

(no title)

thomaszander | 2 years ago

Hi,

co-author of the ODF spec (2006 ISO) here, I also got involved via NLNet to work with my local standards office to improve OOXML.

The OOXML spec was offered to the ISO standard along an unusual path, a fast standardization lane. Where there was no option for any of the people reviewing it to actually change anything. It was rubber-stamped in other words.

That fact alone doesn't mean it is a bad, but it is a bit of a red flag. The fact is, it is a really bad specification. It is a full 7000 pages long with lots of conflicting details. On top of that it is full of references like "this works like wordperfect version-n". While references are useful in specifications, they need to be to existing open standards to be meaningful. Wordperfect has never standardized its format, so referring to it is meaningless.

To implement a competing application that can use this format you'd not be able to do that from this specification alone. Next to that it is so massive that it is essentially an undertaking that makes no sense. Compare it to ODF which is 1/10th of the size. Has a lot of reuse of concepts and was written under OASIS, a standards organization, unlike the OOXML spec which was written by Microsoft and the full 7000 pages dropped on the world.

I stopped looking at the OOXML stuff for some years, so the next part may be outdated. I noticed that after MS got this ratified by OSI, and thus they dodged the threat of law requiring governments to switch to ODF, they never did an update to the spec even though the applications have seen plenty of new features.

discuss

order

steve1977|2 years ago

Thanks for the comment. I could imagine that some of the points you mentioned might be related to Microsofts focus on backward compatibility. Some of the points certainly might also have less noble reasons.

rstuart4133|2 years ago

So less noble that the Swedes invalided their own yes vote on the acceptance of OOXML once they discovered how it was obtained: http://www.groklaw.net/article.php?story=20070830155109351

Quoting the article:

   "Microsoft Corp. admitted Wednesday that an employee at its Swedish
   subsidiary offered monetary compensation to partners for voting in
   favor of the Office Open XML document format's approval as an ISO standard."

tzs|2 years ago

> It is a full 7000 pages long with lots of conflicting details > [...] > Compare it to ODF which is 1/10th of the size

A few things worth noting. First, the size comparison was done by counting pages in the PDFs of the two from their respective standards committees. The OOXML PDF used something like twice the line spacing of the ODF PDF, and may have also had a larger font size. Print the two with the same settings and OOXML still was a lot bigger.

Second, ODF deferred some important things to be done in later revisions of the spec. For example spreadsheet formulas. OOXML on the other hand had hundreds of pages covering spreadsheet formulas, including detailed mathematical definitions and explanations for functions.

> On top of that it is full of references like "this works like wordperfect version-n". While references are useful in specifications, they need to be to existing open standards to be meaningful. Wordperfect has never standardized its format, so referring to it is meaningless.

I believe those were in a draft but taken out in the final spec. Also, I think you might be overlooking what those references were meant to be used for.

There were lots of organizations with lots of documents that were created in older proprietary products like WordPerfect, Lotus, etc, and many of those organizations had reverse engineered or partly reverse engineered those formats and built toolchains around them.

Let's say such an organization would like to switch to ODF. They would have to rewrite their tools but they are willing to do that because an XML format will make future development easier. They will also have to convert their existing documents to ODF, which they can do.

But there are things in those documents that must work like they worked in WordPerfect. For example if they print an old document it may be essential that it has the same line breaks that it did when WordPerfect printed it.

They accept that StarOffice or OpenOffice won't be able to do WordPerfect line breaks but that's fine. Their toolchain can handle document printing. And for new documents that they create in StarOffice or OpenOffice using whatever line breaks those programs use is fine--it is just dealing with legacy documents that requires matching what those old programs did.

What they want, then, is when using ODF as a storage format for their legacy documents for some way to mark in the ODF that the document needs WordPerfect line breaks.

Now imagine two different organizations both are doing this. So they both come up with some way to add to their ODF files that some text needs WordPerfect line breaks. But one of them calls it "WP6LineBreak" and one calls it "LB_LIKE_WP6".

Wouldn't it be nicer if all the organizations that are adding a "Use WordPerfect 6 line break" indicator to their converted-to-ODF legacy files did it the same way? It would make it easier if they ever exchanged legacy files, and it would be less confusing to the rest of is if one of these files ever got into the wild.

I remember some people brought up adding support to ODF for legacy documents early in ODF standardization but Sun was not interested. Their attitude generally was ODF was going to support everything StarOffice needed and nothing more.

Microsoft on the other hand did want to support people using OOXML for legacy document storage, and so they made a big list of the various things from the most popular earlier word processors and spreadsheets that they thought people would be wanting to extend OOXML to store, and reserved some names and markup for them.

They were quite clear that these were not meant to be used by general purpose OOXML word processors or spreadsheets. They were just for people in the scenario described above.