- From: Jacek Kopecky <jacek.kopecky@systinet.com>
- Date: Thu, 30 Oct 2003 16:59:38 +0100
- To: Mark Baker <distobj@acm.org>
- Cc: Jonathan Marsh <jmarsh@microsoft.com>, WS-Description WG <www-ws-desc@w3.org>
Please see below. > "What can a symbol > require of a person? Nothing. What can receipt of a message which uses > a symbol require of a person? Nothing. You can't require people to do > thing by sending them things. > > We can define a *protocol* in which people do do things, and we can > demonstrate > that if people adhere to the protocol interesting results can be > assured. Then conformance with the protocol would require that one do > something." > -- http://lists.w3.org/Archives/Public/public-sw-meaning/2003Sep/0130.html This is very insightful, and IMO a WSDL operation is a protocol. In case the above isn't sufficient, please read on. 8-) Sending documents isn't sufficient, my software never just sends a document to some service. My software always sends some documents to some endpoints *expecting that an agreed thing will be done*. I don't just come up to a clerk and hand it an new-bank-account form. I usually go to *a bank* (a service endpoint with a known interface), give them a *new-bank-account form* (the agreed document structure) and expect that *an account is going to be opened for me* (the semantics). Now the semantic agreement can be per service, i.e. a service can tell me what submitting a document to it with the structure given by the operation will result in; or it can be per interface, i.e. the creator of the interface can tell me what submitting a document with the structure given by the operation will do, and the service just tells me how to submit the document and where to submit it. In other words, "per service" means one can define an interface that will involve new-bank-account forms, a company can advertise that they implement it and then I'll call them up and ask them, what they do with new-bank-account forms. "Per interface" means one can define a bank interface involving new-bank-account, my parent teaches me (in lieu of me having to call the creator of the bank interface) that a bank is where I put money into accounts, and when I see a company advertising they do banking, I don't have to call them and ask them if that involves putting money in accounts. An operation always means *do something* and it need not be RPC. If I don't know what a service does, I can only ignore it. Jacek Kopecky Systinet Corporation http://www.systinet.com/
Received on Thursday, 30 October 2003 11:02:49 UTC