I his recent blog entry Michael Brauer provides some insight into the possibilities of a toolkit for the OpenDocuemnt format used by OpenOffice.org and other open-source and commercial office productivity applications.
Michael proposes the use of a language agnostic approach on the specification of such an API, a direction that I strongly second.
I would however caution the use of an interface description technique which compiles interfaces to the target environment accoriding to a fixed language binding. Just look at what happened to XML DOM, which was also specified with an IDL. It is a pain to use, since it cannot leverage features of the target language in an efficient manner (e.g. collections).
ODF describes a far more complex data model than the plain XML infoset addressed by DOM. So while I am all for specifying the model and the operations that are to be performed on it in a language agnostic way, I caution to use an IDL technique as the tool to do that. The main model should be more abstract. Language bindings should be created on the basis of that abstract model. It is than very well possible to create an IDL binding for that model. This can be used to generate bindings for languages that have an IDL binding but no specific binding for the abstract ODF model.
The whole thing could be viewed like this...
+------------------+---------------+
| Language A | Language B |
| +---------------+
+------------------| IDL Language B|
| | Binding |
|Specific Language +---------------+
|Binding | IDL Binding |
| | |
+------------------+---------------+
| Abstract ODF Model |
+----------------------------------+
| ODF XML Schema |
+----------------------------------+