- From: C. M. Sperberg-McQueen <cmsmcq@acm.org>
- Date: Thu, 28 Aug 2003 08:54:58 -0600
- To: W3C XML Schema Comments list <www-xml-schema-comments@w3.org>
In June, the XML Schema WG briefly discussed cases like the following: XSD1: <schema ...> <complexType name="CT"> ... </schema> XSD2: <schema ...> <redefine schemaLocation="XSD1"> <!--* CT in XSD2 is vacuous restriction of CT in XSD1 *--> <complexType name="CT"> <restriction base="CT"/> </complexType> </redefine> </schema> XSD3: <schema ...> <import schemaLocation="XSD1"/> <import schemaLocation="XSD2"/> </schema> Several questions arise: (1) is this legal or not, in XML Schema 1.0? (2) regardless of the answer to (1), SHOULD this be legal in XML Schema? One position one could take is that since the CT of XSD1 and the CT of XSD2 are as similar as one can make them (same name, same extension), the double import really should be legal. Another possible position is that if one wanted them to be identical one would not have redefined CD in XSD2 -- just as vacuous restrictions can be used to block certain substitutions by imposing a certain structure on the type hierarchy, so the vacuous restriction here should be allowed, and should not be treated differently from a non-vacuous restriction. When this came up in June, some WG members offered an analysis of this case which led them to conclude that the example is not legal; I never understood the details. Can anyone expound? Depending on what the WG decides to do, this topic might turn into an error report on 1.0 or a requirement for 1.1, or a no-action-needed. -CMSMcQ
Received on Thursday, 28 August 2003 10:55:19 UTC