Slashdot Mirror


Office 2007SP2 ODF Interoperability Very Bad

David Gerard writes "Microsoft Office 2007 SP2 claims support for ODF 1.1. With hard work and careful thinking, they have successfully achieved technical compliance but zero interoperability! MSO 2007sp2 won't read ODF 1.1 from any other existing application, and its ODF is only readable by the CleverAge plugin. The post goes into detail as to how it manages this so thoroughly."

21 of 627 comments (clear)

  1. Sun ODF plugin for Microsoft Office by MrKaos · · Score: 5, Informative
    --
    My ism, it's full of beliefs.
  2. Re:Everybody pile on Microsoft... by drinkypoo · · Score: 4, Informative

    this is how

    Kind of looks like the whole thing was a farce to begin with given how they created a bad spec and then went on to support a worse one before imploding.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  3. Re:They also claim Windows supports Posix by drinkypoo · · Score: 5, Informative

    Microsoft Windows is POSIX.1 compliant, which will not help anyone today but which is nonetheless true.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  4. The problem is formulas. by characterZer0 · · Score: 4, Informative

    ODF does not specify the a language for formulas. Everybody but MS uses one language, MS uses another. Of course there are incompatibilities.

    Why did ODF not specify a spreadsheet formula language?

    --
    Go green: turn off your refrigerator.
    1. Re:The problem is formulas. by Anonymous Coward · · Score: 4, Informative

      Because it's bloody hard to do.

      Microsoft's spreadsheet formula language in OOXML is actually a copy-and-paste job from the Excel help files. It doesn't provide nearly enough information to re-implement. It was only added as an afterthought, when Microsoft started complaining that ODF didn't have a spec for spreadsheet formulas, made a big deal about it, and then realised that OOXML didn't either.

      ODF does have a formula language specification. It specifies something like 400 functions in precise detail, loosely based on what OOo, Gnumeric, and others (including Excel) already do. This has been a work-in-progress since 2005 (before Microsoft started complaining about ODF), and is basically finished (for now). It's to be included in OpenDocument 1.2 (the next version), but most other OpenDocument-capable spreadsheet apps already use these formula specifications on OpenDocument 1.1 documents.

      Microsoft just chose to ignore it, and roll their own. As usual.

  5. Re:What did we expect? by makomk · · Score: 4, Informative

    And the problem in this case is the missing formula specification. It's not in ODF 1.1, and ODF 1.2 is still a draft. While this is Microsoft and we all "know" that this was intentional, ODF is what should be fixed first. We were all bashing OOXML specifications, but ODF 1.1's far from perfect, as we can see.

    That is, curiously, not quite true. ODF 1.1 doesn't fully specify formulas, but it does specify the general syntax that should be used for them, and Microsoft seems to have ignored this. (Also, in practice, the major spreadsheets are quite similar in terms of what expressions they accept in formulas. This makes it relatively simple to convert between MS Office formulas and OpenOffice.org ones, which are what most ODF-based apps use.)

  6. Re:What did we expect? by EvilAlphonso · · Score: 5, Informative

    nobody would have believed that Microsoft was the good guys.

    Actually there was a time when Microsoft was hailed as the white knight in the shiny armor freeing us from the evil IBM empire.

  7. Re:They also claim Windows supports Posix by OrangeTide · · Score: 5, Informative

    Well if you just go for the basic level of posix support, then yes it does support it. So does 100 other OSes, including weird embedded OSes that can't even run executables. Everything has to be compiled in, but they are "POSIX" too.

    To be far UNIX Services for Windows is pretty decent and gives you a very complete POSIX environment on Windows.

    --
    “Common sense is not so common.” — Voltaire
  8. Re:What did we expect? by Inner_Child · · Score: 3, Informative

    I use Windows for compatibility, but open-source for everything else: VLC, WinAmp, OpenOffice, Utorrent, et cetera.

    I don't think you understand what open source is. Winamp and uTorrent are not open source.

    --
    Today is red jello day - all workers must eat all of their red jello. Failure to comply will result in five demerits.
  9. Re:Really? by weicco · · Score: 4, Informative

    Interesting. According the article referenced in the Wikipedia even OpenOffice and KOffice don't get along.

    --
    You don't know what you don't know.
  10. Re:What did we expect? by mR.bRiGhTsId3 · · Score: 4, Informative

    People like to continue to whine about how MS must be evil. As you said, ODF 1.2 isn't finished. Who wants to target a moving standard? On the other hand, I've found that SP2's ODT support is quite good, to the point that I find I no longer need OpenOffice to open older files I have in that format. Even some complicated ones with equations and images.

  11. Re:What did we expect? by mhesd · · Score: 5, Informative

    From the article:

    The irony here is that the formula language used by OpenOffice (and by other vendors) is based on that used by Excel, which itself was not fully documented when OpenOffice implemented it. So an argument, by Microsoft, not to support that language because it is not documented is rather hypocritical. Excel supports 1-2-3 files and formulas and legacy Excel versions (back to Excel 4.0) neither of which have standardized formula languages. Why are these supported? Also, the fact that the Microsoft/CleverAge add-in correctly reads and writes the legacy ODF formula syntax shows not only that it can be done, but that Microsoft already has the code to do it. The inexplicably thing is why that code never made it into Excel 2007 SP2.

  12. Re:Bullshit by Palestrina · · Score: 3, Informative

    The point is that Microsoft has already reverse-engineered this legacy OpenOffice formula syntax. They did it in their ODF Add-in for Office. So it is already there and already works. They could support that syntax, be compatible with other ODF spreadsheets (and their own ODF Add-in) and still be 100% conformant to the ODF standard.

  13. Re:What did we expect? by yo_tuco · · Score: 4, Informative

    "...1 second or so that it took to open the "Save file as" dialog..."

    It takes 2 seconds for a menu to appear on my work XP laptop when I click the Start button. It takes forever to open a Word document. Virus scanning is now part of the Office experience and can't be disregarded. And this is on a more modern computer. What is your point.
     

  14. Re:Agreed ... interoperability harms Microsoft by Narpak · · Score: 4, Informative
    From the First of January 2009 all Norwegian Government or Education related sites and services are using the "Open Formats" ODF, PDF and HTML. Also all schools and government institutions are required to accept documents submitted in ODF.

    Åpne dokumentstandarder blir obligatoriske i staten.
    My rough translation from Norwegian:

    - Norway has so far lacked a policy regarding the area of software. This have now changed. This Cabinet has decided that IT-development in the public sector shall be based upon Open Standards. In the future we will not accept that State activities locks users of public information to Locked Formats. - Heidi Grande Røys (Minister of Government Administration and Reform).

    Microsoft might play their games to hinder development as much as they can, but at least in this country the turn towards Open Standards seems inevitable.

  15. Excel, not Word by InvisiBill · · Score: 3, Informative

    If you RTFA (yeah, yeah, I know...), the problem is with spreadsheet formulas.

  16. Re:What did we expect? by Locutus · · Score: 3, Informative

    Wanna keep making money? Put Linux on all your computers and migrate the currently installed Windows XP into virtual machines. You've not instantly moved into the 21st century with a far more secure and stable platform to build on and have backwards compatibility.

    This pretty much what Microsoft is saying you should do with Windows 7/Vista SP3 except they seem to think the bloated mess called Vista is a solid base. In reality, it's not a solid base, it's a new treadmill and has the same old billing meter tied to it and feeding your profits back to One Microsoft Way.

    Get the facts straight. IMO.

    LoB

    --
    "Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
  17. Re:What did we expect? by Locutus · · Score: 5, Informative

    Actually there was a time when Microsoft was hailed as the white knight in the shiny armor freeing us from the evil IBM empire.

    I've heard this said, but somehow I managed to miss it. I started work in the industry in 87, and had first encountered microsoft probably in 84. Outside of ziff-davis style vanity press, everything about MS was about what crap they were technically and ethically. The white knights were DEC, BSD, Borland, Commodore, ...

    It was pretty obvious to many techies by the early 90s that Microsoft software was crap. The printed press was one of its tools and perpetuated the myth that companies would be better off with Microsoft. By 1995 it was getting out to a more general crowd how bad Microsoft was but these people still required having their eyes and minds open. Considering where they are today, it's obvious many are still pretty ignorant to their business practices and technology in general. By 1995, even the author, Douglas Adams saw this:

    Microsofthttp://www.gksoft.com/a/fun/dna-on-microsoft.html

    Here's a quote from the end of that short article:
    "The idea that Bill Gates has appeared like a knight in shining armour to lead all his customers out of a mire of technological chaos neatly ignores the fact that it was he who by peddling second-hand, second-rate technology, led them all into it in the first place."

    Over $200 million in marketing spent on Window 95 and about the same amount the following year pushing NT as _the_ server OS suckered in enough to seal their position in the market. That seal is leaking now but unfortunately, the general population of computer users and IT execs are mostly just as naive as they were in the early 1990s. It's the OEM's who are driving the market now because of very low margins and the high relative cost of Microsoft software.

    LoB

    --
    "Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
  18. No, that's not it. by InvisiBill · · Score: 3, Informative

    The problem isn't that you can't open a Word 2007 ODF document in another ODF compliant program, it's that it refuses to open to other program's ODF documents.

    If you actually read the article, you'll find that Google, KSpread, Symphony, OpenOffice, and the Sun plugin are all unable to open documents created in Excel 2007. The issue here is not that it's one way, it's that the MS interpretation is different from what everyone else uses (though the actual specification leaves it open). And it's also about spreadsheets (Excel), not word-processor documents (Word).

  19. The Microsoft formulas aren't actually conformant by Anonymous Coward · · Score: 5, Informative

    Microsoft's supposed ODF 1.1 spreadsheet output is not compliant with the ODF 1.1 specification.

    From 8.1.3 (emphasis mine):

    Typically, the formula itself begins with an equal (=) sign and can include the following components:
    [...]
    Addresses of cells that contain numbers. The addresses can be relative or absolute, see section 8.3.1. Addresses in formulas start with a "[" and end with a "]".

    From 8.3.1 Referencing Table Cells (emphasis mine):

    For example, in a table with the name SampleTable the cell in column 34 and row 16 is referenced by the cell address SampleTable.AH16. In some cases it is not necessary to provide the name of the table. However, the dot must be present. When the table name is not required, the address in the previous example is .AH16.

    Now look at a Microsoft formula in their ODF 1.1 spreadsheets. You'll see a formula attribute value of "msoxl:=B4-B3". For that to be correct per the ODF 1.1 specification, that should be "msoxl:=[.B4]-[.B3]". Compare this to the OpenOffice.org and OpenFormula syntax:

    msoxl:=[.B4]-[.B3]
      oooc:=[.B4]-[.B3]
          of:=[.B4]-[.B3]

    Ignoring the prefix, they're identical. Furthermore, the formula functions used by OpenOffice.org are generally based on the functions in Excel to begin with (such as "TODAY", for example), so I can only conclude that Microsoft is intentionally sabotaging interoperability to keep people from using ODF while still claiming conformance.

  20. Re:This is a REQUIREMENT so that Excel can be read by mrchaotica · · Score: 4, Informative

    It would be silly to alter them, as this would risk breaking them, and there really is nothing wrong with Microsoft's formulas.

    On the contrary, it does make sense to alter them because there is something wrong with Microsoft's formulas. For example, consider the MAX() function in Excel:

    MAX(2.5,6.4,2.1,5.8)

    Now consider the OO.o (and forthcoming ODF 1.2 standard) equivalent:

    MAX(2.5;6.4;2.1;5.8)

    OO.o uses semicolons instead of commas to separate parameters; so what? Well, let's what would happen if you were European, and tried to do the same thing in Excel:

    MAX(2,5,6,4,2,1,5,8)

    Uh-oh! Now, since Europeans use commas instead of periods to indicate decimals, Excel suddenly thinks that there are 8 integer parameters instead of 4 decimal ones! Excel is wrong! In contrast, here's how it looks in OO.o:

    MAX(2,5;6,4;2,1;5,8)

    Hey, whaddya know: still four decimal numbers! It works!

    But that's just the tip of the iceberg. If you read previous posts in the linked blog, the guy points out how (for example) most of Excel's date and financial functions are wrong (not just because of syntax, but because they implement the wrong algorithms).

    OOXML does not define a formula language either, you know.

    Actually, it does -- 300-odd pages worth of one, in fact. But Excel doesn't follow that either!

    In fact, those date and financial functions tend to give answers different from both the OOXML standard and the original financial standards they are supposed to be based on!

    --

    "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz