使用 xsi:type

如果 XML 文件中具有其类型为复杂类型的元素,则 XML 编辑器中的 xsi:type 支持让您可以在该复杂类型与从该复杂类型派生的任何其它复杂类型之间进行选择。

XML 模式规范允许您通过扩展派生类型。例如,您具有一个 XML 模式且为它创建名为 Address 的复杂类型。然后将一些基本元素添加至 Address,如 streetNamecity

此后,您从 Address 派生(通过扩展)两个新的复杂类型 - USAddressUKAddress。您将称为 state 的新元素添加至 USAddress,还将称为 postcode 的新元素添加至 UKAddress

完成以上操作之后,您又创建两个元素(billToshipTo)作为 Address 类型。

当为诸如 billToAddress 之类的元素创建 XML 实例文档时,xsi:type 属性就会被自动添加至该文档。例如:

<billTo xsi:type="ipo:Address">

xsi:type 属性用来标识派生的复杂类型(以及从其进行派生的复杂类型)。

在 XML 编辑器的“设计”视图中,将提供一个列表,让您选择适当的类型定义(AddressUSAddressUKAddress)。内容模型的指导编辑将反映您选择的类型定义。例如,如果您选择 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 部分。

使用条款 | 反馈
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.