XmlSchemaValidationFlags Enumeração

Definição

Especifica as opções de validação de esquema usadas pelas XmlSchemaValidator classes e.XmlReader

Esta enumeração suporta uma combinação bit-a-bit dos respetivos valores membro.

public enum class XmlSchemaValidationFlags
[System.Flags]
public enum XmlSchemaValidationFlags
[<System.Flags>]
type XmlSchemaValidationFlags = 
Public Enum XmlSchemaValidationFlags
Herança
XmlSchemaValidationFlags
Atributos

Campos

Name Valor Description
None 0

Não processe restrições de identidade, esquemas inline, dicas de localização de esquemas ou avisos de validação de esquemas reportados.

ProcessInlineSchema 1

Processar esquemas inline encontrados durante a validação.

ProcessSchemaLocation 2

Dicas de localização do esquema do processo (xsi:schemaLocation, xsi:noNamespaceSchemaLocation) encontradas durante a validação.

ReportValidationWarnings 4

Reporte avisos de validação de esquemas encontrados durante a validação.

ProcessIdentityConstraints 8

Restrições de identidade de processo (xs:ID, xs:IDREF, xs:key, xs:keyref, xs:unique) encontradas durante a validação.

AllowXmlAttributes 16

Permitir atributos xml:* mesmo que não estejam definidos no esquema. Os atributos serão validados com base no seu tipo de dado.

Exemplos

Para um exemplo que utiliza a XmlSchemaValidationFlags enumeração, veja a XmlSchemaValidator classe.

Observações

Quando usados com o XmlReader, XmlSchemaValidationFlags os valores definem opções de validação usadas por um esquema que valida XmlReader para realizar validação XML contra um esquema. XmlSchemaValidationFlags os valores para uma validação XmlReader são especificados usando a XmlReaderSettings.ValidationFlags propriedade.

Ao usar o AllowXmlAttributes valor:

  1. Quando um esquema não importa o namespace Xml.

    1. Se AllowXmlAttributes estiver definido para true (por defeito) e o documento da instância contiver atributos Xml, o motor de validação carregará um snapshot do esquema de namespace XML por defeito e usará para validação. Se os atributos XML usados no documento de instância não forem encontrados no esquema padrão, o documento não será validado.

    2. Se AllowXmlAttributes estiver definido como false e o documento de instância contiver atributos Xml, o motor de validação reportará um erro.

  2. Quando um esquema importa o namespace XML sem localização.

    1. Se AllowXmlAttributes estiver definido para true (por defeito) e o documento da instância contiver atributos Xml, o motor de validação utilizará o esquema de namespace XML por defeito para validação. Se os atributos XML usados no documento de instância não forem encontrados no esquema padrão, o documento não será validado.

    2. Se AllowXmlAttributes estiver definido como false e o documento de instância contiver atributos XML que não são explicitamente permitidos pelo esquema, o motor de validação reportará um erro.

    3. Se AllowXmlAttributes estiver definido como false e o documento de instância contiver atributos Xml explicitamente permitidos pelo esquema, o motor de validação irá validar os atributos da mesma forma que valida outros atributos usando o esquema padrão do espaço de nomes Xml.

  3. Quando um esquema importa um esquema de espaço de nomes XML personalizado com um schemaLocalização personalizado.

    1. Se AllowXmlAttributes estiver definido para true (por defeito) e o documento de instância contiver atributos Xml, o motor de validação utilizará o esquema de namespace XML personalizado para validação. Se os atributos XML usados no documento de instância não forem encontrados no esquema especificado, o documento não será validado.

    2. Se AllowXmlAttributes estiver definido como false e o documento de instância contiver atributos XML que não são explicitamente permitidos pelo esquema, o motor de validação reportará um erro.

    3. Se AllowXmlAttributes for definido como false e o documento de instância contiver atributos XML explicitamente permitidos pelo esquema, o motor de validação irá validar os atributos da mesma forma que valida outros atributos usando o esquema de espaço de nomes Xml especificado.

  4. Quando um esquema define um atributo xml:* com use="required".

    1. O seguinte aplica-se quando AllowXmlAttributes é definido como true e false. Os atributos xml:* exigidos devem ser tratados como outros atributos e validados usando o esquema de espaço de nomes XML especificado.
  5. Quando um esquema define um atributo xml:* com use="proibido".

    1. O seguinte aplica-se quando AllowXmlAttributes é definido como true e false. Se um documento de instância contiver atributos xml:* explicitamente proibidos pelo esquema, o motor de validação reportará um erro.
  6. Quando um esquema especifica um curinga de atributo.

    1. Se um documento de instância contiver um atributo Xml e o esquema especificar um curinga de atributo com processContents omitido ou definido como "strict", o motor de validação usará o esquema de namespace Xml presente no XmlSchemaSet. Se não for especificado nenhum esquema de namespace em Xml, o motor de validação comportar-se-á da seguinte forma.

    2. Se AllowXmlAttributes for definido para true, o motor de validação usará o esquema padrão de espaço de nomes XML para realizar a validação.

    3. Se AllowXmlAttributes for definido para false, o motor de validação reportará um erro.

    4. Se um documento de instância contiver um atributo Xml e o esquema especificar um curinga de atributo com processContents definido como "skip", o motor de validação saltará a validação de atributos.

    5. Se um documento de instância contiver um atributo Xml e o esquema especificar um curinga de atributo com processContents definido como "lax", o motor de validação usará o esquema de namespace Xml presente no XmlSchemaSetarquivo . Se não for especificado nenhum esquema de namespace em Xml, o motor de validação comportar-se-á da seguinte forma.

    6. Se AllowXmlAttributes for definido para true, o motor de validação usará o esquema padrão de espaço de nomes XML para realizar a validação.

    7. Se AllowXmlAttributes for definido para false, a validação do atributo não será realizada.

  7. Ao validar tipos simples.

    1. Quando AllowXmlAttributes está definido para true (por defeito), os atributos XML serão permitidos em elementos de tipos simples.

Aplica-se a

Ver também