XmlSchemaValidationFlags Перечисление
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает параметры проверки схемы, используемые классами XmlSchemaValidator и XmlReader.
Это перечисление поддерживает побитовую комбинацию значений его членов.
public enum class XmlSchemaValidationFlags
[System.Flags]
public enum XmlSchemaValidationFlags
[<System.Flags>]
type XmlSchemaValidationFlags =
Public Enum XmlSchemaValidationFlags
- Наследование
- Атрибуты
Поля
| Имя | Значение | Описание |
|---|---|---|
| None | 0 | Не обрабатывайте ограничения удостоверений, встроенные схемы, указания по расположению схемы или предупреждения проверки схемы отчета. |
| ProcessInlineSchema | 1 | Обработка встроенных схем, возникающих во время проверки. |
| ProcessSchemaLocation | 2 | Указания по расположению схемы обработки ( |
| ReportValidationWarnings | 4 | Предупреждения проверки схемы отчета, возникающие во время проверки. |
| ProcessIdentityConstraints | 8 | Ограничения удостоверений процесса ( |
| AllowXmlAttributes | 16 | Разрешить атрибуты xml:* даже если они не определены в схеме. Атрибуты будут проверены на основе их типа данных. |
Примеры
Пример, использующий XmlSchemaValidationFlags перечисление, см. в XmlSchemaValidator классе.
Комментарии
При использовании с XmlReaderXmlSchemaValidationFlags значениями определяются параметры проверки, используемые схемой, проверяющей XmlReader выполнение проверки XML для схемы.
XmlSchemaValidationFlags Значения проверки XmlReader указываются с помощью XmlReaderSettings.ValidationFlags свойства.
При использовании AllowXmlAttributes значения:
Если схема не импортирует пространство имен XML.
Если
AllowXmlAttributesзадано значениеtrue(по умолчанию) и документ экземпляра содержит xml-атрибуты, модуль проверки загружает моментальный снимок схемы пространства имен XML по умолчанию и использует его для проверки. Если атрибуты XML, используемые в документе экземпляра, не найдены в схеме по умолчанию, документ не будет проверяться.Если
AllowXmlAttributesзадано значениеfalseи документ экземпляра содержит xml-атрибуты, обработчик проверки сообщит об ошибке.
Когда схема импортирует пространство имен XML без расположения.
Если
AllowXmlAttributesзадано значениеtrue(по умолчанию) и документ экземпляра содержит xml-атрибуты, модуль проверки будет использовать схему пространства имен XML по умолчанию для проверки. Если атрибуты XML, используемые в документе экземпляра, не найдены в схеме по умолчанию, документ не будет проверяться.Если
AllowXmlAttributesзаданоfalseзначение и документ экземпляра содержит атрибуты Xml, которые явно не разрешены схемой, модуль проверки сообщит об ошибке.Если
AllowXmlAttributesзаданоfalseзначение и документ экземпляра содержит xml-атрибуты, которые явно разрешены схемой, модуль проверки будет проверять атрибуты так же, как он проверяет другие атрибуты с помощью схемы пространства имен XML по умолчанию.
При импорте схемы настраиваемого пространства имен XML с помощью настраиваемой схемы schemaLocation.
Если
AllowXmlAttributesзадано значениеtrue(по умолчанию) и документ экземпляра содержит xml-атрибуты, модуль проверки будет использовать настраиваемую схему пространства имен XML для проверки. Если атрибуты XML, используемые в документе экземпляра, не найдены в указанной схеме, документ не будет проверяться.Если
AllowXmlAttributesзаданоfalseзначение и документ экземпляра содержит атрибуты Xml, которые явно не разрешены схемой, модуль проверки сообщит об ошибке.Если
AllowXmlAttributesзаданоfalseзначение и документ экземпляра содержит атрибуты Xml, которые явно разрешены схемой, модуль проверки будет проверять атрибуты так же, как он проверяет другие атрибуты с помощью указанной схемы пространства имен XML.
Если схема определяет атрибут xml:* с use="required".
- В следующих случаях применяется, если
AllowXmlAttributesзаданоtrueзначение иfalse. Обязательные атрибуты xml:* должны рассматриваться как другие атрибуты и проверяться с помощью указанной схемы пространства имен XML.
- В следующих случаях применяется, если
Если схема определяет атрибут xml:* с параметром use="запрещено".
- В следующих случаях применяется, если
AllowXmlAttributesзаданоtrueзначение иfalse. Если документ экземпляра содержит атрибуты xml:*, которые явно запрещены схемой, обработчик проверки сообщит об ошибке.
- В следующих случаях применяется, если
Если схема задает подстановочный знак атрибута.
Если документ экземпляра содержит атрибут Xml, а схема задает подстановочный знак атрибута с параметром processContents, опущенным или заданным значением "strict", модуль проверки будет использовать схему пространства имен XML, представленную в файле XmlSchemaSet. Если схема пространства имен XML не указана, модуль проверки будет вести себя следующим образом.
Если
AllowXmlAttributesзадано значениеtrue, модуль проверки будет использовать схему пространства имен XML по умолчанию для выполнения проверки.Если
AllowXmlAttributesзадано значениеfalse, модуль проверки сообщит об ошибке.Если документ экземпляра содержит атрибут Xml, а схема задает подстановочный знак атрибута с параметром processContents с значением skip, модуль проверки пропускает проверку атрибутов.
Если документ экземпляра содержит атрибут Xml, а схема задает подстановочный знак атрибута с параметром processContents с значением "lax", модуль проверки будет использовать схему пространства имен XML, представленную в файле XmlSchemaSet. Если схема пространства имен XML не указана, модуль проверки будет вести себя следующим образом.
Если
AllowXmlAttributesзадано значениеtrue, модуль проверки будет использовать схему пространства имен XML по умолчанию для выполнения проверки.Если
AllowXmlAttributesзадано значениеfalse, проверка атрибута не будет выполнена.
При проверке простых типов.
- Если
AllowXmlAttributesзадано значениеtrue(по умолчанию), атрибуты XML будут разрешены для элементов простых типов.
- Если