- From: Jeff Lansing <jeff@polexis.com>
- Date: Wed, 29 Aug 2001 11:51:59 -0700
- To: www-ws@w3.org
Hi, From the WDSL spec: "WSDL service definitions ... serve as a recipe for automating the details involved in applications communication." I take it that includes the details of formatting an HTTP GET request. So here's how it appears to work, for an HTTP GET request (in the http:urlEncoded case): description/service/port/http:address/@location gives a base URI, description/binding/operation/http:operation/@location gives a relative URI to the service, the "?" is automatically supplied, description/message/part/@name is the name of a parameter, and description/message/part/@type is a pointer to a schema for the type of that parameter. The convention for such a schema is that the string content of an element of the required type is a valid value for the corresponding HTTP GET parameter. For example, in: http://www.example.org/cgi-bin/service.cgi?VERSION=1.1&REQUEST=GetQuote the input message will have two parts, one named VERSION and the other named REQUEST. The corresponding types might be a pattern for the acceptable versions, and an enumeration of the acceptable requests. The problem I am having with with this is that there is no way to have optional parameters. So maybe in the example the VERSION parameter is optional. A possible solution, from the WSDL spec: "if the message contents are sufficiently complex, then an alternative syntax may be used to specify the composite structure of the message using the type system directly. In this usage, only one part may be specified." So using the alternative syntax, I assume that: description/message/part/@type is a pointer to a schema for all of the parameters at once. But now my problem is that I don't know what the convention for the parameter names is, in this alternative syntax. Are they going to be names of elements, as in: <types> <schema> <element name="name given by the pointer in the single specified part"> <complexType> <all> <element ref="VERSION" minOccurs="0"/> <element ref="REQUEST"/> </all> </complexType> </element> <!-- definitions of the elements, their types, etc. --> </schema> </types> ? Or do I literally have to specify what the whole request string (eg. "VERSION=1.1&REQUEST=GetQuote") looks like, in all its gory detail? Thanks, Jeff
Received on Wednesday, 29 August 2001 14:52:06 UTC