4.12 XMLSpy中关于Schema的操作
XMLSpy对Schema也提供了极好的支持,可以进行Schema编辑,也可以“智能”地为一份XML文档创建对应的Schema(不一定是您所需要的),还可以将一份已有的Schema分配给当前XML文档。
4.12.1 创建新的Schema
在XMLSpy中创建新的Schema,请按如下步骤进行:
(1)单击“File”菜单,然后单击其中的“New…”菜单项,将出现图4.3所示对话框。
图4.3 创建新的Schema文档
(2)选中“W3C XML Schema”列表项,然后单击“OK”按钮即可进入编辑窗口编辑Schema文档。
在成功编辑并保存了一份Schema文档之后,接下来就可以利用这份Schema文档来创建新的XML文档了,XMLSpy会根据该Schema所定义的语义约束提供“智能”提示,从而提高XML开发效率。关于如何在创建XML文档时选择Schema在第1章已介绍过,此处不再赘述。
4.12.2 为XML创建Schema
如果希望为已有的XML文档“智能”地生成Schema文档,可按如下步骤进行:
(1)在打开某个XML文档的前提下,单击“DTD/Schema”菜单,然后单击其中的“Generate DTD/Schema”菜单项,将出现图4.4所示对话框。
图4.4 生成Schema
(2)选择“W3C Schema”单选框,然后单击“OK”按钮,将弹出“另存为”对话框,用于为生成的Schema文档指定保存位置。接下来,XMLSpy将会为当前XML文档生成一份Schema文档。Schema文档创建成功后,将弹出图4.5所示确认对话框。
图4.5 是否将Schema添加到XML文档中
(3)单击“是”按钮,XMLSpy将会把生成的Schema应用到当前XML文档中。也就是向当前XML文档中插入类似如下格式的内容:
XMLSpy所生成的Schema总是没有目标命名空间的,如果需要为其添加目标命名空间,必须自己手动修改。
提示
图4.4所示对话框下有很多单选框,这些单选框用于指定创建Schema时的各种选项,读者可以反复调整这些选项让XMLSpy生成更加符合自己要求的Schema。
4.12.3 为XML分配Schema
实际上,XMLSpy还可为XML文档分配一份已存在的Schema。如果希望为XML文档分配一份已有的Schema,请按如下步骤进行:
(1)在打开某个XML文档的前提下,单击“DTD/Schema”菜单,然后单击其中的“Assign Schema”菜单项,将出现图4.6所示对话框。
图4.6 选择已有的Schema
(2)单击“Browse…”按钮选择合适的Schema文档,然后单击“OK”按钮,XMLSpy就会把已有的Schema文档应用到当前XML文档。