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

Re: redefinition of SimpleType in nested schemas

From: Michael Kay <mike@saxonica.com>
Date: Wed, 22 Sep 2010 14:11:37 +0100
Message-ID: <4C9A0089.9020501@saxonica.com>
To: Marie Bilde Rasmussen <mariebilderas@gmail.com>
CC: xmlschema-dev@w3.org
  It seems you need the XSD 1.1 facility called xs:override, which is 
like xs:redefine except that there is no constraint that your overriding 
types should be in any way consistent with the things they override.

Michael Kay

On 22/09/2010 12:23 PM, Marie Bilde Rasmussen wrote:
> Hello.
> I have an xml schema, let's call it dictionary.xsd, describing general 
> structures and datatypes used in dictionaries. dictionary.xsd contains 
> a definition of a SimpleType called Subjects. The SimpleType is a 
> restriction of xs:string and it contains a long list of enumerations.
> Another - more specialized - schema, called Danish-English.xsd is 
> built upon dictionary.xsd. This is done by using <xs:include>.
> A third - even more specialized - schema, called 
> Danish-English-technical.xsd builds on it's turn upon 
> Danish-English.xsd, but this time I have chosen to use <xs:redefine>, 
> because in these special dictionaries, I need to modify the 
> SimpleType "Subject" by extension.
> I cannot figure out how to do this. I am not allowed to do so.
> This has worked for me with only one level of inclusion. Could the 
> fact that I want to redefine a schema on a level that is more than one 
> nesting leve l"away" be the problem?
> below I have tried to illustrate the nesting and the Type Definitions:
> Danish-English-technical.xsd (redefines SimpleType "Subjects")
> ->
> redefines
> Danish-English.xsd
> ->
> includes
> dictionary.xsd (declares SimpleType "Subjects" as a restriction of 
> xs:string by enumeration)
> I would be grateful for any input.
> Regards,
> Marie
Received on Wednesday, 22 September 2010 13:12:06 UTC

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