Re: Schemas in imported WSDL

On Thu, 13 Nov 2003 08:18:43 -0800
Martin Gudgin <> wrote:
> Given WSDL A importing WSDL B which either imports or declares inline
> Schema C then only *WSDL* constructs defined in WSDL B are visible to
> WSDL A. The schema constructs defined in Schema C are only visible to
> WSDL B, they are not visible to WSDL A.
> Note that this DOES NOT stop you using the WSDL constructs from WSDL B
> in WSDL A. So if you have an interface in WSDL B that uses types in
> Schema C, you can define a binding for that interface in WSDL A.
> It DOES stop you defining a new interface in WSDL A that references
> schema constructs in Schema C.

Completely agree that this *is* the current semantic, and that it
*should be* the semantic.

If you want the schema to be made available to multiple WSDLs, create it
standalone and import.  One of the semantics of inlining/embedding a
schema (in my opinion) is to say "mine, mine, my schema, mine, mine,
mine!"  Hands off; don't touch; For Internal Use Only; No
User-Serviceable Parts Inside.  It is useful to be able to say this.  If
it were the only thing that could be said, then it would be a problem,
but it isn't.  If it's intended for reuse, put it where it can be
reused.  If it's in a private location, then it's perfectly sensible
that it's only available for private use.

Amelia A. Lewis
Architect, TIBCO/Extensibility, Inc.

Received on Thursday, 13 November 2003 11:46:21 UTC