[Bug 4838] Chameleon <xs:include> behavior

http://www.w3.org/Bugs/Public/show_bug.cgi?id=4838





------- Comment #1 from mike@saxonica.com  2007-07-06 15:06 -------
There's a deep root cause to all such problems, which is confusion about
whether you are including a schema document or a set of components. Sometimes
the spec writer seems to be under the impression that you go fetch the
document, construct some components, and then include the components. That
doesn't work of course because you haven't got enough information at this stage
to finish constructing the components, for example you don't know the variety
of a simple type until you've found its base type.

For this particular problem the informal prose seems a good place to start:
"the <include>d schema document is converted to the <include>ing schema
document's targetNamespace." I think we get most sanity if we treat it as a
syntactic transformation applied to the schema document before doing any
semantic analysis or component building. That's Sandy's "as if" rule. 

Perhaps the XYZ corner case should be handled by simply dropping the rule that
you can't import your own namespace - instead, any such import is treated
unconditionally as an include.

Received on Friday, 6 July 2007 15:06:49 UTC