Altova XMLSpy 2023 Professional Edition

一个XML Schema的一个或多个组件可以被创建为单独的Schema文件,称为Schema子集。用较小的Schema子集组成较大的Schema(通过Include),其优点在于较小的文件比单个完整的Schema更易于管理。

 

以下工作场景描述了在Schema视图中Schema子集功能的各个方面:

 

1.创建一个包含活动Schema的一个或多个组件的Schema子集。下面描述了如何执行这一操作。

2.根据需要创建额外的Schema子集。

3.包括新创建的Schema子集,以组成更大的Schema。为此,请在“Schema概览”窗口中追加或插入Include组件,并选择新创建的Schema子集文件,对每个Schema子集执行上述操作。

4.删除任何在原来的完整Schema中存在的、但现在因为包括子集而重复的组件。

 

您还可以在Schema视图中执行反向操作,即展平包括的Schema子集,以便:(i) Schema子集中包含的组件被直接添加到主Schema中,以及(ii) 包括的Schema子集从主Schema中被删除。下方进一步描述了如何展平Schema。

 

创建Schema子集

要创建Schema子集,请执行以下操作:

 

1.在Schema视图中使所需的XML Schema处于活动状态,并选择命令Schema设计 | 创建Schema子集。这将弹出“选择Schema组件”对话框(参见下方截图)。

2.在对话框中,选中您希望作为单个Schema子集创建的组件,然后单击下一步。(请注意,选中窗格下方的复选框将列出所有被引用的文件中的组件,以供选择。)

SchSubsetsSelectComponents

3.在出现的“生成Schema子集”对话框(参见下方截图)中,输入您希望Schema子集包的文件具有的名称。您还必须指定一个文件夹,在其中保存新的Schema子集文件。如果正在创建的一个或多个组件是原始Schema中导入的组件,则Schema子集包可能具有多个文件。为Schema子集中的每个命名空间创建一个单独的Schema文件。默认情况下,对话框中显示的文件名称是原始文件的名称。由于不允许覆盖原始文件,如果您希望将文件保存在原始文件所在的文件夹中,请使用新的文件名。

SchSubsetsGeneration

4.单击确定后,带有与活动文件相对应的命名空间的Schema子集文件将在Schema视图中打开。包中的任何其他文件都已创建,但未在Schema视图中打开。

 

展平Schema

在Schema视图中展平活动Schema的过程如下:(i) 将所有包括的Schema的组件作为活动Schema的全局组件添加; (ii) 删除包括的Schema。

 

要展平活动Schema,请选择命令Schema设计 | 展平Schema。这将弹出“展平Schema”对话框(参见下方截图),其中包含了单独的文件的名称,每个命名空间都有一个文件,将在展平的Schema中出现。这些默认名称与原始文件名相同。但是,由于不允许覆盖原始文件,如果您希望保存在活动文件所在的文件夹中,则必须更改文件名。您可以浏览文件夹,其中可以保存展平的Schema及其关联文件。

SchSubsetsFlatten

单击确定后,展平的Schema将在Schema视图中打开。

 

© 2017-2023 Altova GmbH