当 XML 模式根据派生类型定义 XML 元素时,必须指定运行时期间期望的派生类型(或替换类型)。
关于此任务
XML 模式规范支持通过扩展派生复杂类型。有关类型替换以及在映射窗格中使用类型替换的更多一般信息,请参阅选择替换类型。
当 XML 模式根据派生类型定义 XML 元素时,必须指定运行时期间期望的派生类型(或替换类型)。在 Studio 中,必须使用以下过程中所述的将节点替换为...菜单选项,为变量的 XML 元素指定期望的替换类型。
要选择变量的替换类型:
过程
- 上载 XML 模式(包含基于派生类型的 XML 元素)至项目。要了解更多的信息,请参阅将文件上载到项目中。
- 创建变量,该变量包含基于派生类型的 XML 元素。
与节点关联的模式会显示在变量选项卡的“...的模式”窗格中。
对于选择替换类型中提供的示例 XML 模式,请根据 <shape> 元素创建变量。
与 <shape> 元素关联的模式会显示在变量选项卡的“...的模式”窗格中,如图 1 所示:
图 1. “...的模式”窗格中显示与 shape 元素关联的模式
请注意在“...的模式”窗格中未列出派生类型的子元素。在该示例中,未列出
circle 的子元素(diameter),也未列出 rectangle 的子元素(width 和 length)。
- 在变量选项卡的“...的模式”窗格中,右键单击节点并从菜单中选择将节点替换为... 选项,选择运行时期间期望的派生类型。
这样会显示“将节点替换为派生类型”对话框。菜单中列出了 XML 模式所定义的节点的可用派生类型。对于该示例,您可以通过菜单使用两种派生类型,如图 2 所示:
图 2. 该图显示了节点的两种派生类型:circle 和 rectangle。
- 选择其中一种派生类型。所选派生类型可确定运行时期间 XML 实例文档的期望类型。
在该示例中,选择了 circle 派生类型,因此,运行时期间该变量的期望 XML 数据类型为 circle。
除基本类型的子元素外,在“...的模式”窗格中还显示了派生类型的子元素。
在该示例中,变量选项卡的“...的模式”窗格中
显示了子元素 diameter 和子元素 color(由基本类型继承而来),如图 3 所示:
图 3. 变量选项卡
下一步做什么
使用
将节点替换为... 选项为变量节点选择了派生类型后,即可通过右键单击该节点,并从菜单中选择
取消替换节点选项,来除去变量节点与派生类型间的关联。这样会打开“
取消替换”对话框。单击
是。