如果您的 XML 檔中的元素類型是複式類型,XML 編輯器中的 xsi:type 支援便可讓您從該複式類型及其衍生的其他複式類型之間做選擇。
XML 綱目規格可讓您藉由延伸來衍生類型。例如,您有一個 XML 綱目,而且您還為它建立一個稱為 Address 的複式類型。之後,您又將一些基本元素新增至 Address 中(如 streetName 和 city)。
之後,您(藉由延伸)從 Address - USAddress 和 UKAddress 衍生兩個新的複式類型。此外,您還將一個稱為 state 的新元素新增至 USAddress 中, 並將一個稱為 postcode 的新元素新增至 UKAddress 中。
在完成這項作業之後,您可以建立兩個屬於 Address 類型的元素:billTo 和 shipTo。
當您為某元素(如 billTo 或 Address)建立 XML 實例文件時,會自動在元素中加入 xsi:type 屬性。比方說:
<billTo xsi:type="ipo:Address">
該 xsi:type 屬性可用來識別衍生的複式類型(並識別作為衍生來源的複式類型)。
XML 編輯器的「設計」視圖中有一份清單,可讓您選取適當的類型定義(Address、USAddress 或 UKAddress)。 內容模型引導編輯會反映您所選擇的類型定義。比方說,如果您選取 USAddress,則 billTo 元素可包含 state 元素,但不可包含 postcode 元素。
XML 範例「編輯和驗證 XML 檔」中示範了 xsi:type 支援。
如果需要關於 xsi:type 的詳細資訊,請參閱 XML Schema Part 0: Primer 的 Using Derived Types in Instance Documents 一節。
如果需要使用 xsi:type 時之驗證語意的詳細資訊,請參閱 XML Schema Part 1: Structures 的 Schema-Related Markup in Documents Being Validated 一節。