Re: <restriction> is not actually a restriction

Kohsuke KAWAGUCHI <kohsuke.kawaguchi@sun.com> writes:

<snip/>

> There is another similar problem:
> 
> <xs:complexType name="B">
>   <xs:anyAttribute namespace="#all" processContents="lax"/>
>   <xs:attribute name="foo" type="xs:integer" use="optional"/>
> </xs:complexType>
> 
> <xs:complexType name="D">
>   <xs:complexContent>
>     <xs:restriction base="B">
>       <xs:attribute name="foo" type="xs:integer" use="prohibited" />
>     </xs:restriction>
>   </xs:complexContent>
> </xs:complexType>

> Even though @foo is prohibited explicitly, it is allowed because it's
> accepted by the #all wildcard. <XXX foo="str"/> is not valid with
> respect to B, but is valid with respect to D.

Good point.  That means the subset test needs to be applied to
attributes as well.

ht
-- 
  Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
          W3C Fellow 1999--2001, part-time member of W3C Team
     2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
	    Fax: (44) 131 650-4587, e-mail: ht@cogsci.ed.ac.uk
		     URL: http://www.ltg.ed.ac.uk/~ht/

Received on Tuesday, 27 November 2001 13:50:33 UTC