XmlSchemaComplexType Classe

Définition

Représente l’élément complexType du schéma XML tel que spécifié par le World Wide Web Consortium (W3C). Cette classe définit un type complexe qui détermine l’ensemble d’attributs et de contenu d’un élément.

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
Héritage

Exemples

L’exemple suivant crée un complexType élément.

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

Le fichier XML suivant est utilisé pour l’exemple de code précédent.

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

Remarques

Un élément peut être déclaré avec un attribut de type qui fait référence à un complexType élément qui définit la structure, le contenu et les attributs de cet élément.

Constructeurs

Nom Description
XmlSchemaComplexType()

Initialise une nouvelle instance de la classe XmlSchemaComplexType.

Propriétés

Nom Description
Annotation

Obtient ou définit la annotation propriété.

(Hérité de XmlSchemaAnnotated)
AnyAttribute

Obtient ou définit la valeur du XmlSchemaAnyAttribute composant du type complexe.

Attributes

Obtient la collection d’attributs pour le type complexe.

AttributeUses

Obtient la collection de tous les attributs conformes de ce type complexe et de ses types de base.

AttributeWildcard

Obtient la valeur de post-compilation pour anyAttribute ce type complexe et ses types de base.

BaseSchemaType
Obsolète.
Obsolète.
Obsolète.

Obtient le type d’objet post-compilation ou le type de données XSD (XML Schema Definition Language) intégré, l’élément simpleType ou l’élément complexType. Il s’agit d’une propriété d’ensemble d’informations post-compilation de schéma.

(Hérité de XmlSchemaType)
BaseXmlSchemaType

Obtient la valeur post-compilation pour le type de base de ce type de schéma.

(Hérité de XmlSchemaType)
Block

Obtient ou définit l’attribut block .

BlockResolved

Obtient la valeur après la compilation du type dans le jeu d’informations post-validation de schéma (infoset). Cette valeur indique comment le type est appliqué lorsqu’il xsi:type est utilisé dans le document d’instance.

ContentModel

Obtient ou définit la post-compilation XmlSchemaContentModel de ce type complexe.

ContentType

Obtient le modèle de contenu du type complexe qui contient la valeur post-compilation.

ContentTypeParticle

Obtient la particule qui contient la valeur post-compilation de la ContentType particule.

Datatype

Obtient la valeur post-compilation pour le type de données du type complexe.

(Hérité de XmlSchemaType)
DerivedBy

Obtient les informations de post-compilation sur la façon dont cet élément a été dérivé de son type de base.

(Hérité de XmlSchemaType)
Final

Obtient ou définit l’attribut final de la dérivation de type qui indique si d’autres dérivations sont autorisées.

(Hérité de XmlSchemaType)
FinalResolved

Obtient la valeur post-compilation de la Final propriété.

(Hérité de XmlSchemaType)
Id

Obtient ou définit l’ID de chaîne.

(Hérité de XmlSchemaAnnotated)
IsAbstract

Obtient ou définit les informations qui déterminent si l’élément complexType peut être utilisé dans le document d’instance.

IsMixed

Obtient ou définit des informations qui déterminent si le type complexe a un modèle de contenu mixte (balisage dans le contenu).

LineNumber

Obtient ou définit le numéro de ligne dans le fichier auquel l’élément schema fait référence.

(Hérité de XmlSchemaObject)
LinePosition

Obtient ou définit la position de ligne dans le fichier auquel l’élément schema fait référence.

(Hérité de XmlSchemaObject)
Name

Obtient ou définit le nom du type.

(Hérité de XmlSchemaType)
Namespaces

Obtient ou définit l’utilisation XmlSerializerNamespaces avec cet objet de schéma.

(Hérité de XmlSchemaObject)
Parent

Obtient ou définit le parent de ce XmlSchemaObject.

(Hérité de XmlSchemaObject)
Particle

Obtient ou définit le type de compositeur comme l’un XmlSchemaGroupRefdes classes , XmlSchemaChoiceou XmlSchemaAllXmlSchemaSequence .

QualifiedName

Obtient le nom qualifié du type généré à partir de l’attribut Name de ce type. Il s’agit d’une propriété post-schema-compilation.

(Hérité de XmlSchemaType)
SourceUri

Obtient ou définit l’emplacement source du fichier qui a chargé le schéma.

(Hérité de XmlSchemaObject)
TypeCode

Obtient le XmlTypeCode type.

(Hérité de XmlSchemaType)
UnhandledAttributes

Obtient ou définit les attributs qualifiés qui n’appartiennent pas à l’espace de noms cible du schéma actuel.

(Hérité de XmlSchemaAnnotated)

Méthodes

Nom Description
Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

S’applique à