[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: xsi:type and unions
Hi Alessandro, > If an element E is defined of a type T, and there is a type U > derived by restriction from T, and U is a union whose member types > are A, B, and C, then: Since U is derived by restriction from T, T must also be a union whose member types include A, B and C (or supertypes of those types). > If an instance of element E appears with an xsi:type attribute, will > this attribute be interpreted only as asserting the type of E (e.g., > U), or can it also be used to identify the member type of U (A, B, > or C)? It can also be used to identify the member type of U (and T). The rules in Type Derivation OK (Simple) [1] apply. xsi:type="U" is OK because U is derived from T (meeting clause 2.2.1), and xsi:type="A" etc. are OK because T's variety is union and A is derived from one of the member definitions of T (meeting clause 2.2.4). (This is assuming that substitution by restriction hasn't been disallowed using the block attribute.) Cheers, Jeni P.S. Questions about XML Schema are usually best directed to xmlschema-dev@w.... [1] http://www.w3.org/TR/xmlschema-1/#cos-st-derived-ok --- Jeni Tennison http://www.jenitennison.com/
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|