Understanding Open XML

This article was originally published on DNJ Online
DNJ Online

Developers have long been building applications around Microsoft Office, using its rich API to build complex business solutions. However until now this has usually meant either running Microsoft Office in an unattended server mode, which is extremely resource intensive and not supported by Microsoft, or getting to grips with the binary file format used by the Office applications.

Thankfully the 2007 Microsoft Office system introduces another way in the Office Open XML document format, which is the native file format of Word, Excel and PowerPoint 2007. What makes Open XML different is not only that it is fully documented XML, but also that it has been ratified by Ecma (and submitted to ISO) as an industry standard.

This has several implications. For a start, it means that you can build your applications around Open XML in the confidence that they will still work regardless of what Microsoft may do in future. It opens up the possibility of other word processors and spreadsheet packages being able to read Open XML documents, and it means your applications can directly create and manipulate documents without requiring Microsoft Office running on your servers.

This series of articles is intended to give you a taster for how Open XML documents are structured and how you can code against them using the new Packaging API. It also looks at some of the many things third parties are already doing with this exciting new format.

You might also like...



Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“It is practically impossible to teach good programming style to students that have had prior exposure to BASIC. As potential programmers, they are mentally mutilated beyond hope of regeneration.” - E. W. Dijkstra