- From: Michael Kay <mike@saxonica.com>
 - Date: Wed, 12 Nov 2008 15:48:18 -0000
 - To: "'Tobias Koenig'" <tobias.koenig@trolltech.com>, <public-xml-schema-testsuite@w3.org>
 
> in schema 1.1 spec there is stated under Schema Component Constraint: 
> Substitution Group OK (Transitive):
> 
>   2.1  H. {disallowed substitutions} does not contain substitution.
> 
> According to that test case disallowedSubst00101m would be 
> invalid, however it is marked as valid and saxon conformance 
> result lists it as valid as well...
> So why it is valid?!? The head element contains 
> 'substitution' in its disallowed substitution property.
For reasons which I don't claim to understand, violation of this constraint
does not invalidate a schema, it only invalidates an instance. Specifically,
the constraint is only referenced from validation rules, and not from the
rules determining schema validity.
Given
  element A
  element B substitutionGroup=A block=substitution
  element C substitutionGroup=B
An instance of C is allowed to substitute for A, but not for B.
This spec moves in mysterious ways...
Michael Kay
http://www.saxonica.com/
Received on Wednesday, 12 November 2008 15:48:58 UTC