Jazyk

XmlSchemaComplexType Třída

Definice

complexType Představuje prvek ze schématu XML určený konsorciem W3C (World Wide Web Consortium). Tato třída definuje komplexní typ, který určuje sadu atributů a obsah prvku.

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
Dědičnost

Příklady

Následující příklad vytvoří complexType prvek.

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

Následující soubor XML se používá pro předchozí příklad kódu.

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

Poznámky

Prvek lze deklarovat pomocí atributu typu, který odkazuje na complexType prvek, který definuje strukturu, obsah a atributy tohoto prvku.

Konstruktory

Name Description
XmlSchemaComplexType()

Inicializuje novou instanci XmlSchemaComplexType třídy.

Vlastnosti

Name Description
Annotation

Získá nebo nastaví annotation vlastnost.

(Zděděno od XmlSchemaAnnotated)
AnyAttribute

Získá nebo nastaví hodnotu pro XmlSchemaAnyAttribute komponentu komplexního typu.

Attributes

Získá kolekci atributů pro komplexní typ.

AttributeUses

Získá kolekci všech vyhovujících atributů tohoto komplexního typu a jeho základní typy.

AttributeWildcard

Získá hodnotu po kompilaci pro anyAttribute tento komplexní typ a jeho základní typy.

BaseSchemaType
Zastaralé.
Zastaralé.
Zastaralé.

Získá post-kompilace typ objektu nebo integrovaný XML Schema Definition Language (XSD) datový typ, simpleType element nebo complexType element. Toto je vlastnost infoset po kompilaci schématu.

(Zděděno od XmlSchemaType)
BaseXmlSchemaType

Získá hodnotu po kompilaci pro základní typ tohoto typu schématu.

(Zděděno od XmlSchemaType)
Block

Získá nebo nastaví block atribut.

BlockResolved

Získá hodnotu po zkompilování typu do sady informací po ověření schématu (infoset). Tato hodnota určuje, jak se typ vynucuje při xsi:type použití v dokumentu instance.

ContentModel

Získá nebo nastaví po kompilaci XmlSchemaContentModel tohoto komplexního typu.

ContentType

Získá model obsahu komplexního typu, který obsahuje hodnotu po kompilaci.

ContentTypeParticle

Získá částice, která uchovává hodnotu ContentType po kompilaci částice.

Datatype

Získá hodnotu po kompilaci pro datový typ komplexního typu.

(Zděděno od XmlSchemaType)
DerivedBy

Získá post-kompilace informace o tom, jak byl tento prvek odvozen z jeho základního typu.

(Zděděno od XmlSchemaType)
Final

Získá nebo nastaví konečný atribut odvození typu, který označuje, zda jsou další odvození povoleny.

(Zděděno od XmlSchemaType)
FinalResolved

Získá hodnotu Final po kompilaci vlastnosti.

(Zděděno od XmlSchemaType)
Id

Získá nebo nastaví ID řetězce.

(Zděděno od XmlSchemaAnnotated)
IsAbstract

Získá nebo nastaví informace, které určuje, zda complexType prvek lze použít v dokumentu instance.

IsMixed

Získá nebo nastaví informace, které určují, zda komplexní typ má smíšený model obsahu (značky v rámci obsahu).

LineNumber

Získá nebo nastaví číslo řádku v souboru, na který schema prvek odkazuje.

(Zděděno od XmlSchemaObject)
LinePosition

Získá nebo nastaví pozici řádku v souboru, na který schema prvek odkazuje.

(Zděděno od XmlSchemaObject)
Name

Získá nebo nastaví název typu.

(Zděděno od XmlSchemaType)
Namespaces

Získá nebo nastaví XmlSerializerNamespaces použití s tímto objektem schématu.

(Zděděno od XmlSchemaObject)
Parent

Získá nebo nastaví nadřazený objekt tohoto XmlSchemaObject.

(Zděděno od XmlSchemaObject)
Particle

Získá nebo nastaví typ kompozitoru jako jeden z XmlSchemaGroupRef, XmlSchemaChoice, XmlSchemaAllnebo XmlSchemaSequence třídy.

QualifiedName

Získá kvalifikovaný název pro typ sestavený z atributu Name tohoto typu. Toto je vlastnost po kompilaci schématu.

(Zděděno od XmlSchemaType)
SourceUri

Získá nebo nastaví zdrojové umístění pro soubor, který načetl schéma.

(Zděděno od XmlSchemaObject)
TypeCode

XmlTypeCode Získá typ.

(Zděděno od XmlSchemaType)
UnhandledAttributes

Získá nebo nastaví kvalifikované atributy, které nepatří do cílového oboru názvů aktuálního schématu.

(Zděděno od XmlSchemaAnnotated)

Metody

Name Description
Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro