XmlSchemaComplexType Klasse

Definition

Stellt das complexType Element aus dem XML-Schema dar, wie vom World Wide Web Consortium (W3C) angegeben. Diese Klasse definiert einen komplexen Typ, der den Satz von Attributen und Inhalten eines Elements bestimmt.

public ref class XmlSchemaComplexType : System::Xml::Schema::XmlSchemaType
public class XmlSchemaComplexType : System.Xml.Schema.XmlSchemaType
type XmlSchemaComplexType = class
    inherit XmlSchemaType
Public Class XmlSchemaComplexType
Inherits XmlSchemaType
Vererbung

Beispiele

Im folgenden Beispiel wird ein complexType Element erstellt.

using System;
using System.Xml;
using System.Xml.Schema;

class XMLSchemaExamples
{
    public static void Main()
    {

        XmlSchema schema = new XmlSchema();

        // <xs:element name="stringElementWithAnyAttribute">
        XmlSchemaElement element = new XmlSchemaElement();
        schema.Items.Add(element);
        element.Name = "stringElementWithAnyAttribute";

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

        // <xs:simpleContent>
        XmlSchemaSimpleContent simpleContent = new XmlSchemaSimpleContent();
        complexType.ContentModel = simpleContent;

        // <extension base= "xs:string">
        XmlSchemaSimpleContentExtension extension = new XmlSchemaSimpleContentExtension();
        simpleContent.Content = extension;
        extension.BaseTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");

        // <xs:anyAttribute namespace="##targetNamespace"/>
        XmlSchemaAnyAttribute anyAttribute = new XmlSchemaAnyAttribute();
        extension.AnyAttribute = anyAttribute;
        anyAttribute.Namespace = "##targetNamespace";

        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:element name="stringElementWithAnyAttribute">
        Dim element As New XmlSchemaElement()
        schema.Items.Add(element)
        element.Name = "stringElementWithAnyAttribute"

        ' <xs:complexType>
        Dim complexType As New XmlSchemaComplexType()
        element.SchemaType = complexType

        ' <xs:simpleContent>
        Dim simpleContent As New XmlSchemaSimpleContent()
        complexType.ContentModel = simpleContent

        ' <extension base="xs:string">
        Dim extension As New XmlSchemaSimpleContentExtension()
        simpleContent.Content = extension
        extension.BaseTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")

        ' <xs:anyAttribute namespace="##targetNamespace"/>
        Dim anyAttribute As New XmlSchemaAnyAttribute()
        extension.AnyAttribute = anyAttribute
        anyAttribute.Namespace = "##targetNamespace"

        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 vorangehende Codebeispiel verwendet.

<?xml version="1.0" encoding="IBM437"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="stringElementWithAnyAttribute">
        <xs:complexType>
            <xs:simpleContent>
                <xs:extension base="xs:string">
                    <xs:anyAttribute namespace="##targetNamespace"/>
                </xs:extension>
            </xs:simpleContent>
        </xs:complexType>
    </xs:element>
</xs:schema>

Hinweise

Ein Element kann mit einem Typ-Attribut deklariert werden, das auf ein complexType Element verweist, das die Struktur, den Inhalt und die Attribute dieses Elements definiert.

Konstruktoren

Name Beschreibung
XmlSchemaComplexType()

Initialisiert eine neue Instanz der XmlSchemaComplexType-Klasse.

Eigenschaften

Name Beschreibung
Annotation

Dient zum Abrufen oder Festlegen der annotation Eigenschaft.

(Geerbt von XmlSchemaAnnotated)
AnyAttribute

Dient zum Abrufen oder Festlegen des Werts für die XmlSchemaAnyAttribute Komponente des komplexen Typs.

Attributes

Ruft die Auflistung der Attribute für den komplexen Typ ab.

AttributeUses

Ruft die Auflistung aller erfüllten Attribute dieses komplexen Typs und seiner Basistypen ab.

AttributeWildcard

Ruft den Wert nach der Kompilierung für anyAttribute diesen komplexen Typ und dessen Basistypen ab.

BaseSchemaType
Veraltet.
Veraltet.
Veraltet.

Ruft den Objekttyp nach der Kompilierung oder den integrierten XML-Schemadefinitionssprache (XSD)-Datentyp, simpleType-Element oder complexType-Element ab. Dies ist eine Infoseteigenschaft nach der Schemakompilierung.

(Geerbt von XmlSchemaType)
BaseXmlSchemaType

Ruft den Wert nach der Kompilierung für den Basistyp dieses Schematyps ab.

(Geerbt von XmlSchemaType)
Block

Dient zum Abrufen oder Festlegen des Attributs block .

BlockResolved

Ruft den Wert ab, nachdem der Typ in den Informationssatz nach der Schemaüberprüfung (Infoset) kompiliert wurde. Dieser Wert gibt an, wie der Typ erzwungen wird, wenn xsi:type er im Instanzdokument verwendet wird.

ContentModel

Dient zum Abrufen oder Festlegen der Nachkompilierung XmlSchemaContentModel dieses komplexen Typs.

ContentType

Ruft das Inhaltsmodell des komplexen Typs ab, der den Wert nach der Kompilierung enthält.

ContentTypeParticle

Ruft das Partikel ab, das den Nachkompilierungswert des ContentType Partikels enthält.

Datatype

Ruft den Wert nach der Kompilierung für den Datentyp des komplexen Typs ab.

(Geerbt von XmlSchemaType)
DerivedBy

Ruft die Informationen nach der Kompilierung ab, wie dieses Element vom Basistyp abgeleitet wurde.

(Geerbt von XmlSchemaType)
Final

Dient zum Abrufen oder Festlegen des endgültigen Attributs der Typableitung, die angibt, ob weitere Ableitungen zulässig sind.

(Geerbt von XmlSchemaType)
FinalResolved

Ruft den Nachkompilierungswert der Final Eigenschaft ab.

(Geerbt von XmlSchemaType)
Id

Dient zum Abrufen oder Festlegen der Zeichenfolgen-ID.

(Geerbt von XmlSchemaAnnotated)
IsAbstract

Dient zum Abrufen oder Festlegen der Informationen, die bestimmen, ob das complexType Element im Instanzdokument verwendet werden kann.

IsMixed

Dient zum Abrufen oder Festlegen von Informationen, die bestimmen, ob der komplexe Typ über ein gemischtes Inhaltsmodell (Markup innerhalb des Inhalts) verfügt.

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 Typs.

(Geerbt von XmlSchemaType)
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)
Particle

Dient zum Abrufen oder Festlegen des Kompositortyps als einer der XmlSchemaGroupRefKlassen , XmlSchemaChoice, XmlSchemaAlloder XmlSchemaSequence dies.

QualifiedName

Ruft den qualifizierten Namen für den Typ ab, der aus dem Name Attribut dieses Typs erstellt wurde. Dies ist eine Eigenschaft nach der Schemakompilierung.

(Geerbt von XmlSchemaType)
SourceUri

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

(Geerbt von XmlSchemaObject)
TypeCode

Ruft den XmlTypeCode Typ ab.

(Geerbt von XmlSchemaType)
UnhandledAttributes

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

(Geerbt von XmlSchemaAnnotated)

Methoden

Name Beschreibung
Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(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: