python and SOAP??

Duncan Grisby dgrisby at
Mon Dec 17 11:35:49 CET 2001

In article <59E456FD3AD1FE80.FF0578E51CFDE7B5.7FEBAE7CEB1F44D9 at>,
 Cameron Laird <claird at> wrote:

>That was unintentional on my part, of course.
>I esteem CORBA's (or IIOP's) platform-neutrality
>and language independence.  The only argument
>there is that it seems to remain difficult for
>many languages to construct high-quality CORBA
>bindings--maybe harder than corresponding SOAP
>ones, although I'm well aware of the defects in
>the latter.

I don't think CORBA is particularly hard to implement. There is a lot
of it, because it aims to specify a much larger range of facilities
than SOAP, but none of it is particularly tricky. I suppose one thing
that makes it harder to implement a CORBA language binding is that
many languages have a standard binding. This means the implementor has
to implement it to adhere to an interface designed by someone else,
rather than inventing their own. SOAP has no such issue, since it's
just a wire protocol. I think CORBA's approach is a good thing, since
it means application code is portable between ORBs.

>From what I understand of SOAP, CORBA interoperability and standards
compliance is much more solid than SOAP's. That's probably because
CORBA is so much more mature.

>Unicode's the sticking point.  Again, I under-
>stand that, in principle, CORBA does a good job
>of transporting any kind of data (is this a
>good point, by the way, for a gratuitous snipe
>at SOAP's performance?).

You said it :-)

>  On a practical level,
>though, multi-byte codesets have not been a
>focus for most CORBA implementations, and I be-
>lieve the majority still only support
>single-byte for (IDL) "string".  True?

False. Some people have been slow to implement it (I include myself
here), largely due to lack of demand, but the majority of ORBs do
support wide strings now.

>I'm cross-posting this to c.o.c, to ensure we
>reach a fully accurate answer.  This is my
>summary:  at this point, it's easier to find a
>SOAP binding that "does the right thing" with
>Unicode than it is to track down such an ORB.

I suppose that depends on what you mean by "does the right thing", but
Unicode in CORBA is being used. I know of a large deployed application
transporting Unicode strings between Python with (pre-release)
omniORBpy 2 and Java with Visibroker 4.5, for example.

>The one question I have about this is whether
>I'm being unfair to (IDL) "wstring".  I'm in-
>experienced with CORBA; my impression, though,
>is that wstring isn't the solution one wants.

I suppose it depends on what you want. CORBA wstring is not as simple
as "Unicode", since it supports arbitrary code sets, and automatic
conversion between them. The baseline for interoperability is UTF-16,
though, so all ORBs (that support wstring) should support Unicode. If
you really want to transmit Unicode as UTF-16, for example, without
any possibility of translation by the ORB, you can just use
sequence<unsigned short>.



 -- Duncan Grisby  \  Research Engineer  --
  -- AT&T Laboratories Cambridge          --
   -- --

More information about the Python-list mailing list