Re: block attribute and substitution groups

Interesting...

Are you looking at the schema 1.1 draft? I was answering using my memory of
schema 1.0. Seems this is a change between 1.0 and 1.1. I don't recall
off-hand whether this was intended. Need to dig up the history and possibly
talk to other members of the WG.

In 1.0, bullet 4 of "Element Declaration Properties Correct" refers to
"Type Derivation OK (Complex) (§3.4.6)". Neither constraint mentions the
{prohibited substitutions} property of the base type (type of the
{substitution group affiliation}). So in 1.0, your example schema is valid.
(But during instance validation, the constraint "Substitution Group OK
(Transitive)" is used, which does take into account "block" on the base
type.)

But in 1.1, bullet 4 refers to the definition of "validly substitutable",
which takes {prohibited substitutions} of the base type into account. So in
1.1, your example schema is invalid.

Thanks,
Sandy Gao
XML Technologies, IBM Canada
Editor, W3C XML Schema WG
Member, W3C SML WG
(1-905) 413-3255 T/L 313-3255



                                                                           
             Tobias Koenig                                                 
             <tobias.koenig@tr                                             
             olltech.com>                                               To 
             Sent by:                  xmlschema-dev@w3.org                
             xmlschema-dev-req                                          cc 
             uest@w3.org                                                   
                                                                   Subject 
                                       Re: block attribute and             
             07/01/2009 09:54          substitution groups                 
             AM                                                            
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           





On Wednesday 07 January 2009 15:36:05 Sandy Gao wrote:
Hej Sandy,

> The "validly substitutable" rule is checked when the instance is
validated,
> and not when the schema is built.
Ok, but why is it listed in rule 4) of Element Declaration Properties
Correct
which (as far as the 'Declaration' in the name suggests) should be tested
when the schema is built?

Ciao,
Tobias

Received on Wednesday, 7 January 2009 16:54:57 UTC