Brussels DII workshop

Maarten Balliauw demonstrates PHPExcel API in action

I participated in the DII workshop in Brussels earlier this week, where I got a chance to catch up with old friends and also to make some new ones. Maarten Balliauw and Julien Chable have already covered the event in detail, but here's a brief summary of the presenters for this one:

  • Vijay Rajagopalan provided an overview of various projects that have come out of prior DII workshops, such as the Open XML-HTML Translator Add-in for Firefox. (Watch a demo here.). He also talked about the latest version 2.5 release of the Open XML/ODF Translator. (Watch a demo here.)
  • Wolfgang Keber of Dialogika talked about their experience in building document format conversion tools, including the Planets project. Dialogika has done some great work in this area.
  • Paolo Mottadeli of SourceSense covered the history of the Apache POI project, including the addition of support for Open XML documents. Paolo's a very interesting guy who pushes himself both intellectually and physically -- how many developers do you know who also compete in decathlons? (See his blog for more info.)
  • Maarten Balliauw talked about the PHPExcel API, and demonstrated how it can be used to create a rich XLSX document in pure PHP. He also showed off the PHPExcel calculation engine, which can recalculate spreadsheet formulas (as defined in ECMA-376). Maarten is a fearless presenter, and wrote code on the fly in front of everyone to get the job done -- nice job, Maarten!
  • Julien Chable then covered the OPENXML4J API for Java developers. He showed off its capabilities with a few demos, and he also explained how the OPC functionality of OPENXML4J has now been integrated into Apache POI. To wrap up his session, Julien presented a great example of document format interoperability: a Java application that read and processed the XLSX file that Maarten had created earlier in PHP.
  • Peter Amstein, the dev manager for Word, covered the guiding principles for Office's ODF implementation and also described some of the implementer's notes we'll be publishing soon, in support of the widely held view that transparency in documenting implementations is a key component of assuring good interoperability.
  • I covered the feedback we've heard to date on what people would like to see in a document test library and a validator tool, as well as the ways we're participating in maintenance of both IS29500 and ODF. Regarding the test library and validator, I've been discussing with several parties how we can get those projects off the ground and will have more details to share very soon.

In addition to the presentations, we had two roundtables where we discussed document interoperability challenges and solutions. Two of the topics I found most interesting were:

  • How should digital signatures be handled for documents translated to a different format? For example, if a digitally signed Open XML document is tranlated to ODF, is there a way for it to retain a valid signature?
  • Is it possible for applications to be "certified" as supporting a specific document format standard? And if so, who should provide that certification?

We had good discussions on these and other topics, with a variety of perspectives represented: implementers, government advisors, open-source developers, consultants, and others. Some of these problems present significant challenges, but getting everyone's opinions out on the table and having constructive dialog is a good first step toward finding solutions.

Wednesday afternoon, after we wrapped up the DII workshop, I had the opportunity to visit Bart Hanssens, chair of the ODF interoperability and conformance TC (OIC TC) in his office at FEDICT, where I joined him on the OIC TC call for this week. Bart asked me to provide the TC members with a recap of the ODF-related aspects of the workshop, so I talked about our soon-to-be-published ODF implementer notes that will help other implementers understand the details of our implementation. We also discussed the OIC TC's plans for creating a document test library for verifying ODF interoperability, including a schema for test-document metadata that Bart has created. We (Microsoft) will be contributing documents to that test library, as will other members of the OIC TC.

One cool thing I learned this week had nothing to do with document formats. I hadn't got around to trying the new Windows Live translator, but I used it to read Julien French-language posts and was pretty impressed. Check out how it works on Julien's posts about the Open XML HTML viewer, DII workshop Part 1, and DII workshop Part 2.

It's been a busy week, and now I'm in Berlin, where I had some meetings today, and tomorrow I'm headed for home.