内容模型是元素、全局元素、复杂类型或组内可包含的任何数据的表示。它是元素、全局元素、复杂类型或组的结构和可能内容的正式描述,可用来验证文档实例。
有三种不同类型的内容模型:
- 序列,它表示所有内容模型的子代都可以出现在 XML 模式的一个实例中。但是,它们必须按内容模型列示的顺序出现。
- 选项,它表示只有一个内容模型的子代可以出现在 XML 模式的一个实例中。
- 全部,它表示所有内容模型的子代可按任何顺序出现一次也可以不出现。如果选择此选项,则内容模型中的所有子代都必须是独立的元素,并且内容模型中的每个元素只能出现一次。
下列指示信息是为“资源”透视图编写的,但是也适用于其他许多透视图。
要将内容模型添加至元素、全局元素、复杂类型或组,请遵循下列步骤:
- 在“设计”视图中,选择复杂类型或组:
- 如果选择复杂类型,则可以右键单击它并单击添加序列或添加选项以将想要的内容模型的类型添加至复杂类型。如果希望使用全部内容模型,则可通过在“设计”视图中单击该模型来更改它,并在属性中选择全部作为种类。自动将内容模型添加为复杂类型的子代 - 在“大纲”视图中展开可看到它。注意:如果对复杂类型设置了基本类型,则这些选项将不会出现。可以对复杂类型设置基本类型,也可以将内容模型添加至复杂类型,但不能同时执行这两个操作。
- 创建组时,会自动创建序列内容模型子代。在“大纲”视图中展开它以查看子代和选择子代。在“属性”视图中,可以通过从种类菜单中选择选项或全部内容模型来更改其类型。
- (可选)在 MinOccurs 字段中选择适当的值。 这是内容模型必须出现的最少次数。如果想要使内容模型成为可选的,则选择 0。否则,请选择 1。
- (可选)在 MaxOccurs 字段中选择适当的值。 这是内容模型可出现的最多次数。可以选择无限制以指示不存在最多出现次数。
- 如果想要提供有关此内容模型的任何信息,则单击文档选项卡。 文档中是读者可阅读的资料(例如描述)。
- 如果想要将应用程序信息元素添加至模式组件的注释,则单击扩展选项卡。 扩展页允许您指定模式并将 XML 内容添加至注释。
可将以下项添加至内容对象模型。
- 另一个内容模型。
- 一个组引用,它使被引用组能够出现在引用声明上下文的实例文档中。仅当在文档中的其他位置定义了全局组或者在包含的模式中定义了组时,才会出现此菜单选项。
- 元素,XML 中的基本构建块。
- 元素引用,它提供对全局元素的引用。仅当在文档中的其他位置定义了全局元素时,才会出现此菜单选项。
- any 元素。通过属于指定的名称空间的 any 元素,可以使用 any 元素来扩展内容模型。