XmlSchemaMaxExclusiveFacet Classe

Definição

Representa o elemento maxExclusive do esquema XML, conforme especificado pelo W3C (World Wide Web Consortium). Essa classe pode ser usada para especificar uma restrição no valor máximo de um elemento simpleType. O valor do elemento deve ser menor que o valor do elemento maxExclusive.

public ref class XmlSchemaMaxExclusiveFacet : System::Xml::Schema::XmlSchemaFacet
public class XmlSchemaMaxExclusiveFacet : System.Xml.Schema.XmlSchemaFacet
type XmlSchemaMaxExclusiveFacet = class
    inherit XmlSchemaFacet
Public Class XmlSchemaMaxExclusiveFacet
Inherits XmlSchemaFacet
Herança

Exemplos

O exemplo a seguir mostra o uso da classe XmlSchemaMaxExclusiveFacet.

#using <System.Xml.dll>

using namespace System;
using namespace System::Xml;
using namespace System::Xml::Schema;

ref class XMLSchemaExamples
{
private:
    static void ValidationCallbackOne(Object^ sender, ValidationEventArgs^ args)
    {
        Console::WriteLine(args->Message);
    }

public:
    static void Main()
    {
        XmlSchema^ schema = gcnew XmlSchema();

        // <xs:simpleType name="WaitQueueLengthType">
        XmlSchemaSimpleType^ WaitQueueLengthType = gcnew XmlSchemaSimpleType();
        WaitQueueLengthType->Name = "WaitQueueLengthType";

        // <xs:restriction base="xs:int">
        XmlSchemaSimpleTypeRestriction^ restriction = gcnew XmlSchemaSimpleTypeRestriction();
        restriction->BaseTypeName = gcnew XmlQualifiedName("int", "http://www.w3.org/2001/XMLSchema");

        // <xs:maxExclusive value="5"/>
        XmlSchemaMaxExclusiveFacet^ maxExclusive = gcnew XmlSchemaMaxExclusiveFacet();
        maxExclusive->Value = "5";
        restriction->Facets->Add(maxExclusive);

        WaitQueueLengthType->Content = restriction;

        schema->Items->Add(WaitQueueLengthType);

        // <xs:element name="Lobby">
        XmlSchemaElement^ element = gcnew XmlSchemaElement();
        element->Name = "Lobby";

        // <xs:complexType>
        XmlSchemaComplexType^ complexType = gcnew XmlSchemaComplexType();

        // <xs:attribute name="WaitQueueLength" type="WaitQueueLengthType"/>
        XmlSchemaAttribute^ WaitQueueLengthAttribute = gcnew XmlSchemaAttribute();
        WaitQueueLengthAttribute->Name = "WaitQueueLength";
        WaitQueueLengthAttribute->SchemaTypeName = gcnew XmlQualifiedName("WaitQueueLengthType", "");
        complexType->Attributes->Add(WaitQueueLengthAttribute);

        element->SchemaType = complexType;

        schema->Items->Add(element);

        XmlSchemaSet^ schemaSet = gcnew XmlSchemaSet();
        schemaSet->ValidationEventHandler += gcnew ValidationEventHandler(ValidationCallbackOne);
        schemaSet->Add(schema);
        schemaSet->Compile();

        XmlSchema^ compiledSchema = nullptr;

        for each (XmlSchema^ schema1 in schemaSet->Schemas())
        {
            compiledSchema = schema1;
        }

        XmlNamespaceManager^ nsmgr = gcnew XmlNamespaceManager(gcnew NameTable());
        nsmgr->AddNamespace("xs", "http://www.w3.org/2001/XMLSchema");
        compiledSchema->Write(Console::Out, nsmgr);
    }
};

int main()
{
    XMLSchemaExamples::Main();
    return 0;
}
using System;
using System.Xml;
using System.Xml.Schema;

class XMLSchemaExamples
{
    public static void Main()
    {

        XmlSchema schema = new XmlSchema();

        // <xs:simpleType name="WaitQueueLengthType">
        XmlSchemaSimpleType WaitQueueLengthType = new XmlSchemaSimpleType();
        WaitQueueLengthType.Name = "WaitQueueLengthType";

        // <xs:restriction base="xs:int">
        XmlSchemaSimpleTypeRestriction restriction = new XmlSchemaSimpleTypeRestriction();
        restriction.BaseTypeName = new XmlQualifiedName("int", "http://www.w3.org/2001/XMLSchema");

        // <xs:maxExclusive value="5"/>
        XmlSchemaMaxExclusiveFacet maxExclusive = new XmlSchemaMaxExclusiveFacet();
        maxExclusive.Value = "5";
        restriction.Facets.Add(maxExclusive);

        WaitQueueLengthType.Content = restriction;

        schema.Items.Add(WaitQueueLengthType);

        // <xs:element name="Lobby">
        XmlSchemaElement element = new XmlSchemaElement();
        element.Name = "Lobby";

        // <xs:complexType>
        XmlSchemaComplexType complexType = new XmlSchemaComplexType();

        // <xs:attribute name="WaitQueueLength" type="WaitQueueLengthType"/>
        XmlSchemaAttribute WaitQueueLengthAttribute = new XmlSchemaAttribute();
        WaitQueueLengthAttribute.Name = "WaitQueueLength";
        WaitQueueLengthAttribute.SchemaTypeName = new XmlQualifiedName("WaitQueueLengthType", "");
        complexType.Attributes.Add(WaitQueueLengthAttribute);

        element.SchemaType = complexType;

        schema.Items.Add(element);

        XmlSchemaSet schemaSet = new XmlSchemaSet();
        schemaSet.ValidationEventHandler += new ValidationEventHandler(ValidationCallbackOne);
        schemaSet.Add(schema);
        schemaSet.Compile();

        XmlSchema compiledSchema = null;

        foreach (XmlSchema schema1 in schemaSet.Schemas())
        {
            compiledSchema = schema1;
        }

        XmlNamespaceManager nsmgr = new XmlNamespaceManager(new NameTable());
        nsmgr.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema");
        compiledSchema.Write(Console.Out, nsmgr);
    }

    public static void ValidationCallbackOne(object sender, ValidationEventArgs args)
    {
        Console.WriteLine(args.Message);
    }
}
Imports System.Xml
Imports System.Xml.Schema

Class XMLSchemaExamples
    Public Shared Sub Main()

        Dim schema As New XmlSchema()

        ' <xs:simpleType name="WaitQueueLengthType">
        Dim WaitQueueLengthType As New XmlSchemaSimpleType()
        WaitQueueLengthType.Name = "WaitQueueLengthType"

        ' <xs:restriction base="xs:int">
        Dim restriction As New XmlSchemaSimpleTypeRestriction()
        restriction.BaseTypeName = New XmlQualifiedName("int", "http://www.w3.org/2001/XMLSchema")

        ' <xs:maxExclusive value="5"/>
        Dim maxExclusive As New XmlSchemaMaxExclusiveFacet()
        maxExclusive.Value = "5"
        restriction.Facets.Add(maxExclusive)

        WaitQueueLengthType.Content = restriction

        schema.Items.Add(WaitQueueLengthType)

        ' <xs:element name="Lobby">
        Dim element As New XmlSchemaElement()
        element.Name = "Lobby"

        ' <xs:complexType>
        Dim complexType As New XmlSchemaComplexType()

        ' <xs:attribute name="WaitQueueLength" type="WaitQueueLengthType"/>
        Dim WaitQueueLengthAttribute As New XmlSchemaAttribute()
        WaitQueueLengthAttribute.Name = "WaitQueueLength"
        WaitQueueLengthAttribute.SchemaTypeName = New XmlQualifiedName("WaitQueueLengthType", "")
        complexType.Attributes.Add(WaitQueueLengthAttribute)

        element.SchemaType = complexType

        schema.Items.Add(element)

        Dim schemaSet As New XmlSchemaSet()
        AddHandler schemaSet.ValidationEventHandler, AddressOf ValidationCallbackOne

        schemaSet.Add(schema)
        schemaSet.Compile()

        Dim compiledSchema As XmlSchema = Nothing

        For Each schema1 As XmlSchema In schemaSet.Schemas()
            compiledSchema = schema1
        Next

        Dim nsmgr As New XmlNamespaceManager(New NameTable())
        nsmgr.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema")
        compiledSchema.Write(Console.Out, nsmgr)

    End Sub

    Public Shared Sub ValidationCallbackOne(ByVal sender As Object, ByVal args As ValidationEventArgs)
        Console.WriteLine(args.Message)
    End Sub

End Class

O arquivo XML a seguir é gerado para o exemplo de código anterior.

<?xml version="1.0" encoding="IBM437"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <xs:simpleType name="WaitQueueLengthType">
        <xs:restriction base="xs:int">
            <xs:maxExclusive value="5"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:element name="Lobby">
        <xs:complexType>
            <xs:attribute name="WaitQueueLength" type="WaitQueueLengthType"/>
        </xs:complexType>
    </xs:element>

</xs:schema>

Construtores

XmlSchemaMaxExclusiveFacet()

Inicializa uma nova instância da classe XmlSchemaMaxExclusiveFacet.

Propriedades

Annotation

Obtém ou define a propriedade annotation.

(Herdado de XmlSchemaAnnotated)
Id

Obtém ou define a ID de cadeia de caracteres.

(Herdado de XmlSchemaAnnotated)
IsFixed

Obtém ou define as informações que indicam que esta faceta é fixa.

(Herdado de XmlSchemaFacet)
LineNumber

Obtém ou define o número de linha no arquivo ao qual o elemento schema se refere.

(Herdado de XmlSchemaObject)
LinePosition

Obtém ou define a posição da linha no arquivo ao qual o elemento schema se refere.

(Herdado de XmlSchemaObject)
Namespaces

Obtém ou define o XmlSerializerNamespaces a ser usado com esse objeto de esquema.

(Herdado de XmlSchemaObject)
Parent

Obtém ou define o pai deste XmlSchemaObject.

(Herdado de XmlSchemaObject)
SourceUri

Obtém ou define o local de origem para o arquivo que carregou o esquema.

(Herdado de XmlSchemaObject)
UnhandledAttributes

Obtém ou define os atributos qualificados que não pertencem ao namespace de destino do esquema atual.

(Herdado de XmlSchemaAnnotated)
Value

Obtém ou define o atributo value da faceta.

(Herdado de XmlSchemaFacet)

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a