Ok everyone, here's a vision I want to share (I'm sure I'm not the
first with it), and want a proposed solution for (I'll propose one
Imagine a world in which all the business processes in the world
happen automatically without human intervention (except of course
for some things human should do, like some decision-taking).
In this world, these business processes communicate with each other
all over the world using XML. However, in order to do this, there
has to be some for of transfer-protocol-level standard that they
all agree with so that connecting and doing business over the Internet
with any company is as simple and easy as connecting today with a
browser with a website.
Today for example, a web browser knows that it connects to a port 80,
and that the protocol spoken there is HTTP. This way ANY browser
can connect to ANY server, so long as they both understand HTTP
Today however, it seems we cannot do this with XML, as they way to
pass XML around is not standardized. i.e.: some people communicate
between two systems using RMI or CORBA by passing and XML stream
encoded in an RMI or CORBA string object. This however defies the
whole purpose of simplicity and it implies that the other side also
understand RMI or CORBA (or other methods like custom-socket code,
HTTP POST, etc).
So what do we need, a standard. Maybe we need 2 standards, an unreliable
one based on HTTP, and a reliable one maybe specifically created for
this purpose (like HTTP was created). This however is not a big issue,
the big issue is that we pick one. I suggest a XML over HTTP as a
first step because it will probably be the simplest one to implement,
and we can use the existing infrastructure where things like Java
Servlets pay a big role and are already widespread and ideal for this
kind of situation.
Once we do this we will be able to do things like in the following
scenario: Company BigSeller says they want to do e-business with
Company BigBuyer. Well, BigBuyer says, just send me the XML tags
you're using (including the DTD?), and your Internet address, and
a description of the flow of information we'll be exchanging and
I'll take care of the rest. Now a programmer in BigBuyer knows what
"business-level protocol" BigSeller has defined, and also knows that
all this stuff happens over port 8080. He/She gets to work and never
has to ask BigSeller if they use CORBA, RMI, DCOM, whatever, all he/she
cares about is to know on which port to talk to. So we could say that
he/she is going to XML://BigSeller.com:8080, and the XML on both sides
is generated dynamically at run time, to represent things like price
lists, quantity, etc.
He/She writes the program, and voila it works. The same thing can do
all the other BigSeller who want to do business with BigBuyer. As easy
as HTTP and HTML today, but doing much more complex things. Obviouly
they both might be using strong SSL to encript data, digital certificates
and so on, but those are minor details to all this.
So this is my vision. Comments? Is this being done already and I'm
just ignorant on the latest developments? If this is not being done,
where can I go to suggest a standard for doing this?
Get free e-mail and a permanent address at http://www.netaddress.com/?N=1