Florida House of Reps leveraging OpenXML

Florida’s House of Representatives had a pilot project last year where they were able to leverage the OpenXML formats to make it much easier to craft a bill: http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=200428

Basically, as a bill goes through the legislative process, amendments are added. So every day, someone needs to go through those amendments that were adopted the previous day and re-generate the bill with those new amendments. They’ve customized Word 2007 and with the OpenXML formats make it super easy for the people generating the new draft of the bill to bring all the amendments in.

They leverage the OpenXML formats and SQL server as a way of storing the various amendments. They then built some custom UI into Word 2007 to expose the amendments to the guys regenerating the bill so that they could easily insert them. Here’s a screenshot of the UI:

By automating the system in this way, they significantly improved both the efficiency as well as the accuracy with which the new drafts could be generated. While a system like this in the past would have been pretty complex, they were able to build this one with just two developers.

This system is a great example of the new types of document assembly scenarios we’re starting to see pop up because of the new file formats. You can use the formats to create chunks of content to be easily inserted in other documents. As I’ve said before, enabling scenarios like this was one of the biggest motivators we had in the decision for moving to new default formats. We had a long history with XML formats in Office, and we saw a lot of folks building solutions with those formats. Making the XML formats first class citizens though and moving them to be the default will really help this ecosystem to grow.


Comments (5)

  1. Great. Now I fail to see what’s in it that could not be achieved using Office XP or Office 2003.

    I know there is no Ribbon UI in Office XP or Office 2003 but it’s not like custom UIs can’t be created : custom toolbars, custom menus, custom task panes, custom smart actions, custom smart documents.

    And, since using VSTO was used by Florida IT staff to build, and then run this "application", this also requires to use .NET, worry about VSTO run-time deployment hell, among other things. Here again, I fail to see what regular VBA macros were unable to do, what really caused the switch. You can query a database back-end from a VBA macro, then rearrange so-called amendments, and provide a consistent UI.

    Last note related to custom XML parts. In Word 2003 and Excel 2003, XML maps and sources are saved in "hidden" OLE streams, so nothing new here. The part of the solution that binds the document surface to a custom XML part is only available in Word 2007. There are no content controls in Excel 2007 and Powerpoint 2007, even though the COM object model of said applications allows to create those custom XML parts. So whenever you are talking about Office OpenXML features, making a gross over-generalization in the name of a feature that is only available in one of the products, it’s a bit misleading I think.

  2. hAl says:

    Are the custum UI elements included in the OOXML documents ?

    So can they be accessed by people using MS Office 2007 in another workenvironment ?

  3. Ian Easson says:


    Your statement that it could have been done in other ways using older approaches was answered by Brian when he wrote: "…a system like this in the past would have been pretty complex…"

  4. Tomorrow I’m heading out to Massachusetts for what should be a very interesting event at Harvard. The

  5. RSS It All says:

    Tomorrow I'm heading out to Massachusetts for what should be a very interesting event at Harvard