Overspecification

This is just me thinking out loud.

If you're building a distributed architecture, you need a few things.

1) Some mechanism for IPC.
     a) A low level, point to point connection.
     b) Some higher level framwork like HTTP, FTP, CORBA, DCE,
          e-mail, messagebroker, router, dispatcher, whatever
2) Some syntax/protocol related to content for:
     a) Serializing
     b) Marshalling
     c) Discovery and interface description.
     d) Additional features

Unfortunately, many protocols for serializing, marshalling and interface
description are:
1) binary and unreadable
2) proprietary
3) not open
4) locked into a single IPC framwork

If you're not willing or not able to use 1 single transportation and
delivery
mechanism, you have to build bridges, which is problematic at best.

XML-based protocols seem to be the answer. These documents are
1) readable
2) open
3) extensible
4) platform independent
5) application independent

In other words, we can use *any* transportation mechanism at our
disposal to exchange XML. If only we can agree upon a single
mechanism and syntax for serializing, marshalling and interface description,
then we have solved a lot of communication problems.

This is wat this mailing list is all about, so I'm not telling you anything
new. However, aren't there some serious pitfalls we should consider?

If I look at XML RPC and compare that to SOAP, I realize that SOAP is
considerably more complex. It's not a complete enigma, but it is far less
accessable. As a result, people will start relying on SOAP aware tools,
rather then building there own SOAP parsers. So now, SOAP is no longer
an answer to the problem, it is part of the problem. It is just another
protocol that is only supported by some of the tools, languages or
frameworks and there is a need to build bridges to those parts of your
distributed architecture that are not SOAP aware.

Not to mention the fact that SOAP isn't the only protocol involved in
this issue. There are many similar and related protocols to choose
from.

There seems to be some paradox. The more we debate a protocol, the
more people get involved in it, the more different backgrounds we
encounter, the more different situations we face, the more complete,
robust and down right good the protocol gets. At the same time, the
protocol gets more and more complex, inaccessable and as a result,
less usable.


As I said, this is just me thinking out loud.

Received on Thursday, 10 May 2001 13:01:04 UTC