- From: Werner Guttmann <werner.guttmann@gmx.net>
- Date: Fri, 22 Sep 2006 21:19:43 +0200
- To: Michael Kay <mike@saxonica.com>
- CC: xmlschema-dev@w3.org, 'Reinhard Pötz' <reinhard.poetz@gmx.net>
Thanks, Michael, for spelling this out so very 'user friednly' .. ;-). Werner Michael Kay wrote: >> when restricting a complex type, is it actually allowed (at >> all) to change the type of an attribute defined at the >> complex type to be restricted ? >> > > Yes, subject to the rules in > http://www.w3.org/TR/xmlschema-1/#derivation-ok-restriction > > To paraphrase the rules: > > 2.1.1, 3 if there's an attribute that's required in the base type then it > must be present (and required) in the derived type > > 2.1.2 the type of the attribute in the derived type must be a restriction of > the type of the corresponding attribute in the base type > > 2.1.3 if the base type specifies a fixed value, then the derived type must > specify the same fixed value. > > (Wouldn't it be nice if the spec were written like that, instead of saying > things like "what would have been the {name} and {target namespace} of the > {attribute declaration} of an attribute use in the set per clause 1 above > but for the ·actual value· of the use [attribute] of the relevant > <attribute> among the [children] of <restriction> being prohibited.") > > Remember of course, that unlike child elements, attributes are automatically > inherited from the base type unless you explicitly exclude them (an > asymmetry I've always found very ugly). > > Michael Kay > http://www.saxonica.com/ > >
Received on Friday, 22 September 2006 21:12:56 UTC