- From: Ray Whitmer <rayw@netscape.com>
- Date: Tue, 14 May 2002 04:51:18 -0700
- To: xml-dist-app@w3.org
I have the responsibility of reporting on the resolution of issue 195 from the last teleconference. I have not had the time to focus and produce complete text that incorporates all the related clean-up, especially that proposed by Jacek Kopecky.[1] I repeatedly refer back to his proposal as a basis because there is much there that should not be lost. Performing that entire update is a bigger task, and even his proposal has not specifically given all the wording of this essential cleanup. The agreement on the resolution of 195 focuses on a small contentious part as identified by Jacek[1]. Instead of either requiring a fixed namespaceURI/name element for the return value, which negatively affects the ability to use schema to describe the types of arguments of a rpc call (issue 195), or just not identifying the return value at all, the return value is by the resolution now identified in the return struct as follows: The fixed namespaceURI/name, if present in the struct, contains the qname of the another actual struct member which is the return value, which will always be unique within the struct. If the fixed namespaceURI/name is not present then there was no return value (void return). Here are examples of the return of an RPC call which returns two out arguments a and b and one actual return value which has a value of "rval". first I show how those would look under the two parts of Jacek's proposal, and then under the adopted resolution of issue 195. First part of Jacek's proposal, with the special fixed namespaceURI/name used by the return value <...> <foo:bar> <rpc:result>rval</rpc:result> <a>one</a> <b>two</b> </foo:bar> <...> Second part of Jacek's proposal, with no special namespaceURI/name used to identify the return value <...> <foo:bar> <r>rval</r> <a>one</a> <b>two</b> </foo:bar> <...> The adopted resolution, which uses the special fixed namespaceURI/name to contain the qname of the return, roughly half-way between Jacek's part one and part two. <...> <foo:bar> <rpc:result>r</rpc:result> <r>rval</r> <a>one</a> <b>two</b> </foo:bar> <...> Notice that the special fixed namespaceURI/namespace element now contains the qname of the return value instead of being the return value. The actual return value is an element like any other return value that can have its own schema type. The fixed namespace/name element is now clearly of a fixed type containing a qname, with the constraint that it must be the qname of one of the struct accessors, which we already know are unique within a struct. Using this technique, it is also possible to use SOAP encoding names for types, as follows: <...> <foo:bar> <rpc:result>enc:string</rpc:result> <enc:string>rval</enc:string> <a>one</a> <b>two</b> </foo:bar> <...> I apologize for not offering a more complete description incorporating all of the exact changes required in the specification integrated with Jacek's proposed clarifications. I may be able to offer this later, but I didn't want others to be waiting on me when I was able to more quickly give this simpler explanation relating specifically to the resolution of 195 adopted in the teleconference. Thanks, Ray Whitmer rayw@netscape.com [1] http://lists.w3.org/Archives/Public/xml-dist-app/2002Apr/0236.html
Received on Tuesday, 14 May 2002 07:50:12 UTC