Issue 021: WSDL Extension for Addressing

This is to start discussion about issue 021:

    Does there need to be an extension for WSDL to explicitly call out
    the use of Addressing?

    http://www.w3.org/2002/ws/addr/wd-issues/#i021

Addressing being an important piece of the infrastructure of Web
services, we can foresee that most Web services agent will support
this extension.

The question is whether the use of addressing needs to be declared in
a WSDL document. As addressing becomes ubiquitous, pretty much every
WSDL description will want to declare its use (support or
requirement).

Not declaring the use of addressing in a WSDL document and using it
means that it is assumed — or hoped — that the other agent supports
addressing. Should we resolve this issue by deciding that we do not
need to declare addressing in WSDL 2.0 would basically be a statement
that addressing is part of the basic Web services infrastructure, i.e.
that a SOAP processor also supports addressing.

It is worth noting that a number of recent Web services specs
proposals published recently build on WS-Addressing without clearly
mentioning it, which backs this assumption.

Having said that, WSDL has an abstract-level (interface) and an
binding-level description. While it is conceivable to have a/the SOAP
binding support the addressing mechanism, it may not be the case for
other bindings, such as the HTTP binding defined in WSDL 2.0 Part 3.

Therefore, it seems that it is useful to have the ability to declare
its support and requirement both at the abstract-level and the
binding-level at least for bindings other than SOAP, just like any
other extension.

Consequently, we may want to give a URI to the WS-Addressing core
specification to identify the abstract addressing mechanism we define
and being able to declare its use at the interface-level.

With regards to the SOAP binding of our addressing mechanism, as we
are going to define a SOAP 1.2 module, we will be giving it a URI[1].
We then have two options:
- posit that SOAP 1.2+Addressing is the basis, and have the SOAP 1.2
  binding defined in WSDL 2.0 make this statement.
- use this URI to declare the use of addressing as a wsoap:module.

That leaves out the case of SOAP 1.1. WSDL 2.0 will define a SOAP 1.1
binding, so we can easily copy the decision taken for SOAP 1.2 in WSDL
2.0.

Note that this may be a case where we decide that SOAP 1.1 is legacy
and there may be SOAP 1.1 without addressing and where SOAP 1.2 +
addressing is the basis of the standardized, beautiful new Web
services space.

I believe that this issue is mainly about WSDL 2.0, since with regards
to WSDL 1.1, we will need to come up with either a new binding or a
new extension to declare the use of addressing, so it will have to be
explicitly called out anyway.

Regards,

Hugo

  1. http://www.w3.org/TR/2003/REC-soap12-part1-20030624/#soapmodules
-- 
Hugo Haas - W3C
mailto:hugo@w3.org - http://www.w3.org/People/Hugo/

Received on Wednesday, 3 November 2004 18:36:29 UTC