XmlSchemaComplexType Klasse

Definition

Stellt das complexType-Element von XML-Schema wie vom World Wide Web Consortium (W3C) angegeben dar.Represents the complexType element from XML Schema as specified by the World Wide Web Consortium (W3C). Diese Klasse definiert einen komplexen Typ, der die Gruppe der Attribute und den Inhalt eines Elements bestimmt.This class defines a complex type that determines the set of attributes and content of an element.

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.The following example creates a complexType element.

#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:element name="stringElementWithAnyAttribute">
        XmlSchemaElement^ element = gcnew XmlSchemaElement();
        schema->Items->Add(element);
        element->Name = "stringElementWithAnyAttribute";

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

        // <xs:simpleContent>
        XmlSchemaSimpleContent^ simpleContent = gcnew XmlSchemaSimpleContent();
        complexType->ContentModel = simpleContent;

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

        // <xs:anyAttribute namespace="##targetNamespace"/>
        XmlSchemaAnyAttribute^ anyAttribute = gcnew XmlSchemaAnyAttribute();
        extension->AnyAttribute = anyAttribute;
        anyAttribute->Namespace = "##targetNamespace";

        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: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 vorherige Codebeispiel verwendet.The following XML file is used for the preceding code example.

<?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 Type-Attribut deklariert werden, das auf ein complexType Element verweist, das die Struktur, den Inhalt und die Attribute dieses Elements definiert.An element can be declared with a type attribute that refers to a complexType element that defines the structure, content, and attributes of that element.

Konstruktoren

XmlSchemaComplexType()

Initialisiert eine neue Instanz der XmlSchemaComplexType-Klasse.Initializes a new instance of the XmlSchemaComplexType class.

Eigenschaften

Annotation

Ruft die annotation-Eigenschaft ab oder legt diese fest.Gets or sets the annotation property.

(Geerbt von XmlSchemaAnnotated)
AnyAttribute

Ruft den Wert für die XmlSchemaAnyAttribute-Komponente des komplexen Typs ab oder legt diesen fest.Gets or sets the value for the XmlSchemaAnyAttribute component of the complex type.

Attributes

Ruft die Auflistung von Attributen für den komplexen Typ ab.Gets the collection of attributes for the complex type.

AttributeUses

Ruft die Auflistung aller kompilierten Attribute dieses komplexen Typs und von dessen Basistypen ab.Gets the collection of all the complied attributes of this complex type and its base types.

AttributeWildcard

Ruft den Wert nach der Kompilierung von anyAttribute für diesen komplexen Typ und dessen Basistypen ab.Gets the post-compilation value for anyAttribute for this complex type and its base type(s).

BaseSchemaType

Ruft den Objekttyp nach der Kompilierung oder den integrierten XSD (XML Schema Definition)-Datentyp, das simpleType-Element oder das complexType-Element ab.Gets the post-compilation object type or the built-in XML Schema Definition Language (XSD) data type, simpleType element, or complexType element. Dies ist eine PSCI-Eigenschaft (Post-Schema-Compilation Infoset).This is a post-schema-compilation infoset property.

(Geerbt von XmlSchemaType)
BaseXmlSchemaType

Ruft den Wert nach der Kompilierung für den Basistyp dieses Schematyps ab.Gets the post-compilation value for the base type of this schema type.

(Geerbt von XmlSchemaType)
Block

Ruft das block-Attribut ab oder legt dieses fest.Gets or sets the block attribute.

BlockResolved

Ruft den Wert ab, nachdem der Typ in den Informationensatz (infoset) für die Post-Schema-Validierung kompiliert wurde.Gets the value after the type has been compiled to the post-schema-validation information set (infoset). Dieser Wert gibt an, wie ein Typ erzwungen wird, wenn xsi:type im Instanzdokument verwendet wird.This value indicates how the type is enforced when xsi:type is used in the instance document.

ContentModel

Ruft das XmlSchemaContentModel nach der Kompilierung dieses komplexen Typs ab oder legt dieses fest.Gets or sets the post-compilation XmlSchemaContentModel of this complex type.

ContentType

Ruft das Inhaltsmodell des komplexen Typs ab, der den Wert nach der Kompilierung enthält.Gets the content model of the complex type which holds the post-compilation value.

ContentTypeParticle

Ruft das Partikel ab, das den Wert des ContentType-Partikels nach der Kompilierung enthält.Gets the particle that holds the post-compilation value of the ContentType particle.

Datatype

Ruft den Wert nach der Kompilierung für den Datentyp des komplexen Typs ab.Gets the post-compilation value for the data type of the complex type.

(Geerbt von XmlSchemaType)
DerivedBy

Ruft die Informationen nach der Kompilierung darüber ab, wie dieses Element von seinem Basistyp abgeleitet wurde.Gets the post-compilation information on how this element was derived from its base type.

(Geerbt von XmlSchemaType)
Final

Ruft das abschließende Attribut der Typableitung ab, das angibt, ob weitere Ableitungen zulässig sind, oder legt dieses fest.Gets or sets the final attribute of the type derivation that indicates if further derivations are allowed.

(Geerbt von XmlSchemaType)
FinalResolved

Ruft den Wert der Final-Eigenschaft nach der Kompilierung ab.Gets the post-compilation value of the Final property.

(Geerbt von XmlSchemaType)
Id

Ruft die Zeichenfolgen-ID ab oder legt diese fest.Gets or sets the string id.

(Geerbt von XmlSchemaAnnotated)
IsAbstract

Ruft Informationen ab, die bestimmen, ob das complexType-Element im Instanzdokument verwendet werden kann, oder legt diese fest.Gets or sets the information that determines if the complexType element can be used in the instance document.

IsMixed

Ruft Informationen ab, die bestimmen, ob der komplexe Typ über ein Modell für gemischten Inhalt (Markup im Inhalt) verfügt, oder legt diese fest.Gets or sets information that determines if the complex type has a mixed content model (markup within the content).

LineNumber

Ruft die Zeilennummer in der Datei ab, auf die das schema-Element verweist, oder legt diese fest.Gets or sets the line number in the file to which the schema element refers.

(Geerbt von XmlSchemaObject)
LinePosition

Ruft die Zeilenposition in der Datei ab, auf die das schema-Element verweist, oder legt diese fest.Gets or sets the line position in the file to which the schema element refers.

(Geerbt von XmlSchemaObject)
Name

Ruft den Namen des Typs ab oder legt diesen fest.Gets or sets the name of the type.

(Geerbt von XmlSchemaType)
Namespaces

Ruft die mit diesem Schemaobjekt zu verwendenden XmlSerializerNamespaces ab oder legt diese fest.Gets or sets the XmlSerializerNamespaces to use with this schema object.

(Geerbt von XmlSchemaObject)
Parent

Ruft das übergeordnete Objekt dieses XmlSchemaObject ab oder legt dieses fest.Gets or sets the parent of this XmlSchemaObject.

(Geerbt von XmlSchemaObject)
Particle

Ruft den Compositortyp als eine der Klassen XmlSchemaGroupRef, XmlSchemaChoice, XmlSchemaAll oder XmlSchemaSequence ab oder legt diesen fest.Gets or sets the compositor type as one of the XmlSchemaGroupRef, XmlSchemaChoice, XmlSchemaAll, or XmlSchemaSequence classes.

QualifiedName

Ruft den gekennzeichneten Namen für den Typ ab, der aus dem Name-Attribut dieses Typs erstellt wurde.Gets the qualified name for the type built from the Name attribute of this type. Dies ist eine Eigenschaft nach der Kompilierung des Schemas.This is a post-schema-compilation property.

(Geerbt von XmlSchemaType)
SourceUri

Ruft die Quellposition für die Datei ab, die das Schema geladen hat, oder legt diese fest.Gets or sets the source location for the file that loaded the schema.

(Geerbt von XmlSchemaObject)
TypeCode

Ruft den XmlTypeCode des Typs ab.Gets the XmlTypeCode of the type.

(Geerbt von XmlSchemaType)
UnhandledAttributes

Ruft die qualifizierten Attribute ab, die nicht zum Zielnamespace des aktuellen Schemas gehören, oder legt diese fest.Gets or sets the qualified attributes that do not belong to the current schema's target namespace.

(Geerbt von XmlSchemaAnnotated)

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Dient als die Standard-HashfunktionServes as the default hash function.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Geerbt von Object)

Gilt für: