Re: Specifying Office Component IDL?



Hi Ryan,

you are completely right, GNOME-Office needs an API specified in a CORBA IDL.

>It seems to me that some reasonable steps would be the following:
>
>1. Determine what interfaces we need (ideally, at a fair level of
>granularity) *
>2. Discuss needed features of each interface (I'm sure that the members
>of the various projects will have a great deal of knowledge on how each
>interface will need to be used)
>3. Implement IDL for these interfaces

Everybody who is interested in such an API should take a look at http://api.openoffice.org which is the API of OpenOffice, which is specified in an IDL similar to CORBA. 

Our approach is rather a general office suite API than a specific API just for OpenOffice, anyway. And we are already thinking about merging our basic concepts with GNOMEs Bonobo.

>4. Write components that implement these interfaces

New OpenOffice components are already written after the specified API. For older components, wrapper implementations exist. This is an approach which can of course be done by other applications, like AbiWord, too.

If, for example, AbiWord would implement the APIs for an OpenOffice TextDocument (and its sub-components), the XML reader/writer component of OpenOffice could be used by AbiWord.

Herewith, I do not understand a whole text processor as a single component. But as long as the API implementation is actually a wrapper, this will be the granularity of exchangebility. The API of course must support a finer granularity.

>The main rationale I have for wanting to do things this way is that it
>seems like numbers 1 and 2 are great for this mailing list to discuss,
>and get lots of opinions on what is needed, etc.  It seems like there is
>plenty of expertise with the people on this list, and the Sun people
>that aren't on this list.  

Who said, that Sun people are not on the list? ;-) Some of my colleagues are at least watching this list too.

>For number 3, there are lots of people in the
>GNOME community that can write IDL, and verify that it all makes
>sense.  

Very important points to keep in mind when specifying an API, are to keep it functional, consistent and stable. I think, it would be the best to have a set of desing rules and a small committee of gate-keepers (kinda like Linus and Alan are gatekeeping the Linux kernel).

     Michael

-- 
I speak for myself, not for my employer. 
Please answer to the mailinglist, not to my email address.





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]