May I suggest that the XML API be expressed in language neutral IDL rather
than Java. I believe the main impact this would have on current
interfaces/implementations would be to the member function that actually
loads/processes the document--you'd probably want to replace the Java
InputStream or URL parameter with a String (BSTR in Microsoft's IDL)--as in
the following lines from my xml.idl...
HRESULT processDocument([in] BSTR filename);
HRESULT processDocumentURL([in] BSTR url);
...and let processDocument create the InputStream or whatever. I currently
have APIs defined by IDL, with the XML processor implemented in Java, and
clients written in C++ and Java. The C++ client-Java processor combination
uses COM and the Microsoft Java Virtual Machine, but the Java client-Java
processor pair runs under either Sun or Microsoft (same XML processor). The
client can use an IGrove or IXMLApplication (callback) interface or both. I
haven't attempted events yet, but believe this will require making the XML
processor into a Java Bean.
Regards, Kevin Grimes Liant Software (k.grimes@liant.com)