W3C home > Mailing lists > Public > www-ws-desc@w3.org > October 2002

Re: A proposal for supporting property binding (SOAP and others) in WSDL

From: Christopher B Ferris <chrisfer@us.ibm.com>
Date: Sun, 27 Oct 2002 20:31:06 -0500
To: Amelia A Lewis <alewis@tibco.com>
Cc: "'www-ws-desc@w3.org'" <www-ws-desc@w3.org>
Message-ID: <OF247D66E5.2E26E2D2-ON85256C5F.004F4E1D-85256C60.00083682@rchland.ibm.com>
Amy,

This is quite interesting work (both the property binding and alternate 
email binding
proposals). 

Some comments on the property binding proposal[1]:

1) Why have you chosen xs:string for the type of the algorithm/@name 
attribute? I would
think that a QName would be preferable so as to avoid potential for name 
collision. Also,
it might be useful to replace algorithm/@name with algorithm/@xsi:type (a 
QName)
such that it could reference a schema defined type that defined the 
constraints on the
content of the algorithm element (which would be declared as abstract in 
the schema definition
and as a restriction of xs:string).

This latter approach would allow the content of the algorithm element to 
be validated
against the constraints (such as restricting the xs:pattern facet) 
stipulated in the schema 
definition of that algorithm type.

2) The use of an open-ended enum for the wsdl:*Property/@locationType 
attribute
suggests to me that rather than define this as an enum, that it be defined 
as a QName
and that the "built-in" or WSDL defined locationTypes be bound to the WSDL 
namespace. If
other bindings define their own locationTypes, then they would be bound to 
their respective
namespaces.

3) While having such a formal algebra for mapping the unbound abstract 
properties of
a feature is IMO, quite useful, it does not seem to me to be appropriate 
that a WSDL description
apply these for *each* binding defined in a WSDL description. I think that 
it increases the
complexity of a given wsdl:binding unnecessarily. Rather, I see this 
formal notation/algebra
as being quite useful for mapping a feature(s) to a protocol binding that 
is implied by the
choice of binding namespace (e.g. http://www.w3.org/@@@@/@@/wsdl/soap)
and the association of chosen features, by reference to their assigned 
URI.

In other words, I think that it would be useful to be able to define a 
feature and its associated
properties and property references, and then, for each defined protocol 
binding, define the
mapping/binding of the abstract features in a manner such as you have 
proposed. This need
only be defined once, and then simply referenced.

e.g.

<wsdl:feature name="NCName" uri="xs:anyURI">
  <wsdl:documentation>burble</wsdl:documentation>?
  <wsdl:properties>
    <!-- enumerate the referenced set of properties used by the feature. 
These may come from multiple
    namespaces, not just the targetNamespace -->
    <wsdl:propertyRef property="QName"/>+
  </wsdl:properties>
  <wsdl:featureBinding feature="QName" protocol="xs:anyURI">
    <choice>
      <wsdl:simpleProperty property="QName" locationType="QName" 
        use="required|optional|prohibited">location</wsdl:simpleProperty>
      <wsdl:complexProperty property="QName" locationType="QName" 
        use="required|optional|prohibited">location</wsdl:complexProperty>
      <wsdl:propertyChoice property="QName" 
use="required|optional|prohibited">
        <choice>
          <wsdl:simpleProperty/>
          <wsdl:complexProperty/>
        </choice>+
      </wsdl:propertyChoice>
    </choice>+
  </wsdl:featureBinding>+
</wsdl:feature>+

<!-- define the set of properties bound to the targetNamespace of this 
WSDL document -->
<wsdl:property name="NCName" type="QName">
  <wsdl:documentation>burble</wsdl:documentation>?
</wsdl:property>+

Thus, a binding could simply reference the set of features it uses by 
either
the feature's URI or by its QName. The binding-specific property mapping 
is then
determined by matching the protocol URI with the value of 
wsdl:featureBinding/@protocol.

Comments on the alternate email binding proposal[2]:

4) Why is the message-id property a xs:string? Seems to me that requiring 
it be a xs:anyURI
would be "a good thing(tm)" IMO. Again, this is just the property, not a 
binding location's value.
A property binding could provide an algorithm that converted the URI the 
an appropriate
representation.

e.g. 
        mid:1035577985.4183.28.camel@xerom
maps to:
        Message-Id: <1035577985.4183.28.camel@xerom>

5) The feature for MIME composite messages should be (IMO) a realization 
of/binding to 
the SOAP1.2 Attachment Feature[3]. I believe that this (MIME Composite) 
isn't a feature as much 
as a feature-specific binding.

6) Why have you chosen to separate out the Failure Destination feature 
from the Message
Address feature? Message Address has a response-address property. Seems to 
me
that the fdest:failure-destination sh/could be incorporated into the set 
of address properties
and that in some cases, the failure-destination would simply be a 
reference to the response-address
property (which itself might be a (defaulted) reference to the 
original-source property).

Cheers,

Christopher Ferris
Architect, Emerging e-business Industry Architecture
email: chrisfer@us.ibm.com
phone: +1 508 234 3624

[1] 
http://lists.w3.org/Archives/Public/www-ws-desc/2002Oct/att-0128/01-property-binding.html__charset_ISO-8859-1
[2] http://lists.w3.org/Archives/Public/www-ws-desc/2002Oct/0126.html
[3] http://www.w3.org/TR/soap12-af/

Amelia A Lewis wrote on 10/25/2002 04:33:05 PM:

> Heyas ...
> 
> After doing some work to try to use the various proposed frameworks,
> I've come up with the following proposal to place on the table as well. 
> This work is based on the information in the SOAP 1.2 email binding
> proposal, which went out earlier today.  I realize that we're loading
> all youse guys down with stuff to read on your otherwise delightful
> weekends, but hey ... we had to *write* it.  So there!  *laugh*
> 
> The attached is a proposal for defining, specifically, how a service may
> bind abstract properties within the context of a particular protocol
> binding.  Feedback and responses welcome.
> 
> Amy!
> -- 
> Amelia A. Lewis
> Architect, TIBCO/Extensibility, Inc.
> alewis@tibco.com
> [attachment "property-binding.html" deleted by Christopher B 
Ferris/Waltham/IBM] 
Received on Sunday, 27 October 2002 20:31:43 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:58:21 GMT