Re: Is schemaLocation Required When Importing Inline Schemas?

Hmm.  Either I don't understand, or this isn't a valid case.

On Wed, 30 Mar 2005 10:17:39 -0800
Anish Karmarkar <Anish.Karmarkar@oracle.com> wrote:
> For example, wsdl1 imports wsdl2 and wsdl2 contains a definition of a 
> complexType {http://example.com/type}bar that is well know and cached by 

wsdl1 can't see the types defined in schemas inside wsdl2 if it imports
wsdl2.  It can see those if it includes it (arrrgggggghhhhhhh!).  That
is, change the above to "wsdl2 contains an import or embed of a schema
which contains a definition of a complexType ...".

> the processor processing wsdl1. wsdl1 does not use/reference any 
> constructs defined in wsdl2 that use {http://example.com/type}bar, but 
> wsdl1 does directly reference {http://example.com/type}bar complexType 

It can't see the schema.  An embedded schema (as I understand it) is
equivalent to an imported schema.  Consequently, if wsdl1 imports
wsdl2, it can only see the "implicit exports" of wsdl2, not the stuff
that wsdl2 imports.

> (and does the relevant import of the namespace).
> In the above case, the processor processing wsdl1 should be allowed to 
> ignore the inline definition of the complexType 
> {http://example.com/type}bar in wsdl2.

Err.  wsdl1, if it wants to use {http://example.com/type}bar, must
import the schema from somewhere.  It can't see wsdl2's imported/
embedded schemata (unless I've misunderstood things again, *sigh*, but
it certainly *ought* to be the case that an embedded schema is treated
as though it were an "inlined import": easy to understand and explain).

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

Received on Wednesday, 30 March 2005 20:00:43 UTC