RE: simpleTypes and final

Thanks for the answer Paul.  But this prompts the following question:

If the base type included several enumeration element information items as
the way to define its value space, and only some of them had fixed="true",
what would this mean?

Now turning to "aesthetics" (by which I mean, are the various features of
the schema language symmetric with each other, so I don't have to remember
too many special cases):

It appears to me that the design in the CR specs is an assymetry between
complexType's and simpleType's.  complexType final="true" not only says you
can't change the content model in a derived type, but that you can't even
have something identical but which just has a new name (and whose name
might appear in instance documents using the xsi:type attribute, or might
"inherit" the ability to be considered part of a substitution group (I am
not sure Structures allows this ... but that takes us too far afield)).
Although you are correct that I can put fixed="true" on every facet of a
simpleType, this still does not prevent someone from deriving something
with identical facets and giving it a new name.

And if anyone uses your algorithm of putting fixed="true" on every facet
(as a way of saying: do not derive from this type), and a few years from
now we have Schema Language 2.0 which defines additional facets (e.g. units
or dimensions or whatever), I'll have to remember not only to change the
namespace for the schema language but to add to my simpleType the defaults
for the new facets along with "fixed=true".

Thanks,
Bob Schloss
IBM Thomas J. Watson Research Center

Received on Wednesday, 25 October 2000 17:54:01 UTC