Re: XML Schema compliance

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 UTC