New Issue: wsdl location and service reference

Hi,

Please find below Umit's description of a new issue concerning wsdl 
location and service references, and a proposal for dealing with it.
It came out of the meeting last thursday, I'm posting it now because she 
won't have email access until wed, and I just got my email access back.

jeff

 From umit:

Per today's concall, Jonathan was suggesting that we don't have an
issue on this topic. So here it is.

When service references are contained within a message, they may need
refer to WSDL components (such as interfaces and/or bindings) that are
not part of definition itself, but are defined by other WSDL
documents. The components, such as an interface, are referred to by
QName. These components that are referenced must be
resolvable. Therefore, we need to define a mechanism that indicates
the actual location of WSDL documents for each namespace that is
utilized in a service reference from component QNames.

Note that we will have a recommendation in the specification to
provide the WSDL document that defines components in a given namespace
at the namespace location. However, this is not a requirement, only a
recommendation. Hence, we need a hint to specify this for service
references.

I raise this as an issue. My proposed solution for this problem that
specifies a minimal set of changes to the Part1 document is below.

Proposed Solution:

- We define a new attribute named wsdlLocation.

- This is an optional attribute to be included in wsdl:ServiceType in
WSDL schema.

- This attribute is defined as a simple type, by a list of xs:anyURIs.

- The attribute value is a list of namespace and location pairs. It
provides a hint that indicates the location of a WSDL document for
each namespace that is in the list.

Note: The definition of the attribute is similar to XML Schema defined
xsi:schemaLocation attribute, but in contrast defined within the WSDL
namespace and it is local.

Formally, this introduces the following changes to Part 1:

- Section 2.12.1 should include an additional property, wsdlLocation as a a 
list of URIs.
- Section 2.12.2 should change the third bullet as:

	Two or more attribute information items amongst its [attributes] as follows:

	- A REQUIRED name attribute information item as described below in
          2.12.2.1 name attribute information item with service [owner].

	- A REQUIRED interface attribute information item as described below in
          2.12.2.2 interface attribute information item with service [owner].

	- An OPTIONAL wsdlLocation attribute information item as described
          below in 2.12.3. wsdlLocation attribute information item with
          service [owner].

	Zero or more namespace qualified attribute information items. The
	[namespace name] of such attribute information items MUST NOT be
	"http://www.w3.org/@@@@/@@/wsdl".

- Add the following section:

2.12.2.3 wsdlLocation attribute information item with service [owner]

The wsdlLocation attribute information item provides a hint for
resolve the WSDL component references identified by QNames within the
service. It is expected to be used only by a service reference.

The wsdlLocation attribute information item has the following Infoset 
properties:

- A [local name] of wsdlLocation
- A [namespace name] which has no value

The type of the wsdlLocation attribute information item is a list of
xs:anyURIs. Its value is a list of namespace and location pairs, where
the location URI designates the physical location of a WSDL that is
defined by the namespace.

--
Umit Yalcinalp
Consulting Member of Technical Staff
ORACLE
Phone: +1 650 607 6154
Email: umit.yalcinalp@oracle.com
Jeff Mischkinsky                      jeff.mischkinsky@oracle.com
Consulting Member Technical Staff     +1(650)506-1975
Director, Web Services Standards      500 Oracle Parkway M/S 4OP9
Oracle Corporation                    Redwood Shores, CA 94065

Received on Sunday, 29 February 2004 20:53:22 UTC