XmlSchemaAttribute Klasse

Definition

Stellt das attribute Element aus dem XML-Schema dar, wie vom World Wide Web Consortium (W3C) angegeben. Attribute stellen zusätzliche Informationen für andere Dokumentelemente bereit. Das Attributtag wird zwischen den Tags des Elements eines Dokuments für das Schema geschachtelt. Das XML-Dokument zeigt Attribute als benannte Elemente im öffnenden Tag eines Elements an.

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
Vererbung

Beispiele

Im folgenden Beispiel wird das attribute Element erstellt.

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

Die folgende XML-Datei wird für das vorherige Codebeispiel generiert.


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

Hinweise

Attributdeklarationen können als untergeordnete Elemente des schema Elements (mit globaler Bereich) oder innerhalb komplexer Typdefinitionen vorhanden sein. Bei komplexen Typen können Attributdeklarationen als lokale Deklarationen oder Verweise auf Attribute mit globalem Bereich vorhanden sein. Sowohl globale als auch lokale Attributdeklarationen weisen das optionale Typ-Attribut auf, das sich auf einen vorhandenen einfachen Typ bezieht. Wenn das optionale Typ-Attribut nicht verwendet wird, muss die Attributdeklaration (global oder lokal) einen lokalen einfachen Typ definieren.

Konstruktoren

Name Beschreibung
XmlSchemaAttribute()

Initialisiert eine neue Instanz der XmlSchemaAttribute-Klasse.

Eigenschaften

Name Beschreibung
Annotation

Dient zum Abrufen oder Festlegen der annotation Eigenschaft.

(Geerbt von XmlSchemaAnnotated)
AttributeSchemaType

Ruft ein XmlSchemaSimpleType Objekt ab, das den Typ des Attributs basierend auf dem SchemaType Oder SchemaTypeName des Attributs darstellt.

AttributeType
Veraltet.
Veraltet.

Ruft das Common Language Runtime (CLR)-Objekt basierend auf dem SchemaType Oder SchemaTypeName des Attributs ab, das den Wert nach der Kompilierung der AttributeType Eigenschaft enthält.

DefaultValue

Dient zum Abrufen oder Festlegen des Standardwerts für das Attribut.

FixedValue

Dient zum Abrufen oder Festlegen des festen Werts für das Attribut.

Form

Dient zum Abrufen oder Festlegen des Formulars für das Attribut.

Id

Dient zum Abrufen oder Festlegen der Zeichenfolgen-ID.

(Geerbt von XmlSchemaAnnotated)
LineNumber

Ruft die Zeilennummer in der Datei ab, auf die sich das Element bezieht, oder legt diese schema fest.

(Geerbt von XmlSchemaObject)
LinePosition

Ruft die Zeilenposition in der Datei ab, auf die sich das Element bezieht, oder legt diese schema fest.

(Geerbt von XmlSchemaObject)
Name

Dient zum Abrufen oder Festlegen des Namens des Attributs.

Namespaces

Dient zum Abrufen oder Festlegen der XmlSerializerNamespaces Verwendung mit diesem Schemaobjekt.

(Geerbt von XmlSchemaObject)
Parent

Dient zum Abrufen oder Festlegen des übergeordneten Elements dieser XmlSchemaObject.

(Geerbt von XmlSchemaObject)
QualifiedName

Ruft den qualifizierten Namen für das Attribut ab.

RefName

Ruft den Namen eines in diesem Schema deklarierten Attributs ab oder legt diesen fest (oder ein anderes Schema, das durch den angegebenen Namespace angegeben ist).

SchemaType

Ruft den Attributtyp auf einen einfachen Typ ab oder legt diesen fest.

SchemaTypeName

Dient zum Abrufen oder Festlegen des Namens des einfachen Typs, der in diesem Schema definiert ist (oder ein anderes Schema, das durch den angegebenen Namespace angegeben ist).

SourceUri

Ruft den Quellspeicherort für die Datei ab, die das Schema geladen hat, oder legt diesen fest.

(Geerbt von XmlSchemaObject)
UnhandledAttributes

Ruft die qualifizierten Attribute ab, die nicht zum Zielnamespace des aktuellen Schemas gehören, oder legt diese fest.

(Geerbt von XmlSchemaAnnotated)
Use

Dient zum Abrufen oder Festlegen von Informationen zur Verwendung des Attributs.

Methoden

Name Beschreibung
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für: