RE: [xml-dev] which xml schema tools do it right concerning including attributes xml:lang and xml:space

> ----- Original Message -----
> From: "Henry S. Thompson" <ht@cogsci.ed.ac.uk>
> To: "Dare Obasanjo" <dareo@microsoft.com>
> Cc: "Paul Hermans" <paul_hermans@protext.be>; 
> <xml-dev@lists.xml.org>; <xmlschema-dev@w3.org>
> Sent: Friday, April 19, 2002 2:27 AM
> Subject: Re: [xml-dev] which xml schema tools do it right 
> concerning including attributes xml:lang and xml:space
> 
> 
> (snip)
> >
> > XSV does the same, i.e. it only fetches one schema document per 
> > imported namespace, regardless of how many <import> elements it 
> > encounters.
> 
> Does this mean when you import a specific namespace, you need 
> to specify the top schema document.

This seems like the wisest thing to do and is not unreasonable given that there is the <xs:include> element. 

> For example, if you try to import two schema documents in the 
> same namespace, only the first import succeeds even the 
> second document does contain additional type definitions or 
> element declarations.
> 
> So, for the given example, people should use a proxy to 
> contain both documents and provide it to the schema processor 
> via the "import" schema component.  Am I right about this?

Or one document can <xs:include> the other which is standard operating practice for schema authors. 

> The point I try to bring up with is:
>    Should the schema processor decide whether to fetch a
>    schema document based on:
>      i) namespace only, or
>     ii) schemaLocation and namespace?
> 

The W3C XML Schema recommendation mentions how to treat schemaLocation in <xs:import>: 

"NOTE: The above is carefully worded so that multiple <import>ing of the same schema document will not constitute a violation of clause 2 of Schema Properties Correct (§3.15.6), but applications are allowed, indeed encouraged, to avoid <import>ing the same schema document more than once to forestall the necessity of establishing identity component by component. Given that the schemaLocation [attribute] is only a hint, it is open to applications to ignore all but the first <import> for a given namespace, regardless of the ·actual value· of schemaLocation, but such a strategy risks missing useful information when new schemaLocations are offered."

so only the first import matters since schemaLocation is ignorable anyway. 

Secondly the rules for locating schemas given a location are covered here 

	http://www.w3.org/TR/xmlschema-1/#schema_reference

-- 
PITHY WORDS OF WISDOM 
Your successes will happen in private and your failures in full view of everyone. 
 
This posting is provided "AS IS" with no warranties, and confers no rights. 
You assume all risk for your use. © 2002 Microsoft Corporation. All rights reserved.

Received on Friday, 19 April 2002 14:15:49 UTC