- From: David Booth <dbooth@w3.org>
- Date: Wed, 13 Apr 2005 13:37:53 -0400
- To: www-ws-desc@w3.org
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. 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. 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). 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 17:38:25 UTC