- From: Hugo Haas <hugo@w3.org>
- Date: Fri, 1 Apr 2005 15:39:43 +0200
- To: Charlton Barreto <cbarreto@webmethods.com>
- Cc: W3C WSDL Group <www-ws-desc@w3.org>
- Message-ID: <20050401133943.GA5095@w3.org>
* Charlton Barreto <cbarreto@webmethods.com> [2005-03-31 07:01-0800] > In issue LC69a [1], it was raised that for > "application/x-www-form-urlencoded" serialization, escaping must be > defined as per XForms. As such, either the ampersand (&) or semi-colon > (;) must be supported for use as the query parameter separator, with > semi-colon as the default [2]. I took an action item to investigate why we had removed the query parameter separator in the first place. The previous text was the following: http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl20/Attic/wsdl20-bindings.html?rev=1.26&content-type=text/html;%20charset=utf-8#_http_operation_separator The decision was taken to get rid of this parameter on 21 May 2004: [[ Proposal to remove the separator property from the http binding. Accepted as that's not variable per html defined form url encoding style which we are using. ]] -- http://lists.w3.org/Archives/Public/www-ws-desc/2004May/0073.html So, at the time, we were under the impression that only '&' was valid, based on the definition of application/x-www-form-urlencoded in the HTML specification (and not the URI specification as I said yesterday on the call): http://www.w3.org/TR/html4/interact/forms.html#didx-applicationx-www-form-urlencoded However, we use the definition from the XForms specification: http://www.w3.org/TR/2003/REC-xforms-20031014/slice11.html#serialize-urlencode XForms does have a query parameter separator knob indeed, so we did the wrong thing in removing it in the first place. Comments about the proposed solution: > To resolve this we require a mechanism to signal the separator at the > operation level. As such I propose to add the following text to the > last paragraph of Section 5.8.1: > > "In this serialization, the value of the {http query parameter > separator} is used to specify the valid separator character for > name-value pairs in urlencoding." > > and I propose adding the following section as appropriate in the HTTP > binding spec: > > The HTTP binding specification adds the following property to the WSDL > component model (as defined in [WSDL 2.0 Core Language]): > > * {http query parameter separator}, a xs:string to the Operation > component. > > XML Representation > <description> > <binding name="xs:NCName" interface="xs:QName"? type="xs:anyURI" > whttp:queryParameterSeparatorDefault="xs:string"?> > <operation whttp:location="xs:anyURI"? > whttp: queryParameterSeparator="xs:string" ?> > </operation> > </binding> > </description> > > The XML representation for specifying the default query parameter > separator is an OPTIONAL attribute information item for the binding > element information item with the following Infoset properties: > > * A [local name] of queryParameterSeparatorDefault > * A [namespace name] of "http://www.w3.org/@@@@/@@/wsdl/http" > * A type of xs:string XForms defines it as a separator character. Shouldn't we restrict the length to 1? > * A default value of '&' The default for XForms is ';'. I do not know why they didn't pick '&' which seems to be the most widespread and natural separator used, but if we're aligning ourselves on XForms, it probably makes sense to use the same default value. [..] > [1] http://www.w3.org/2002/ws/desc/4/lc-issues/issues.html#LC69a > [2] http://www.w3.org/TR/xforms/slice3.html#structure-model-submission Cheers, Hugo -- Hugo Haas - W3C mailto:hugo@w3.org - http://www.w3.org/People/Hugo/
Received on Friday, 1 April 2005 13:39:45 UTC