Re: Is "final" attribute inherited?

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

> But I still think that the spec must define inheritance behavior of
> "final" attribute because there are situations where the behavior
> reveals.
> 
> OK, my sample was not good.  However, "base" need not be an internal
> type at all. So what about this?
> 
> <simpleType name="foo">
>   <restriction base="base">
>     ....
>   </restriction>
> </simpleType>
> 
> <simpleType name="base" final="union">
>   <restriction base="string">
>     ....
>   </restriction>
> </simpleType>
> 
> Can "foo" be used to as a member type of union?

OK, now I get it -- good question.  It arises for complex type
definitions as well:

<complexType name="b1" final="extension">
 ...
</complexType>

<complexType name="b2">
 <complexContent>
  <restriction base="b1">...</restriction>
 </complexContent>
</complexType>

<complexType name="tt">
 <complexContent>
  <extension base="b2">...</extension>
 </complexContent>
</complexType>

The spec. as written doesn't rule this out, or your simple type
definition example above.

Whether it should is a separate question, which the WG will have to consider.
 
> Inheritance behavior has to be decided for all 6 patterns.
> 
> Is final="union" inherited to types derived by restriction?
> Is final="union" inherited to types derived by list?
> Is final="list" inherited to types derived by restriction?
> Is final="list" inherited to types derived by union?

These cases are not clear to me.

> Is final="restriction" inherited to types derived by list?
> Is final="restriction" inherited to types derived by union?

These cases are clearer, and I think the answer is 'no'.

Thanks for raising this.

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 Wednesday, 21 March 2001 05:15:51 UTC