Inlining/Importing XML Schema into a WSDL 2.0 Description

Hi Gurus,

Two questions. Both of these questions are related. Question (2) is a
really spin off from the observation I have from question (1).

Question 1
-----------------
Paragraph 2 of Section 3.2.1 [Inlining XML Schema] states "Only components
defined and declared in the schema itself and components included by it via
xs:include are referenceable. Specifically components that the schema
imports via xs:import are NOT referenceable.".

Does this mean that the elements within the inlined XSD should also have
their type definitions in the same XSD ? [i have this question because I see
the words "defined and declared" in the earlier statement]
If this is the case, if you are inlining a schema, then it would be of "no
use" to import an XSD into the inline schema, if the spec mandates that the
definition has to be within the same XSD. This is because the user intent to
import an XSD wd be to borrow some components [in this case, types]  from
the foreign namespace, for use as definition of elements in the main XSD,
and this is precisely what is not allowed. :-) So, pretty much imports would
be and should be absent in the inline XSDs. [since they offer no use]

Question 2
------------------
Paragraph 1 of Section 3.1.1 [Importing XML Schema] of Part 1 states "Only
components in the imported namespace are referenceable in the WSDL 2.0document."

I have a few questions regarding this statement

a) Does this imply that the type definition of the element also needs to be
within the imported namespace ? I assume not. [If yes, whats the real
rationale ?]
b) If (a) is false [i.e. there is no such restriction], does the type
definition needs to be within the same XSD ? Can it be defined within one of
the XSDs imported within the main XSD?      I assume so. This is attributed
to the fact that this XSD maybe re-used by other applications, and may
best be unmodified.  [If its disallowed, whats the real rationale ?]

Be it true/false, would it be better to state this explicitly in the
specification ? I assume that if my observation about (a) is true, we may
not explicitly state it. But the fact about (b) is something that could be
mentioned in the spec, esp. because the specification states about more
retrictive semantics on inlining of the XSD.[it says that "Only components
"defined and declared" in the schema itself and components included by it
via xs:include are referenceable.". I assume that this means that the type
definition of these elements need to be in the same XSD]

Maybe both of these are simple editorial queries, but also wondering if the
semantics are clear.

I hope I havent made my questions too complex :-).

rgds,
Ram
-- 
Shift to the left, shift to the right!
Pop up, push down, byte, byte, byte!

-Ramkumar Menon
A typical Macroprocessor

Received on Tuesday, 26 September 2006 20:31:04 UTC