BIRT

I've been reporting and generating documentation from Rational Software Architect (RSA) for nearly ten years. 
In the early days, I "rolled my own" reporting solution for RSA and created a Java-COM bridge plugin that enabled programmatic creation of Word documents as part of the (first)  DoDAF RSA solution. Several customers used this heavily, until.. BIRT came along.

BIRT stands for Business Intelligence and Reporting Tools - and was created by Actuate, Inc, and contributed to the Eclipse consortium.
IBM Rational development created an ODA adaptor that allowed non-programmers to build reports against the RSA UML content and then bundled BIRT with RSA.

Since the advent of BIRT as an RSA component, I've been writing BIRT reports for RSA users around the planet. (Footnote: it turns out that the same technology is used for creating reports out of IBM Infosphere Data Architect. And yes, I've done a fair amount of that too!)

And when the BIRT capability didn't quite go far enough - I extended BIRT by creating plugins. One specific example was when a customer needed to report on the path through a deeply nested composite structure diagram. Rather than approach that with OCL or xpath (which would have been nightmarishly complex) I created the necessary Java code that traced through the connections, and provided an Xpath query to the reporter that would do the job with a single call! 

It turns out that BIRT is also used by IBM Rational Team Concert, and due to my extensive experience with BIRT and RSA, I soon found myself building custom BIRT reports for both IBM and IBM customers. And while there are many reporting solutions for the IBM Jazz products, sometimes, the ONLY way to get the job done is with BIRT. (SCM reports and custom burndown reports anyone?)

Several years ago I started sharing a lot of what I learned with the world via my wiki on IBM developerWorks. You'll find it here:

bon appetit!
Steve