XmlSchemaValidationFlags 枚举   
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定由 XmlSchemaValidator 和 XmlReader 类使用的架构验证选项。
此枚举支持其成员值的按位组合。
public enum class XmlSchemaValidationFlags[System.Flags]
public enum XmlSchemaValidationFlags[<System.Flags>]
type XmlSchemaValidationFlags = Public Enum XmlSchemaValidationFlags- 继承
- 属性
字段
| AllowXmlAttributes | 16 | 即使架构中未定义 xml:* 特性,也允许这些特性。 将根据这些特性的数据类型对它们进行验证。 | 
| None | 0 | 不要处理标识约束、内联架构、架构位置提示或报告架构验证警告。 | 
| ProcessIdentityConstraints | 8 | 处理验证过程中遇到的标识约束( | 
| ProcessInlineSchema | 1 | 处理在验证过程中遇到的内联架构。 | 
| ProcessSchemaLocation | 2 | 处理验证过程中遇到的架构位置提示( | 
| ReportValidationWarnings | 4 | 报告在验证过程中遇到的架构验证警告。 | 
示例
有关使用 XmlSchemaValidationFlags 枚举的示例,请参阅 XmlSchemaValidator 该类。
注解
When used with the XmlReader, XmlSchemaValidationFlags values define validation options used by a schema validating XmlReader to perform XML validation against a schema. XmlSchemaValidationFlags使用XmlReaderSettings.ValidationFlags属性指定验证XmlReader的值。
使用 AllowXmlAttributes 值时:
- 当架构不导入 Xml 命名空间时。 - 如果 - AllowXmlAttributes设置为- true(默认) 且实例文档包含 Xml 属性,则验证引擎将加载默认 Xml 命名空间架构的快照并将其用于验证。 如果在默认架构中找不到实例文档中使用的 Xml 属性,则文档将不会验证。
- 如果 - AllowXmlAttributes设置为- false实例文档包含 Xml 属性,则验证引擎将报告错误。
 
- 架构在没有位置的情况下导入 Xml 命名空间时。 - 如果 - AllowXmlAttributes设置为- true(默认) 且实例文档包含 Xml 属性,则验证引擎将使用默认的 Xml 命名空间架构进行验证。 如果在默认架构中找不到实例文档中使用的 Xml 属性,则文档将不会验证。
- 如果 - AllowXmlAttributes设置为- false且实例文档包含架构未显式允许的 Xml 属性,则验证引擎将报告错误。
- 如果 - AllowXmlAttributes设置为- false实例文档并且实例文档包含架构显式允许的 Xml 属性,则验证引擎将使用默认 Xml 命名空间架构验证其他属性的方式验证这些属性。
 
- 当架构使用自定义 schemaLocation 导入自定义 Xml 命名空间架构时。 - 如果 - AllowXmlAttributes设置为- true(默认) 且实例文档包含 Xml 属性,则验证引擎将使用自定义 Xml 命名空间架构进行验证。 如果在指定架构中找不到实例文档中使用的 Xml 属性,则文档将不会验证。
- 如果 - AllowXmlAttributes设置为- false且实例文档包含架构未显式允许的 Xml 属性,则验证引擎将报告错误。
- 如果 - AllowXmlAttributes设置为- false实例文档并且实例文档包含架构显式允许的 Xml 属性,则验证引擎将使用指定的 Xml 命名空间架构验证其他属性的方式验证这些属性。
 
- 当架构使用 use=“required”定义 xml:* 属性时。 - 以下情况适用于 AllowXmlAttributes设置为true和false。 必需的 xml:* 属性应被视为其他属性,并使用指定的 Xml 命名空间架构进行验证。
 
- 以下情况适用于 
- 当架构使用 use=“prohibited”定义 xml:* 属性时。 - 以下情况适用于 AllowXmlAttributes设置为true和false。 如果实例文档包含架构显式禁止的 xml:* 属性,验证引擎将报告错误。
 
- 以下情况适用于 
- 架构指定属性通配符时。 - 如果实例文档包含 Xml 属性,并且架构指定了 processContents 的属性通配符,或设置为“strict”,则验证引擎将使用该架构中 XmlSchemaSet存在的 Xml 命名空间架构。 如果未指定 Xml 命名空间架构,验证引擎的行为将如下所示。 
- 如果 - AllowXmlAttributes设置为- true,验证引擎将使用默认的 Xml 命名空间架构来执行验证。
- 如果 - AllowXmlAttributes设置为- false,验证引擎将报告错误。
- 如果实例文档包含 Xml 属性,并且架构指定了一个将 processContents 设置为“skip”的属性通配符,则验证引擎将跳过属性验证。 
- 如果实例文档包含 Xml 属性,并且架构指定了一个将 processContents 设置为“lax”的属性通配符,则验证引擎将使用 Xml 命名空间架构。XmlSchemaSet 如果未指定 Xml 命名空间架构,验证引擎的行为将如下所示。 
- 如果 - AllowXmlAttributes设置为- true,验证引擎将使用默认的 Xml 命名空间架构来执行验证。
- 如果 - AllowXmlAttributes设置为- false,则不会执行属性验证。
 
- 验证简单类型时。 - 当设置为true(默认) 时AllowXmlAttributes,简单类型的元素上将允许 Xml 属性。
 
- 当设置为