在有 DTD 或 XML 模式约束的情况下进行编辑

在“设计”视图中,当您编辑具有由 DTD 或 XML 模式定义的一组约束(即一组规则)的 XML 文件时,可以通过打开和关闭约束来提供灵活的编辑方式但仍能定期维护文档的有效性。

当打开约束并且您正在“设计”视图中工作时,XML 编辑器会阻止您插入 XML 模式或 DTD 的规则不允许的元素、属性或属性值,并阻止您除去必要的或预定义的标记和值组。在这种方式中,元素的内容必须有效,您才能使用 XML 编辑器的指导编辑选项。

如果需要更大的灵活性,则您可能需要关闭对 XML 文件的约束。例如,您想尝试使用相关联的 DTD 或 XML 模式不允许的元素或属性,而实际上又不除去与 DTD 或 XML 模式的关联。

要关闭针对 DTD 文件的约束,请单击 XML > 关闭语法约束。在关闭文件的约束后,可以插入或删除任何元素或属性而不必考虑 DTD 或 XML 模式规则。您可以创建不在 DTD 或模式中的新元素或属性 - 这些“设计”视图提示仅在约束关闭后才出现。但是,如果这样做,文件可能不是有效的。

下列指示信息是为“资源”透视图编写的,但是也适用于其他许多透视图。

下面的示例显示在关闭了 DTD 的约束的情况下可如何操作:

  1. 在 XML 编辑器中打开 XML 文件(在“导航器”视图右键单击该文件,然后单击打开方式 > XML 编辑器)。
  2. 您具有一个 DTD,它指定元素需要至少一个特定子元素:
    <!ELEMENT parentElement (childElement+)>
  3. 在与 DTD 相关联的 XML 文件中,如果您尝试在 DTD 约束打开的情况下除去元素的 final 子元素,则编辑器不会允许您这样做,因为这样做的结果会使文档无效。 可以通过使用元素的弹出菜单来验证除去选项已变成灰色来确认这一点。
  4. 要关闭 DTD 约束,请单击 XML > 关闭语法约束
  5. 如果尝试在关闭约束的情况下除去同一子元素,则编辑器将允许您这样做。
  6. 要更正无效的文档,必须重新添加必要的元素或者除去无效的标记或值。
如果在文件中引入了错误,则必须保存并验证文件以查看已引入的错误列表。它们将列示在“问题”视图中。在修正了错误之后,必须再次保存并验证文件以查看文件现在是否有效。
相关概念
XML 文件与 DTD 和 XML 模式的关联
相关任务
编辑 DOCTYPE 声明
将条目添加至 XML 目录
用对 DTD 和模式所作的更改来更新 XML 文件
编辑名称空间信息