01.11.07

Gemini version available ♊︎

Proprietary Open XML Extensions (Already!)

Posted in Apple, Deception, ECMA, Formats, Interoperability, Microsoft, Novell, Office Suites, Open XML, OpenDocument, Standard, VBA at 12:03 am by Shane Coyle

As you are likely aware, Excel 2007 includes a new file format for storing data, well actually it has a few new file formats apparently. And, none of them are OpenDocument, in case you were wondering.

Rob Weir takes Office 2007 for a spin, and has some interesting things to report regarding the file formats being used by Excel 2007.

In addition to the default Open XML file format (.xlsx) that has been added to Office 2007, there is also an additional format called the Excel Macro-Enabled Workbook (.xlsxm) which contains binary-only data not specified in the ECMA standard. There is also an all-new binary-only format (.xlsb), which Microsoft says provides "optimal performance and backward compatibility" (wasn’t that the point of Open XML?).

The “Excel Macro-Enabled Workbook” option saves as an “xlsxm” extension. It is OOXML plus proprietary Microsoft extensions. These extensions, in the form of binary blob called vbaProject.bin, represent the source code of the macros. This part of the format is not described in the OOXML specification. It does not appear to be a compiled version of the macro. I could reload the document in Excel and restore the original text of my macro, including whitespace and comments. So source code appears to be stored, but in an opaque format that defied my attempts at deciphering it.

(What’s so hard about storing a macro, guys? It’s frickin’ text. How could you you[sic] screw it up? )

This has some interesting consequences. It is effectively a container for source code that not only requires Office to run it, but requires Office to even read it. So you could have your intellectual property in the form of extensive macros that you have written, and if Microsoft one day decides that your copy of Office is not “genuine” you could effectively be locked out of your own source code.

There is also a method to add in additional file formats for saving to, including PDF and Microsoft’s XPS, but there is no native ODF support yet.

Overall, Rob’s experience was a bit buggy, and there was an incident where trying to save to Open XML prompted a message about incompatible features (so much for backward compatibility, hey try the new binary-only format…).

I wonder how Novell OpenOffice.org’s VBA support is going to handle the new binary information in the macro-enabled workbook? Still better than the next MS Office for Mac, I suppose.

Share in other sites/networks: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Reddit
  • email

Decor ᶃ Gemini Space

Below is a Web proxy. We recommend getting a Gemini client/browser.

Black/white/grey bullet button This post is also available in Gemini over at this address (requires a Gemini client/browser to open).

Decor ✐ Cross-references

Black/white/grey bullet button Pages that cross-reference this one, if any exist, are listed below or will be listed below over time.

Decor ▢ Respond and Discuss

Black/white/grey bullet button If you liked this post, consider subscribing to the RSS feed or join us now at the IRC channels.

5 Comments

  1. Stephane Rodriguez said,

    January 23, 2007 at 12:27 pm

    Gravatar

    I am a new visitor. While I find your blog instructive (subscribed), I’d like to shed some light on a confusion here.

    VBA projects are encoded in bin parts in the new Office 2007 file formats, whether it’s Word, Excel or Powerpoint. Those parts are the actual VBA streams that we find in older versions of the corresponding applications. That’s a direct extraction.

    There are other binary parts, such as printer settings parts and OLE objects parts.

    The new XLSB file format pushes XLSM even further by making the important XML parts encoded in much the same way than BIFF used to do with older versions. Actually, those bin parts are christened as BIFF12. BIFF12 is undocumented right now.

    I have written an article on the subject here :
    http://www.codeproject.com/useritems/office2007bin.asp

  2. Roy Schestowitz said,

    January 23, 2007 at 12:47 pm

    Gravatar

    Thank you for the information, Stephane. For the record, I notice that you are among the Open XML team members:

    http://openxmldeveloper.org/members/Stephane+Rodriguez.aspx

    Also, yesterday’s news indicate that Microsoft pays people to “bring balance” to content which speaks about Open XML. I just hope you are not being paid to post here.

    In any event, your comment does not invalidate the fact that Open XML has undocumented, binary parts.

  3. Stephane Rodriguez said,

    January 23, 2007 at 1:41 pm

    Gravatar

    If you think I may be a paid shill, take a look at this : http://xlsgen.arstdesign.com/special/OOXML_objections.pdf

    (this is on my website)

    The OOXML specs are so bad I had to develop my own tool, called “diffopc”, to make any progress in my product (an Excel file format component which recently added partial support for Excel 2007).

  4. shane said,

    January 23, 2007 at 1:52 pm

    Gravatar

    Thank you, Stephane. We’ve had a huge influx of trolling as of the last few days, and perhaps are a bit on edge. There is no doubt from your first linked article (I didn’t read the pdf yet) that you are well versed in the OOXML spec.

    I love the fact that we do have discussions on the site, and want to encourage further discussion and corrections. I want our arguments to withstand scrutiny, and encourage any readers to question or comment on our premises.

    Let’s all just keep it mature, and there is no reason to post using pseudonyms folks, just type in "anonymous" or "i disagree". I still do not intend to censor any non-spam comments, nor shut down commenting after x number of days on an article, since many are still actively being viewed and linked to.

  5. Michael said,

    September 12, 2007 at 9:10 am

    Gravatar

    Thanks for the nice post!

DecorWhat Else is New


  1. Links 24/10/2021: Ceph Boss Sage Weil Resigns and Many GPL Enforcement Stories

    Links for the day



  2. GAFAM-Funded NPR Reports That Facebook Let Millions of People Like Trump Flout the So-called Rules. Not Just “a Few”.

    Guest post by Ryan, reprinted with permission



  3. Some Memes About What Croatia Means to the European Patent Office

    Before we proceed to other countries in the region, let’s not forget or let’s immortalise the role played by Croatia in the EPO (memes are memorable)



  4. Gangster Culture in the EPO

    The EPO‘s Administrative Council was gamed by a gangster from Croatia; today we start the segment of the series which deals with the Balkan region



  5. The EPO’s Overseer/Overseen Collusion — Part XXI: The Balkan League – The Doyen and His “Protégée”

    The EPO‘s circle of corruption in the Balkan region will be the focus of today’s (and upcoming) coverage, showing some of the controversial enablers of Benoît Battistelli and António Campinos, two deeply corrupt French officials who rapidly drive the Office into the ground for personal gain (at Europe’s expense!)



  6. Links 23/10/2021: FreeBSD 12.3 Beta, Wine 6.20, and NuTyX 21.10.0

    Links for the day



  7. IRC Proceedings: Friday, October 22, 2021

    IRC logs for Friday, October 22, 2021



  8. [Meme] [Teaser] Crime Express

    The series about Battistelli's "Strike Regulations" (20 parts thus far) culminates as the next station is the Balkan region



  9. Links 23/10/2021: Star Labs/StarLite, Ventoy 1.0.56

    Links for the day



  10. Gemini on Sourcehut and Further Expansion of Gemini Space

    Gemini protocol is becoming a widely adopted de facto standard for many who want to de-clutter the Internet by moving away from the World Wide Web and HTML (nowadays plagued by JavaScript, CSS, and many bloated frameworks that spy)



  11. Unlawful Regimes Even Hungary and Poland Would Envy

    There’s plenty of news reports about Polish and Hungarian heads of states violating human rights, but never can one find criticism of the EPO’s management doing the same (the mainstream avoids this subject altogether); today we examine how that area of Europe voted on the illegal "Strike Regulations" of Benoît Battistelli



  12. The EPO’s Overseer/Overseen Collusion — Part XX: The Visegrád Group

    The EPO‘s unlawful “Strike Regulations” (which helped Benoît Battistelli and António Campinos illegally crush or repress EPO staff) were supported by only one among 4 Visegrád delegates



  13. [Meme] IBM Has Paid ZDNet to Troll the Community

    Over the past few weeks ZDNet has constantly published courses with the word "master" in their headlines (we caught several examples; a few are shown above); years ago this was common, also in relation to IBM itself; clearly IBM thinks that the word is racially sensitive and offensive only when it's not IBM using the word and nowadays IBM pays ZDNet — sometimes proxying through the Linux Foundation — to relay this self-contradictory message whose objective is to shame programmers, Free software communities etc. (through guilt they can leverage more power and resort to projection tactics, sometimes outright slander which distracts)



  14. [Meme] ILO Designed to Fail: EPO Presidents Cannot be Held Accountable If ILOAT Takes Almost a Decade to Issue a Simple Ruling

    The recent ILOAT ruling (a trivial no-brainer) inadvertently reminds one of the severe weaknesses of ILOAT; what good is a system of accountability that issues rulings on decisions that are barely relevant anymore (or too late to correct)?



  15. Links 22/10/2021: Trump's AGPL Violations and Chrome 95 Released

    Links for the day



  16. [Meme] How Corporate Monopolies Demonise Critics of Their Technically and Legally Problematic 'Products'

    When the technical substance of some criticism stands (defensible based upon evidence), and is increasingly difficult to refute based on facts, make up some fictional issue — a straw man argument — and then respond to that phony issue based on no facts at all



  17. Links 22/10/2021: Global Encryption Day

    Links for the day



  18. [Meme] Speaking the Same Language

    Language inside the EPO is misleading. Francophones Benoît Battistelli and António Campinos casually misuse the word “social”.



  19. António Campinos Thinks Salary Reductions Months Before He Leaves is “Exceptional Social Gesture”

    Just as Benoît Battistelli had a profound misunderstanding of the concept of “social democracy” his mate seems to completely misunderstand what a “social gesture” is (should have asked his father)



  20. IRC Proceedings: Thursday, October 21, 2021

    IRC logs for Thursday, October 21, 2021



  21. Links 21/10/2021: MX Linux 21 and Git Contributors’ Summit in a Nutshell

    Links for the day



  22. [Meme] [Teaser] Miguel de Icaza on CEO of Microsoft GitHub

    Our ongoing series, which is very long, will shed much-needed light on GitHub and its goals (the dark side is a lot darker than people care to realise)



  23. Gemini Protocol and Gemini Space Are Not a Niche; for Techrights, Gemini Means Half a Million Page Requests a Month

    Techrights on gemini:// has become very big and we’ll soon regenerate all the pages (about 37,500 of them) to improve clarity, consistency, and general integrity



  24. 'Satellite States' of EPO Autocrats

    Today we look more closely at how Baltic states were rendered 'voting fodder' by large European states, looking to rubber-stamp new and oppressive measures which disempower the masses



  25. [Meme] Don't Mention 'Brexit' to Team UPC

    It seems perfectly clear that UPC cannot start, contrary to what the EPO‘s António Campinos told the Council last week (lying, as usual) and what the EPO insinuates in Twitter; in fact, a legal challenge to this should be almost trivial



  26. The EPO’s Overseer/Overseen Collusion — Part IXX: The Baltic States

    How unlawful EPO rules were unsurprisingly supported by Benoît Battistelli‘s friends in Baltic states; António Campinos maintained those same unlawful rules and Baltic connections, in effect liaising with offices known for their corruption (convicted officials, too; they did not have diplomatic immunity, unlike Battistelli and Campinos)



  27. Links 21/10/2021: GIMP 2.99.8 Released, Hardware Shortages, Mozilla Crisis

    Links for the day



  28. How Oppressive Governments and Web Monopolists Might Try to Discourage Adoption of Internet Protocols Like Gemini

    Popular movements and even some courageous publications have long been subverted by demonisation tactics, splits along unrelated grounds (such as controversial politics) and — failing that — technical sabotage and censorship; one must familiarise oneself with commonly-recurring themes of social control by altercation



  29. [Meme] Strike Triangulations, Reception Issues

    Financial strangulations for Benoît Battistelli‘s unlawful “Strike Regulations”? The EPO will come to regret 2013…



  30. [Meme] Is Saying “No!” to Unlawful Proposals Considered “Impolite”?

    A ‘toxic mix’ of enablers and cowards (who won’t vote negatively on EPO proposals which they know to be unlawful) can serve to show that the EPO isn’t a “social democracy” as Benoît Battistelli liked to call it; it’s just a dictatorship, currently run by the son of a person who actually fought dictatorship


RSS 64x64RSS Feed: subscribe to the RSS feed for regular updates

Home iconSite Wiki: You can improve this site by helping the extension of the site's content

Home iconSite Home: Background about the site and some key features in the front page

Chat iconIRC Channel: Come and chat with us in real time

Recent Posts