One contested feature of XML Schema is an attribute named xsi:type, which can be placed directly on XML instance data elements, even if a pre-existing Schema doesn't permit the attribute. For existing XML that uses this with simpleTypes, such as those described earlier in this chapter, this is a reasonable course. If the xsi:type identifies a complexType, however, all the problems in the previous section apply. For new development, the less intrusive XForms type model item property should be used, as described at Chapter 5, The XForms Model.
 In fact, it's not even possible in XML Schema to define where xsi:type attributes should or should not be allowed.