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

Re: Cross-references among included schema documents

From: Xan Gregg <xan.gregg@jmp.com>
Date: Mon, 27 Sep 2004 11:25:03 -0400
Message-Id: <67A2EF9D-1099-11D9-A57A-000A95B51846@jmp.com>
Cc: "'Henry S. Thompson'" <ht@inf.ed.ac.uk>, <xmlschema-dev@w3.org>
To: "Michael Kay" <mhk@mhk.me.uk>

On Sep 27, 2004, at 10:36 AM, Michael Kay wrote:
>> It allows you to do so in the context of the schema corresponding to
>> A.
>
> I don't see how one can read it that way. It specifically requires the 
> QName to be resolved to a component that belongs to the schema 
> corresponding to the document containing the QName.
>

I think you're right, and it's an error in the spec.  Any appeal to "a 
schema corresponding to a schema document" appears suspect to me.  What 
I think the constraint is really trying to say is that the QName user 
and the resolved component must be in the same schema.

Looking at the QName resolution rules, I can't see how references to 
built-in types work without an explicit <import> for the XML Schema 
namespace.  Must be missing something elsewhere.

> In practice I am looking for guidance as to what schema I should be 
> using
> for resolution. Is it the schema being used for validity assessment 
> (of an
> instance)? But that doesn't work either, because if the schema used for
> assessment is S, and S imports T, and T imports A, and A includes B 
> and C,
> and B contains a reference to a component X defined in C, then X will 
> not be
> a member of the set of components in S.

I would think X is a member of C, so X is a member of A, so X is a 
member of T, so X is a member is S.  However, commponents in S.XSD 
cannot reference X because there is no <import> in S.XSD for the 
namespace of X (Rule 4 of 3.15.3).

xan
Received on Monday, 27 September 2004 15:25:14 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 14:56:06 UTC