- From: Kohsuke KAWAGUCHI <kohsukekawaguchi@yahoo.com>
- Date: Tue, 31 Jul 2001 20:04:01 -0700
- To: "xmlschema-dev@w3.org" <xmlschema-dev@w3.org>
Hi, I have a problem understanding the effect of the block attribute. Assume the following complex type hierarchy. B / \ /r \e / \ Dr De / \ /r \e / \ Drr Dre Dr is derived from B by restriction, De is from B by extension, Drr is from Dr by restriction, and Dre is from Dr by extension. Assume an element declaration E, which designates B as the type definition. Now say E has block="extension" (or D has block="extension"). It seems to me that the spec prohibits <E xsi:type="Dre"> ... </E> Because the chain from B to Dre contains "extension" and therefore Dre is rejected by "Type Derivation OK (Complex)" check. It depends on the meaning of the sentence of term 2.3.2.1 of that check: "If D's {base type definition} is complex, then it must be validly derived from B given the subset as defined by this constraint." But honestly I don't understand what "as defined by this constraint" means. Is my understanding correct? Any comment would be greatly appreciated. regards, ---------------------- K.Kawaguchi E-Mail: kohsukekawaguchi@yahoo.com
Received on Tuesday, 31 July 2001 23:03:47 UTC