Compartilhar via


XmlSchemaFractionDigitsFacet Classe

Definição

Especifica uma restrição no número de dígitos que podem ser inseridos para o valor de fração de um elemento simpleType. O valor de fractionDigits deve ser um inteiro positivo. Representa a faceta fractionDigits do W3C (World Wide Web Consortium).

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

Exemplos

O exemplo a seguir mostra o uso da classe XmlSchemaFractionDigitsFacet.

#using <mscorlib.dll>
#using <System.Xml.dll>

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

class XmlSchemaExamples
{
public:

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

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

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

        // <xs:totalDigits value="2"/>
        XmlSchemaTotalDigitsFacet^ totalDigits = gcnew XmlSchemaTotalDigitsFacet();
        totalDigits->Value = "2";
        restriction->Facets->Add(totalDigits);

        // <xs:fractionDigits value="1"/>
        XmlSchemaFractionDigitsFacet^ fractionDigits = gcnew XmlSchemaFractionDigitsFacet();
        fractionDigits->Value = "1";
        restriction->Facets->Add(fractionDigits);

        RatingType->Content = restriction;

        schema->Items->Add(RatingType);

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

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

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

        element->SchemaType = complexType;

        schema->Items->Add(element);

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

        XmlSchema^ compiledSchema;

        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);
    }

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

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="RatingType">
        XmlSchemaSimpleType RatingType = new XmlSchemaSimpleType();
        RatingType.Name = "RatingType";

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

        // <xs:totalDigits value="2"/>
        XmlSchemaTotalDigitsFacet totalDigits = new XmlSchemaTotalDigitsFacet();
        totalDigits.Value = "2";
        restriction.Facets.Add(totalDigits);

        // <xs:fractionDigits value="1"/>
        XmlSchemaFractionDigitsFacet fractionDigits = new XmlSchemaFractionDigitsFacet();
        fractionDigits.Value = "1";
        restriction.Facets.Add(fractionDigits);

        RatingType.Content = restriction;

        schema.Items.Add(RatingType);

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

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

        // <xs:attribute name="rating" type="RatingType"/>
        XmlSchemaAttribute ratingAttribute = new XmlSchemaAttribute();
        ratingAttribute.Name = "rating";
        ratingAttribute.SchemaTypeName = new XmlQualifiedName("RatingType", "");
        complexType.Attributes.Add(ratingAttribute);

        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="RatingType">
        Dim RatingType As New XmlSchemaSimpleType()
        RatingType.Name = "RatingType"

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

        '<xs:totalDigits value="2"/>
        Dim totalDigits As New XmlSchemaTotalDigitsFacet()
        totalDigits.Value = "2"
        restriction.Facets.Add(totalDigits)

        '<xs:fractionDigits value="1"/>
        Dim fractionDigits As New XmlSchemaFractionDigitsFacet()
        fractionDigits.Value = "1"
        restriction.Facets.Add(fractionDigits)

        RatingType.Content = restriction
        schema.Items.Add(RatingType)

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

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

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

        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="RatingType">
        <xs:restriction base="xs:decimal">
            <xs:totalDigits value="2"/>
            <xs:fractionDigits value="1"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:element name="movie">
        <xs:complexType>
            <xs:attribute name="rating" type="RatingType"/>
        </xs:complexType>
    </xs:element>

</xs:schema>

Construtores

XmlSchemaFractionDigitsFacet()

Inicializa uma nova instância da classe XmlSchemaFractionDigitsFacet.

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