Re: importing docs in the same namespace

On Fri, 2002-10-04 at 17:18, Sanjiva Weerawarana wrote:
> In WSDL 1.1 the XSD-like-import semantics were chosen because
> that was presumed to do the right thing for what WSDL needed. 
> However, if it doesn't, then I see absolutely *NO* reason for
> retaining that similarity. 
> 
[snip]
> I'd like to get back to the original problem: WSDL 1.1 had a certain
> authoring style which was prominently indicated by the spec. However,
> it turned out that the statement "it works like" schema was incorrect
> w.r.t. that authoring style. Note that even the original UDDI/WSDL
> best practices document used precisely that split.
> 
> I think we should throw away the "it works like XSD import except
> that the location is required" and just define our own semantics
> which allows importing documents from the same namespace.

I've been following this, and wondering.  So I went to look at the WSDL
1.1 specification.  If I understand Sanjiva's point here, the argument
is that WSDL 1.1 permits import of multiple documents with the same
namespace.  I cannot find any justification for that.

In section 2.1.1, no direct linkage is made between the targetNamespace
attribute of an imported WSDL and the namespace attribute of the import
element, so I suppose it is possible to assign different values to these
two attributes.

In section 2.1.2, the example specification quite clearly assigns
different namespaces (matching targetNamespace attribute on definitions
with namespace attribute on import) to each of the sections of which the
WSDL is composed.

Appendix A, Section 1.1, suggests that one namespace URI may be
associated with multiple schemas, but further states that the processor
must disambiguate.  It then suggests that WSDL import works the same
way, which would suggest that multiple imports of the same namespace are
not legal.

In the schema (A 4.1), which I understand to be non-normative, import is
given a key, based on namespace, strongly implying that all of the
namespace attributes should be unique.  If import/@namespace maps to
imported definitions/@targetNamespace (which is not required by the
language of the 1.1 spec, it appears, but does seem to be the expected
behavior, and the content of all supplied examples), then there is no
justification here for importing multiple documents with the same
namespace.

So, I'm hoping for a clarification: did the UDDI folks use a style in
which import/@namespace != definitions/@targetNamespace, and
definitions/@targetNamespace was not unique?  Or is there another
example of current best practices in which import/@namespace is not
unique, or imported definitions/@targetNamespace != import/@namespace?

Amy!
-- 
Amelia A. Lewis
Architect, TIBCO/Extensibility, Inc.
alewis@tibco.com

Received on Monday, 7 October 2002 10:54:35 UTC