练习 1.2:添加模式组件
在开始之前,必须完成练习 1.1:创建 XML 模式。
XML 模式规范定义了大量组件,例如,复杂类型、简单类型、组、注释、元素和属性等等。要创建有效的模式,必需了解这些组件之间的关系。例如,<include>、<import> 或
<redefine> 元素必须出现在模式元素的其它任何子代前面。可以将属性添加至复杂类型,但是不能添加至简单类型。还有许多其它的关系。
XML 模式编辑器消除了要记住所有这些详细信息的麻烦。可以使用“大纲”视图来从弹出菜单中添加模式组件。弹出菜单将只显示与所选对象相关的对象的列表。编辑器还将在 XML 模式中的正确位置添加对象。
以下示例将告诉您一些基本方法。
添加模式组件
在下面的步骤中,将把几个组件添加至模式,包括简单类型和复杂类型以及全局元素:
- University.xsd 文件需要包含一种复杂类型 Student(用于定义学生信息)和一种简单类型 Faculties(用于列示大学中的教职员工):
- 在“大纲”视图中,右键单击 University 文件并单击添加复杂类型。这就在“类型”文件夹下面创建了新的复杂类型。
- 选择该复杂类型,然后在“属性”视图中将它的名称更改为 Student。
- 再次右键单击 University 文件,然后单击添加简单类型。这就在“类型”文件夹下面创建了新的简单类型。
- 选择该简单类型,然后在“属性”视图中将它的名称更改为 Faculties。
- Student 复杂类型包含学生姓名、学生的专业和学生的标识号。通过下列步骤将此信息添加至 Student 复杂类型:
- 右键单击 Student 复杂类型,并单击全部添加。这将创建新的内容模型对象。
- 右键单击该内容模型对象,然后单击添加元素。这就创建了新的元素。
- 在“属性”视图中,将元素的名称更改为 name。注意,此元素的类型缺省为 string。
- 单击“属性”视图中的属性选项卡。在空白的窗格中右键单击并单击添加属性。将它的名称更改为 id。
- 在“属性”视图中,对于
id 属性,单击类型的值列,单击更多按钮并从类型列表中选择 integer。
- 再次右键单击该内容模型对象,并再次单击添加元素以添加元素 major。
- 在“属性”视图中,对于 major 元素,此元素的类型更改为简单类型 Faculties。单击类型字段旁边的更多按钮
来打开“可用的类型”窗口,然后单击用户定义的简单类型单选按钮,单击 tns:Faculties,再单击确定。
- 简单类型 Faculties 是通过限制简单类型 string 而派生的,它的值仅限于大学中的其中一个院系。要定义此列表,将创建枚举刻面,如下所示:
-
右键单击 Faculties 简单类型并选择添加限制。这将创建基本类型为 string 的新限制元素。
- 单击“属性”视图中的枚举选项卡并单击添加。
- 将新枚举的值更改为 science。
- 为 Faculties 简单类型再创建两个枚举 arts 和 dentistry。
- 如果想要从此 XML 模式创建实例文档,XML 模式必须具有全局元素。现在,将添加全局元素 student,如下所示:
- 右键单击 University 文件,并单击弹出菜单中的添加全局元素。这将创建名称为 NewGlobalElement1 的新全局元素。
- 在“属性”视图中,将名称更改为 student。
- 在“属性”视图中,对于
student 全局元素,将它的类型更改为复杂类型 Student。单击类型字段旁边的更多按钮
来打开“可用的类型”窗口,然后单击用户定义的复杂类型单选按钮,单击 tns:Student,再单击确定。
“大纲”视图应如下所示:

现在,您可以开始进行练习 1.3:编辑并验证模式了。