XmlSchemaAttribute Clase

Definición

Representa el attribute elemento del esquema XML tal y como especifica World Wide Web Consortium (W3C). Los atributos proporcionan información adicional para otros elementos de documento. La etiqueta de atributo está anidada entre las etiquetas del elemento de un documento para el esquema. El documento XML muestra atributos como elementos con nombre en la etiqueta de apertura de un elemento.

public ref class XmlSchemaAttribute : System::Xml::Schema::XmlSchemaAnnotated
public class XmlSchemaAttribute : System.Xml.Schema.XmlSchemaAnnotated
type XmlSchemaAttribute = class
    inherit XmlSchemaAnnotated
Public Class XmlSchemaAttribute
Inherits XmlSchemaAnnotated
Herencia

Ejemplos

En el ejemplo siguiente se crea el attribute elemento .

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);
    }
}
Option Explicit On
Option Strict On

Imports System.Xml
Imports System.Xml.Schema

Class XMLSchemaExamples
    Public Shared Sub Main()
        Dim schema As New XmlSchema()

        ' <xs:attribute name="mybaseattribute">
        Dim attributeBase As New XmlSchemaAttribute()
        schema.Items.Add(attributeBase)
        attributeBase.Name = "mybaseattribute"

        ' <xs:simpleType>
        Dim simpleType As New XmlSchemaSimpleType()
        attributeBase.SchemaType = simpleType

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

        ' <xs:maxInclusive value="1000"/>
        Dim maxInclusive As New XmlSchemaMaxInclusiveFacet()
        restriction.Facets.Add(maxInclusive)
        maxInclusive.Value = "1000"

        ' <xs:complexType name="myComplexType">
        Dim complexType As New XmlSchemaComplexType()
        schema.Items.Add(complexType)
        complexType.Name = "myComplexType"

        ' <xs:attribute ref="mybaseattribute"/>
        Dim attributeBaseRef As New XmlSchemaAttribute()
        complexType.Attributes.Add(attributeBaseRef)
        attributeBaseRef.RefName = New XmlQualifiedName("mybaseattribute")

        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

El siguiente archivo XML se genera para el ejemplo de código anterior.


<?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>

Comentarios

Las declaraciones de atributo pueden estar presentes como elementos secundarios del schema elemento (que tienen ámbito global) o dentro de definiciones de tipos complejos. En el caso de tipos complejos, las declaraciones de atributos pueden estar presentes como declaraciones locales o referencias a atributos con ámbito global. Las declaraciones de atributos globales y locales tienen el atributo de tipo opcional que hace referencia a un tipo simple existente. Si no se usa el atributo de tipo opcional, la declaración de atributo (global o local) debe definir un tipo simple local.

Constructores

Nombre Description
XmlSchemaAttribute()

Inicializa una nueva instancia de la clase XmlSchemaAttribute.

Propiedades

Nombre Description
Annotation

Obtiene o establece la annotation propiedad .

(Heredado de XmlSchemaAnnotated)
AttributeSchemaType

Obtiene un XmlSchemaSimpleType objeto que representa el tipo del atributo en SchemaType función del atributo o SchemaTypeName del atributo .

AttributeType
Obsoletos.
Obsoletos.
Obsoletos.

Obtiene el objeto de Common Language Runtime (CLR) basado en o SchemaTypeSchemaTypeName en el atributo que contiene el valor posterior a la compilación de la AttributeType propiedad.

DefaultValue

Obtiene o establece el valor predeterminado para el atributo .

FixedValue

Obtiene o establece el valor fijo para el atributo .

Form

Obtiene o establece el formulario para el atributo .

Id

Obtiene o establece el identificador de cadena.

(Heredado de XmlSchemaAnnotated)
LineNumber

Obtiene o establece el número de línea del archivo al que hace referencia el schema elemento.

(Heredado de XmlSchemaObject)
LinePosition

Obtiene o establece la posición de línea del archivo al que hace referencia el schema elemento.

(Heredado de XmlSchemaObject)
Name

Obtiene o establece el nombre del atributo.

Namespaces

Obtiene o establece el objeto XmlSerializerNamespaces que se va a usar con este objeto de esquema.

(Heredado de XmlSchemaObject)
Parent

Obtiene o establece el elemento primario de este XmlSchemaObjectobjeto .

(Heredado de XmlSchemaObject)
QualifiedName

Obtiene el nombre completo del atributo .

RefName

Obtiene o establece el nombre de un atributo declarado en este esquema (u otro esquema indicado por el espacio de nombres especificado).

SchemaType

Obtiene o establece el tipo de atributo en un tipo simple.

SchemaTypeName

Obtiene o establece el nombre del tipo simple definido en este esquema (u otro esquema indicado por el espacio de nombres especificado).

SourceUri

Obtiene o establece la ubicación de origen del archivo que cargó el esquema.

(Heredado de XmlSchemaObject)
UnhandledAttributes

Obtiene o establece los atributos calificados que no pertenecen al espacio de nombres de destino del esquema actual.

(Heredado de XmlSchemaAnnotated)
Use

Obtiene o establece información sobre cómo se usa el atributo.

Métodos

Nombre Description
Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a