News

Microsoft Opens Its ODF Documentation for Office 2007 SP2

Microsoft released documentation on Tuesday designed to help developers create applications compatible with Microsoft Office 2007 Service Pack 2, particularly if they need to understand how Office 2007 implements the OpenDocument Format (ODF) standard.

The ODF specification describes document formats used in competing productivity suite products, such as OpenOffice.org, StarOffice and Lotus Symphony, among others. The formats are XML based and used for word-processing, presentation and spreadsheet applications.

Microsoft has been contributor toward maintaining the ODF standard as part of the OASIS process. In May of this year, the company announced that Microsoft Office SP2 would support ODF, along with other document formats, such as XML Paper Specification, Portable Document Format 1.5 and PDF/A.

Developers can now get their hands on documentation describing the implementation of OASIS OpenDocument Format Version 1.1 in Microsoft Office 2007 SP2, currently at beta release. The documentation can be accessed from Microsoft's Document Interop Initiative Web site here.

The general release of Microsoft Office 2007 SP2 is planned for the first half of 2009, probably between February and April of that year, according to a Microsoft spokesperson.

In "coming weeks," Microsoft will publicize the implementation of its own Office Open XML (OOXML) document formats, according to Microsoft's announcement. However, that implementation will be based on the Ecma-376 Edition 1 standard for OOXML currently used in Office 2007 SP2.

Microsoft's OOXML was first standardized by Ecma International, which subsequently recommended it for fast-track approval by ISO/IEC. After modifications recommended by participating members were added to the spec, it was published as an international standard in November. The standard is officially known as "ISO/IEC 29500:2008" or "IS 29500" for short.

As with Ecma-376, Microsoft has plans to publicize its implementation of IS 29500 in Microsoft Office, according to Doug Mahugh, senior product manager for Microsoft Office. However, the documentation for IS 29500 will have to wait till that spec is implemented in a future edition of the productivity suite, which won't happen until Microsoft Office 14 appears.

"Going forward, we have also committed to doing the same for IS 29500 and Office 14," Mahugh explained. "So in Office 14, which we are working to make substantially compliant with IS 29500, we will have a similarly detailed set of implementer notes that show exactly how we have implemented IS 29500 before Office 14 ships."

Microsoft hasn't yet committed to announcing a particular time frame for the release of Office 14, according to Mahugh.

Microsoft's task in ensuring that documents based on ODF and OOXML translate well in Microsoft Office depends on Microsoft's model for the data held in memory, Mahugh explained. In the case of the Open XML format, mapping to that format is straightforward. However, some things don't line up well with ODF, "so that's the kind of information we are providing," Mahugh said.

For instance, OOXML uses just two values for font weight in Microsoft Office, "normal" and "bold." The ODF spec, by contrast, allows a range of values for the font weight. There are also differences in how language IDs are mapped between the two standards.

It's possible to have a "philosophical differences" in the design of the schemas, Mahugh explained and Microsoft's intent is to maintain transparency for developers.

"The first step is to be very transparent in documenting exactly what we do and we feel if all implementers can be that transparent, then new implementers and developers can come along and make informed decisions about how to interoperate with these various existing implementations," he said.

Microsoft's long-term goal for OOXML will be to write to the IS 29500 standard, Mahugh explained.

"Our goal is to have Office 14 able to read either format -- both Ecma-376 and IS 29500 -- but then if there are differences between the two, we are writing the IS 29500 version," he said.

Finally, Microsoft is committed to further development of the ODF standard to ensure interoperability. Mahugh said that Microsoft submitted 15 different proposals to OASIS' ODF Technical Committee "in the last few weeks" based on results from Microsoft's interoperability testing.

In other document format news, Ecma International has just announced the approval of Ecma-376 Edition 2, which mirrors the IS 29500 standard. The duplication is a traditional approach taken by Ecma International, as explained by Mahugh at Microsoft's interoperability blog.

About the Author

Kurt Mackie is senior news producer for 1105 Media's Converge360 group.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube