- From: Philippe Le Hegaret <plh@w3.org>
- Date: 06 May 2003 11:55:56 -0400
- To: www-ws-desc@w3.org
Here is a pros and cons summary that the PnF task force will use during the properties and features discussion at the f2f meeting: Cons: - verbose syntax: <soap:operation soapAction="http://example.com/GetLastTradePrice"/> vs <feature uri='http://www.w3.org/2002/12/soap/features/action/' required='true'/> <property uri='http://www.w3.org/2002/12/soap/features/action/Action'> <value>http://example.com/GetLastTradePrice</value> </property> NOTE: the SOAP binding will contain lots of default values. The feature action will always be activated by default and therefore the previous code could be reduced to: <property uri='http://www.w3.org/2002/12/soap/features/action/Action'> <value>http://example.com/GetLastTradePrice</value> </property> - lost in XML Schema validation the value cannot be checked by an XML Schema processor. NOTE: While we cannot do the check by an XML Schema processor, a WSDL processor will be able to do the XML Schema validation by using the constraint construction: <property uri='http://www.w3.org/2002/12/soap/features/action/Action'> <value>http://example.com/GetLastTradePrice</value> <constraint>xs:anyURI</constraint> </property> - departure from the WSDL 1.1 syntax. While this is correct, SOAP Action is now better defined in SOAP 1.2, and people that are used to SOAP 1.1 will need to adapt themselves to SOAP 1.2 anyway, so why don't we make the same jump in WSDL 1.2? Also, the "basic" users don't produce WSDL themselves but leave it to the toolkit to generate it, so they won't even see a change. - we can define the soapAction attribute as having the same semantic as the SOAP action property: it is just short cut. While this is correct, we should make this kind of decision on a per-property basis. Pros: - Reusability of the properties A property can be used by more than one feature. The SOAP Action property could be reused outside the scope of the SOAP feature. If you come with a binding for the protocol HTCPCP and happen to reuse the SOAP property, would you come up with the following syntax: <htcpcp:operation soapAction="http://example.com/GetLastTradePrice"/> or simply reuse the property without having to define a syntax? You can also define an element, instead of an attribute but in which namespace are you going to put this element? If you reuse the element outside its origin context, you'll be forced to use 2 namespaces. - It will be hard to avoid properties anyway: SOAP 1.2 introduces several properties (such as MEPs, web methods, ...). Are we going to avoid using properties at all and define a shortcut syntax for each of them or simply use the properties and features define in SOAP 1.2? - if it's a property, you know that you make the value or constraint available to the context, if it's an attribute or an element, your WSDL Processor need to understand it first. Glen will provide more on that during the f2f. Philippe
Received on Tuesday, 6 May 2003 11:56:21 UTC