On Aug 1, 2008, at 9:08 AM, Ivan Trajkovic wrote:
on a side note, it would be cool if the interface definition for the
processes was abstracted into its own layer, so that other IDL's (besides WSDL) could be used (WADL, Google protocol buffers - although Im still not
that familiar with GPB's as they might be only a simple data message
definitonl language[perhaps can be hacked into definiting method signatures
as well])... either way, it would seem powerful if ODE was capable to
accomodate other IDL's, its use would increase drastically... I understand
this probably a non-trivial amount of work.

Other IDLs is a big deal, depending on how you look at it, since the combination of XML, WSDL, and XPath (1.0 or 2.0) is deeply ingrained in the BPEL language. (File that under "it seemed like a good idea at the time"...) It's certainly conceivable that people would be interested in using something like Java for the IDL with POJOs, no IDL with JSON/Javascript, etc. The good thing about the WSDL/XML/XPath stack is that it's friendly with the philosophies of the engine and the design of BPEL, and it's purely a question of effort and inclination for someone to have a version of ODE that would support their chosen combination of IDL, expression language, and message format so long as the overall flavor of the implementation didn't change too much.

Now, that said, some of this is purely a matter of the level of indirection in your thinking, and this is why the integration layer (IL) that Matthieu pointed you at is probably the right place to start. For the engine to use XML internally along with all of the usual trappings (WSDL, XSLT, XPath, etc.), you could feed it about anything — JSON, EDI of various flavors, a binary wire format, etc. — which would be dealt with as XML within the confines of the engine and converted to and from XML by the IL.

Given that you seen to have a taste for the wind in your hair and bugs in your teeth (a good thing!), you should also take a look at the JaCOb actor layer that underlies the ODE BPEL implementation.

-- Paul

Reply via email to