Leggi in inglese

Condividi tramite


XmlSchemaAttribute Classe

Definizione

Rappresenta l'elemento attribute di XML Schema come specificato dal World Wide Web Consortium (W3C). Gli attributi forniscono altre informazioni per altri elementi del documento. Il tag attributo è annidato tra i tag di un elemento del documento per lo schema. Nel documento XML gli attributi sono visualizzati come voci denominate nel tag di apertura di un elemento.

C#
public class XmlSchemaAttribute : System.Xml.Schema.XmlSchemaAnnotated
Ereditarietà

Esempio

Nell'esempio seguente viene creato l'elemento attribute .

C#
using System;
using System.Xml;
using System.Xml.Schema;

class XMLSchemaExamples
{
    public static void Main()
    {

        XmlSchema schema = new XmlSchema();

        // <xs:attribute name="mybaseattribute">
        XmlSchemaAttribute attributeBase = new XmlSchemaAttribute();
        schema.Items.Add(attributeBase);
        attributeBase.Name = "mybaseattribute";

        // <xs:simpleType>
        XmlSchemaSimpleType simpleType = new XmlSchemaSimpleType();
        attributeBase.SchemaType = simpleType;

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

        // <xs:maxInclusive value="1000"/>
        XmlSchemaMaxInclusiveFacet maxInclusive = new XmlSchemaMaxInclusiveFacet();
        restriction.Facets.Add(maxInclusive);
        maxInclusive.Value = "1000";

        // <xs:complexType name="myComplexType">
        XmlSchemaComplexType complexType = new XmlSchemaComplexType();
        schema.Items.Add(complexType);
        complexType.Name = "myComplexType";

        // <xs:attribute ref="mybaseattribute"/>
        XmlSchemaAttribute attributeBaseRef = new XmlSchemaAttribute();
        complexType.Attributes.Add(attributeBaseRef);
        attributeBaseRef.RefName = new XmlQualifiedName("mybaseattribute");

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

Per l'esempio di codice precedente viene generato il file XML seguente.

XML

<?xml version="1.0" encoding="IBM437"?>
<xs:schema  xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:attribute name="mybaseattribute">
        <xs:simpleType>
            <xs:restriction base="xs:integer">
                <xs:maxInclusive value="1000" />
            </xs:restriction>
        </xs:simpleType>
    </xs:attribute>
    <xs:complexType name="myComplexType">
        <xs:attribute ref="mybaseattribute" />
    </xs:complexType>
</xs:schema>

Commenti

Le dichiarazioni di attributi possono essere presenti come elementi figlio dell'elemento schema (con ambito globale) o all'interno di definizioni di tipi complessi. Per i tipi complessi, le dichiarazioni di attributo possono essere presenti come dichiarazioni locali o riferimenti ad attributi con ambito globale. Entrambe le dichiarazioni di attributi globali e locali hanno l'attributo di tipo facoltativo che fa riferimento a un tipo semplice esistente. Se l'attributo di tipo facoltativo non viene usato, la dichiarazione dell'attributo (globale o locale) deve definire un tipo semplice locale.

Costruttori

XmlSchemaAttribute()

Inizializza una nuova istanza della classe XmlSchemaAttribute.

Proprietà

Annotation

Ottiene o imposta la proprietà annotation.

(Ereditato da XmlSchemaAnnotated)
AttributeSchemaType

Ottiene un oggetto XmlSchemaSimpleType che rappresenta il tipo di attributo basato sulla proprietà SchemaType o SchemaTypeName dell'attributo.

AttributeType
Obsoleta.
Obsoleta.
Obsoleta.

Ottiene l'oggetto Common Language Runtime (CLR) in base a SchemaType o SchemaTypeName dell'attributo che contiene il valore che la proprietà AttributeType assume dopo la compilazione.

DefaultValue

Ottiene o imposta il valore predefinito dell'attributo.

FixedValue

Ottiene o imposta il valore fisso dell'attributo.

Form

Ottiene o imposta il formato dell'attributo.

Id

Ottiene o imposta l'ID di stringa.

(Ereditato da XmlSchemaAnnotated)
LineNumber

Ottiene o imposta il numero di riga nel file a cui l'elemento schema fa riferimento.

(Ereditato da XmlSchemaObject)
LinePosition

Ottiene o imposta la posizione di riga nel file a cui l'elemento schema fa riferimento.

(Ereditato da XmlSchemaObject)
Name

Ottiene o imposta il nome dell'attributo.

Namespaces

Ottiene o imposta l'oggetto XmlSerializerNamespaces da utilizzare con questo oggetto schema.

(Ereditato da XmlSchemaObject)
Parent

Ottiene o imposta la classe padre della classe XmlSchemaObject.

(Ereditato da XmlSchemaObject)
QualifiedName

Ottiene il nome completo dell'attributo.

RefName

Ottiene o imposta il nome di un attributo dichiarato in questo schema o in un altro schema indicato dallo spazio dei nomi specificato.

SchemaType

Ottiene o imposta il tipo di attributo su tipo semplice.

SchemaTypeName

Ottiene o imposta il nome del tipo semplice definito in questo schema o in un altro schema indicato dallo spazio dei nomi specificato.

SourceUri

Ottiene o imposta la posizione di origine per il file che ha caricato lo schema.

(Ereditato da XmlSchemaObject)
UnhandledAttributes

Ottiene o imposta gli attributi qualificati che non appartengono allo spazio dei nomi di destinazione dello schema corrente.

(Ereditato da XmlSchemaAnnotated)
Use

Ottiene o imposta informazioni sulla modalità d'uso dell'attributo.

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a

Prodotto Versioni
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 2.0, 2.1