XmlSchemaComplexType Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente l'élément complexType
issu d'un schéma XML comme spécifié par le W3C (World Wide Web Consortium). Cette classe définit un type complexe qui détermine l'ensemble des attributs et du 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 <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
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
XmlSchemaComplexType() |
Initialise une nouvelle instance de la classe XmlSchemaComplexType. |
Propriétés
Annotation |
Obtient ou définit la propriété |
AnyAttribute |
Obtient ou définit la valeur du composant XmlSchemaAnyAttribute de type complexe. |
Attributes |
Obtient la collection d’attributs pour le type complexe. |
AttributeUses |
Obtient la collection de tous les attributs compilés de ce type complexe et de ses types de base. |
AttributeWildcard |
Obtient la valeur postérieure à la compilation pour |
BaseSchemaType |
Obsolète.
Obsolète.
Obsolète.
Obtient le type d'objet de post-compilation ou le type de données en langage XSD (XML Schema Definition) intégré, l'élément simpleType ou l'élément complexType. Il s'agit d'une propriété de jeu d'informations postérieure à la compilation du schéma. (Hérité de XmlSchemaType) |
BaseXmlSchemaType |
Obtient la valeur de post-compilation pour le type de base de ce type de schéma. (Hérité de XmlSchemaType) |
Block |
Obtient ou définit l’attribut |
BlockResolved |
Obtient la valeur après la compilation du type dans le jeu d’informations (infoset) postérieur à la validation du schéma. Cette valeur indique comment le type est appliqué lorsque |
ContentModel |
Obtient ou définit le XmlSchemaContentModel postérieur à la compilation de ce type complexe. |
ContentType |
Obtient le modèle de contenu du type complexe qui contient la valeur postérieure à la compilation. |
ContentTypeParticle |
Obtient la partie qui contient la valeur de post-compilation de la particule ContentType. |
Datatype |
Obtient la valeur de post-compilation pour le type de données du type complexe. (Hérité de XmlSchemaType) |
DerivedBy |
Obtient les informations de post-compilation sur la dérivation de cet élément à partir de son type de base. (Hérité de XmlSchemaType) |
Final |
Obtient ou définit le dernier attribut de la dérivation de type qui indique si des dérivations supplémentaires sont autorisées. (Hérité de XmlSchemaType) |
FinalResolved |
Obtient la valeur de post-compilation de la propriété Final. (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 |
IsMixed |
Obtient ou définit des informations qui déterminent si le type complexe possède un modèle de contenu mixte (balisage à l'intérieur du contenu). |
LineNumber |
Obtient ou définit le numéro de la ligne du fichier à laquelle l'élément |
LinePosition |
Obtient ou définit la position de la ligne du fichier à laquelle l'élément |
Name |
Obtient ou définit le nom du type. (Hérité de XmlSchemaType) |
Namespaces |
Obtient ou définit le XmlSerializerNamespaces à utiliser 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'une des classes XmlSchemaGroupRef, XmlSchemaChoice, XmlSchemaAll ou XmlSchemaSequence. |
QualifiedName |
Obtient le nom qualifié du type construit à partir de l'attribut |
SourceUri |
Obtient ou définit l'emplacement de la source pour le fichier qui a chargé le schéma. (Hérité de XmlSchemaObject) |
TypeCode |
Obtient le XmlTypeCode du 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 en cours. (Hérité de XmlSchemaAnnotated) |
Méthodes
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |