- From: Philippe Le Hegaret <plh@w3.org>
- Date: 06 May 2003 09:56:47 -0400
- To: public-ws-pnf-tf@w3.org
I took an action to write something regarding the pros and cons of using
properties to the upcoming f2f meeting. Here is something:
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 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 of 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?
- 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?
Philippe
Received on Tuesday, 6 May 2003 09:57:10 UTC