- From: Jean-Jacques Moreau <moreau@crf.canon.fr>
- Date: Tue, 13 Mar 2001 10:29:43 +0100
- To: Mark Jones <jones@research.att.com>
- CC: frystyk@microsoft.com, ms@mitre.org, rayw@netscape.com, rden@loc.gov, xml-dist-app@w3.org
Mark Jones wrote: > It is not an issue if we just want to keep the SOAP philosophy, which > is that senders and receivers can employ any convention that they want > in the XML markup. RPC is only one such convention. You can even > have additional conventions layered on top of RPC. For example, not > only is it RPC, but the first parameter which is a string represents > an object ID of some sort. As long as senders and receivers agree on > the convention, there is no problem. The SOAP spec included one such > convention for RPC. Presumably, we should do the same for the XML > Protocol. Well, not calling out types explicitely does not mean that blocks are untyped. We may decide not to "tag" RPC blocks, we may not go further than saying RPC blocks are different only in their usage of XML, but behind the scenes we are effectively creating a new type of block, with a very precise (I hope!) semantics. Moreover, in practice, it may also help to call out the type explicitely. For example, there could be an intermediary on the route that pushes a new block into a message, and that happens to use a convention "similar" to the RPC convention, but serving a different purpose. The receiver may be confused, when it processes the message, and may not pick the right block (ie, the intermediary block instead of the real RPC block). Said otherwise, explicit block types may help automatic dispatching, somewhat like MIME types. > What I meant here by RPC(A) is just the dispatch part of the RPC call, > not the actual module (applX) being called. SOAP doesn't distinguish > between an applX(A) that uses RPC conventions and one that doesn't. > If it uses RPC then it is up to applX to interpret the markup as such > and to dispatch the applX method encoded in the RPC, perhaps with help > from some utility function for this purpose. My point here is that > you can't make that utility function itself a module since it is > invoked from the "inside" of the applX module. Sorry, I thought applX(RPC()) referred to a different convention. Jean-Jacques.
Received on Tuesday, 13 March 2001 04:30:23 UTC