W3C home > Mailing lists > Public > www-ws-desc@w3.org > April 2005

RE: Contradictions regarding transitivity of wsdl:import

From: Martin Gudgin <mgudgin@microsoft.com>
Date: Wed, 13 Apr 2005 11:30:24 -0700
Message-ID: <DD35CC66F54D8248B6E04232892B6338056763BB@RED-MSG-43.redmond.corp.microsoft.com>
To: "David Booth" <dbooth@w3.org>, <www-ws-desc@w3.org>


> -----Original Message-----
> From: www-ws-desc-request@w3.org 
> [mailto:www-ws-desc-request@w3.org] On Behalf Of David Booth
> Sent: 13 April 2005 10:38
> To: www-ws-desc@w3.org
> Subject: Contradictions regarding transitivity of wsdl:import
> Statements in Part 1 about the meaning of wsdl:import appear to be 
> contradictory.  On one hand, sec 4.2 says that wsdl:import is not 
> transitive.  On the other hand, sec 2.1.1 says there is no difference 
> between included/imported components and components derived 
> directly from a 
> WSDL 2.0 document, and this logically leads to import being 
> transitive.

I don't understand why you would draw this conclusion. The only
difference between imported and included conmponents is that included
components are in one namespace and imported components are in another.

> Suppose WSDL document A imports WSDL document B, which imports WSDL 
> document C, which neither includes nor imports anything.  The 
> components of 
> C will be only the components derived directly from the XML 
> Infoset of 
> C.  Since B imports C, clearly the set of components for B 
> will include the 
> set of components for C.  

> So far so good.  But A now imports 
> B, so what 
> components will A have?  We have already established that the set of 
> components of B includes the set of components from C as a 
> subset.  

wsdl:import like xs:import is namespace based. The components defined in
C and not in the same namespace as the compontents defined in B and so
only the components from B are imported into A.

> Since 
> there is no distinction made between the subset of components that 
> originated in C and the other components, the components of A must 
> therefore also include the components of C as a subset.  This 
> contradicts 
> the statement that "wsdl:import is not transitive".
> The basic problem here is that the spec is referring to the 
> *components* of 
> the imported document.  Those components only exist if we 
> interpret the 
> meaning of the imported document according to the WSDL 2.0 
> specification, 
> at which point there is no way to know whether those imported 
> components 
> originated in the imported document or another document 
> (transitively).

Yes there is. As noted above the components defined in B are in one
namespace whereas the components B imports from C are in another
namespace. The wsdl:import in A specifies that it is importing
components in the namespace of B.

> Here are the relevant excerpts from the spec:
> Part 1 sec 4.2 Importing Descriptions
> http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl20/wsdl20
> .html?content-type=text/html;%20charset=utf-8#imports
> second paragraph says:
> [[
> Components in directly imported descriptions are part of the 
> component 
> model of the importing description. Directly imported means 
> that component 
> importation is not transitive; components imported by one of 
> the imported 
> documents are NOT available to the original importing 
> document unless the 
> are imported directly by that document.
> ]]
> But section 2.1.1 The Description Component
> http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl20/wsdl20
> .html?content-type=text/html;%20charset=utf-8#Description_details
> sixth paragraph says:
> [[
> The set of interfaces/binding/services/etc. available in the 
> Description 
> component include those that are defined within the component 
> itself and 
> those that are imported and/or included. Note that at the 
> component model 
> level, there is no distinction between directly defined 
> components vs. 
> imported/included components.
> ]]
> Furthermore, sec 2.1.3 Mapping Description's XML Representation to 
> Component Properties
> http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl20/wsdl20
> .html?content-type=text/html;%20charset=utf-8#Description_Mapping
> also shows no distinction between components that originated 
> in the WSDL 
> 2.0 document and components that originated in an 
> included/imported document.
> -- 
> David Booth
> W3C Fellow / Hewlett-Packard
> Telephone: +1.617.253.1273
Received on Wednesday, 13 April 2005 18:30:20 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:06:49 UTC