Re: Action item on syntax-based interoperability

On Thursday, October 23, 2003, at 08:23  AM, Champion, Mike wrote:

> I would strongly urge the TAG to just not try to say anything 
> authoritative
> along these lines.  Certainly a reasonable case can be made for Tim's
> position, and it's certainly true that the standardized "bits on the 
> wire"
> that are viewable as ordinary text has contributed to the rapid spread 
> of
> HTTP and HTML.  I'm very uncomfortable with elevating all this to the 
> level
> of a general principle.

We disagree profoundly.  In my career I saw many ambitious API-centric 
attempts at smooth network interoperability prove to have lousy 
cost-effectiveness, including various RPC stacks, Corba, DCOM, and so 
on and so on.  The Web succeeded in many arenas where they failed, and 
one important reason is that it never subscribed to the myth of the 
interoperable data model.  If the Webarch doc is not to be used to 
document the reasons for the success of the Web, then it is useless and 
we should stop working on it.

A lot of the examples you give for things that are defined at the data 
model level (DOM and friends, etc.) are Web-related only in that they 
are used to manipulate data formats that are commonly interchanged on 
the Web.  I can run an XSLT transform or build DOM code or XQuery 
against a repository on a computer on a desert island that has no 
network connectivity to anything, and where the data being processed 
has been pulled out of an RDBMS (this is a good thing, but it's not a 
Web thing).  Obviously, the virtue of syntax for interoperation really 
comes to the fore when the players in the system are heterogeneous, 
i.e. networked.

So I could see having text in the Webarch section on Representations 
(i.e. data formats) observing that many of the software components 
which process representations do so at the level of data model, with no 
concern for the surface representation in the message.  (Of course, if 
they then want to interoperate with another component out there 
elsewhere in the web, they're going to have to turn that data model 
back into bits on the wire to get the job done).  If we had such text, 
since this is the *Web* architecture document, it would be interesting 
if we could find some characteristics of data models that make them 
particularly well-suited for Web applications; none leap immediately to 
my mind, but there might well be something useful to say.

It has been universally my experience that to the extent that an 
interface is specified at the syntax level, decoupling and 
interoperability are both maximized.  This is the lesson that HTTP and 
HTML and URIs are painting across the sky in letters of fire fifty 
miles high.  If you want to ignore that lesson that's your privilege, 
but the TAG's job is to write down the reasons why it's worked as well 
as it has.  -Tim

Received on Friday, 24 October 2003 03:12:40 UTC