W3C home > Mailing lists > Public > xmlschema-dev@w3.org > October 2004

Including Chameleon Schemas

From: Paul Spencer <paul.spencer@boynings.co.uk>
Date: Wed, 27 Oct 2004 10:09:37 +0100
To: <xmlschema-dev@w3.org>
Message-ID: <NBBBIBMKFOFCNEBAKDPLIELLIPAA.paul.spencer@boynings.co.uk>

XML Schema part 1 says that:

The ·XML Schema· corresponding to <schema> contains not only the components
corresponding to its definition and declaration [children], but also all the
components of all the ·XML Schemas· corresponding to any <include>d schema
documents. Such included schema documents must either (a) have the same
targetNamespace as the <include>ing schema document, or (b) no
targetNamespace at all, in which case the <include>d schema document is
converted to the <include>ing schema document's targetNamespace.

My question relates to the meaning of "converted" in the last line. Does
this mean just that the definitions and declarations in the <include>d
schema document belong in the targetNamespace of the <include>ing schema
document, or that references to these definitions and declarations in the
<include>d schema document also change to reference the new namespace? In
other words, the <include>d schema document behaves as though there were a
targetNamespace declaration *and a defaultNamespace declaration with the
same URI*. I suspect just the former, in which case the <include>d schema
document cannot reference it's own definitions and declarations.

I have noticed that the MS .NET parser seems to interpret this by the
stricter definition, but that others do not. I have been arguing on and off
with others about this for years, but have never had a definitive answer and
cannot find anything in the archives.

Regards

Paul Spencer
Received on Wednesday, 27 October 2004 09:15:30 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 5 February 2014 07:15:11 UTC