Non-primitive built-in simple types

Hello,

I'd need some clarification about the status of non-primitive built-in 
simple types.

Reading paragraph 2.5.3 of XML Schema Part 2, I thought that these types 
were only predefined for convenience, which means that equivalent types 
could be defined by users. Now, a closer look at the definition for e.g.
integer makes me believe this is not the case:

<<
integer is ·derived· from decimal by fixing the value of 
·fractionDigits· to be 0and disallowing the trailing decimal point.
 >>

(btw, there is a missing whitespace after 0)

The facet fractionDigits only restricts the value space, not directly 
the lexical space, so setting it to 0 does not disallow the trailing 
decimal point. This could be done using the pattern facet, but the 
definition does not mention this facet.

So, I guess my question is: Are derived built-in types really
conceptually the same as user-derived types, or is there some additional 
magic in their definition?

-- Alain

Received on Tuesday, 26 July 2005 13:19:01 UTC