XmlSchemaValidationFlags Перечисление

Определение

Определяет параметры проверки схемы, используемые классами XmlSchemaValidator и XmlReader.

Это перечисление поддерживает побитовую комбинацию значений его членов.

public enum class XmlSchemaValidationFlags
[System.Flags]
public enum XmlSchemaValidationFlags
[<System.Flags>]
type XmlSchemaValidationFlags = 
Public Enum XmlSchemaValidationFlags
Наследование
XmlSchemaValidationFlags
Атрибуты

Поля

AllowXmlAttributes 16

Разрешите атрибуты xml:*, даже если они не определены в схеме. Атрибуты проверяются на основе их типа данных.

None 0

Не обрабатывайте ограничения идентификации, внутренние схемы, указания по расположению схемы или не создавайте отчетов о предупреждениях при проверке схемы.

ProcessIdentityConstraints 8

Ограничения удостоверения процесса (xs:ID, xs:IDREF, xs:key, xs:keyref, xs:unique), обнаруженные во время проверки.

ProcessInlineSchema 1

Обработайте внутренние схемы, найденные при проверке.

ProcessSchemaLocation 2

Указания на расположение схемы процесса (xsi:schemaLocation, xsi:noNamespaceSchemaLocation), обнаруженные во время проверки.

ReportValidationWarnings 4

Создайте отчет о предупреждениях при проверке схемы, найденных при проверке.

Примеры

Пример использования XmlSchemaValidationFlags перечисления см. в описании XmlSchemaValidator класса.

Комментарии

Если используется с параметром XmlReader, XmlSchemaValidationFlags значения определяют параметры проверки, используемые схемой, проверяющей XmlReader для выполнения проверки XML в схеме. XmlSchemaValidationFlags Значения проверки XmlReader указываются с помощью XmlReaderSettings.ValidationFlags свойства.

При использовании AllowXmlAttributes значения:

  1. Если схема не импортирует пространство имен XML.

    1. Если AllowXmlAttributes задано значение true (по умолчанию), а документ экземпляра содержит xml-атрибуты, модуль проверки загружает моментальный снимок схемы пространства имен XML по умолчанию и использует его для проверки. Если атрибуты XML, используемые в документе экземпляра, не найдены в схеме по умолчанию, документ не будет проверяться.

    2. Если AllowXmlAttributes задано значение false , а документ экземпляра содержит xml-атрибуты, модуль проверки сообщит об ошибке.

  2. Когда схема импортирует пространство имен XML без расположения.

    1. Если AllowXmlAttributes задано значение true (по умолчанию), а документ экземпляра содержит xml-атрибуты, модуль проверки будет использовать схему пространства имен XML по умолчанию для проверки. Если атрибуты XML, используемые в документе экземпляра, не найдены в схеме по умолчанию, документ не будет проверяться.

    2. Если AllowXmlAttributes задано значение false и документ экземпляра содержит атрибуты XML, которые явно не разрешены схемой, модуль проверки сообщит об ошибке.

    3. Если AllowXmlAttributes задано значение false и документ экземпляра содержит атрибуты XML, которые явно разрешены схемой, модуль проверки будет проверять атрибуты так же, как и другие атрибуты, используя схему пространства имен XML по умолчанию.

  3. Когда схема импортирует настраиваемую схему пространства имен XML с пользовательским значением schemaLocation.

    1. Если AllowXmlAttributes задано значение true (по умолчанию), а документ экземпляра содержит xml-атрибуты, модуль проверки будет использовать настраиваемую схему пространства имен XML для проверки. Если атрибуты XML, используемые в документе экземпляра, не найдены в указанной схеме, документ не будет проверяться.

    2. Если AllowXmlAttributes задано значение false и документ экземпляра содержит атрибуты XML, которые явно не разрешены схемой, модуль проверки сообщит об ошибке.

    3. Если AllowXmlAttributes задано значение false и документ экземпляра содержит атрибуты XML, которые явно разрешены схемой, модуль проверки будет проверять атрибуты так же, как и другие атрибуты, используя указанную схему пространства имен XML.

  4. Если схема определяет атрибут xml:* с use="required".

    1. Следующее применяется, если AllowXmlAttributes задано true значение и false. Обязательные атрибуты xml:* должны рассматриваться как другие атрибуты и проверяться с помощью указанной схемы пространства имен XML.
  5. Если схема определяет атрибут xml:* с параметром use="запрещено".

    1. Следующее применяется, если AllowXmlAttributes задано true значение и false. Если документ экземпляра содержит атрибуты xml:*, которые явно запрещены схемой, модуль проверки сообщит об ошибке.
  6. Если схема задает подстановочный знак атрибута.

    1. Если в документе экземпляра содержится атрибут Xml, а схема указывает подстановочный знак атрибута с параметром processContents либо опущен, либо задано значение strict, модуль проверки будет использовать схему пространства имен XML, присутствующих в .XmlSchemaSet Если схема пространства имен XML не указана, модуль проверки будет вести себя следующим образом.

    2. Если AllowXmlAttributes задано значение true, модуль проверки будет использовать схему пространства имен XML по умолчанию для выполнения проверки.

    3. Если AllowXmlAttributes задано значение false, модуль проверки сообщит об ошибке.

    4. Если в документе экземпляра содержится атрибут Xml, а схема указывает подстановочный знак атрибута с параметром processContents, для параметра "skip", модуль проверки пропустит проверку атрибута.

    5. Если в документе экземпляра содержится атрибут Xml, а схема указывает подстановочный знак атрибута с параметром processContents со значением "lax", модуль проверки будет использовать схему пространства имен XML, присутствующих в .XmlSchemaSet Если схема пространства имен XML не указана, модуль проверки будет вести себя следующим образом.

    6. Если AllowXmlAttributes задано значение true, модуль проверки будет использовать схему пространства имен XML по умолчанию для выполнения проверки.

    7. Если AllowXmlAttributes задано значение false, проверка атрибута не будет выполнена.

  7. При проверке простых типов.

    1. Если AllowXmlAttributes задано значение true (по умолчанию), xml-атрибуты будут разрешены для элементов простых типов.

Применяется к

См. также раздел