Hi Stanley, > 3.3.4 Element Declaration Validation Rules > > 4.3 The ·local type definition· must be validly derived from the > {type definition} given the union of the {disallowed substitutions} > and the {type definition}'s {prohibited substitutions}, as defined > in Type Derivation OK (Complex) (§3.4.6) (if it is a complex type > definition), or given {disallowed substitutions} as defined in Type > Derivation OK (Simple) (§3.14.6) (if it is a simple type definition). > > Does anyone know what this "{disallowed substitutions}as defined in > Type Derivation OK (Simple)" is? I think the root of the problem is that you've phrased the sentence incorrectly. For simple type definitions, read it as: 4.3 The ·local type definition· must be validly derived from the {type definition}, given {disallowed substitutions}, as defined in Type Derivation OK (Simple) (§3.14.6). In other words, the {disallowed substitutions} are the {disallowed substitutions} of the element declaration. How a set of disallowed substitutions affects whether a type derivation is valid or not is explained in Section 3.14.6 (Type Derivation OK (Simple)). Basically, if an element's got a xsi:type attribute, then the type that you name has to be a valid derivation from the type declared for the element. If that type is a simple type, then the value of the 'block' attribute on the element declaration determines what kinds of derivations are legal. I don't know why complex types have their own set of prohibited substitutions but simple types don't... Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/Received on Friday, 4 January 2002 14:57:54 GMT
This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 11 January 2011 00:14:26 GMT