W3C home > Mailing lists > Public > xmlschema-dev@w3.org > July 2003

Re: XML Schema compliance

From: Jeni Tennison <jeni@jenitennison.com>
Date: Fri, 4 Jul 2003 11:03:28 +0100
Message-ID: <136135349001.20030704110328@jenitennison.com>
To: "Savas Parastatidis" <Savas.Parastatidis@newcastle.ac.uk>
CC: "Henry S. Thompson" <ht@cogsci.ed.ac.uk>, xmlschema-dev@w3.org, "Jim Webber" <jim.webber@arjuna.com>, "Paul Watson" <Paul.Watson@newcastle.ac.uk>

Hi Savas,

> Doesn't importing the XML Schema-for-Schema under the schema
> namespace (http://www.w3.org/2001/XMLSchema) will cause a problem
> with the redefinition (in the same namespace) of all the XML Schema
> elements?
>
> What I mean is that the {element}, {schema}, etc. infoset components
> are already defined in the http://www.w3.org/2001/XMLSchema. It is
> assumed that the XML Schema processor "knows" about these infoset
> components. Doesn't importing the Schema-for-Schemas redefine these
> infoset components since the "name" and "namespace" properties match
> for all the components? If this assertion is true, then importing
> the Schema-for-Schemas shouldn't be allowed.

No, there's no confusion. The Schema-for-Schemas is a schema for the
XML representation of the XML Schema language,, not the infoset-level
schema components that they specify. The Schema-for-Schema defines
things like "the <xs:element> element declaration schema components".
The stuff that's built-in to an XML Schema processor is information
about "element declaration schema components" *in*general*.

Put another way, a schema processor needs to know that there are
things known as "element declaration schema components" that have
properties like {name} and {target namespace}. If you're familiar with
OO programming, you can think of this as like the object definition.

The Schema-for-Schema (and indeed any schema) specifies a set of
instances of these objects. For example, the Schema-for-Schema
includes an instance of an element declaration schema component whose
{name} is "element" and whose {target namespace} is
"http://www.w3.org/2001/XMLSchema".

Cheers,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/
Received on Friday, 4 July 2003 06:03:34 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 11 January 2011 00:14:39 GMT