XmlSchemaElement 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 element du schéma XML tel que spécifié par le World Wide Web Consortium (W3C). Cette classe est la classe de base pour tous les types de particules et est utilisée pour décrire un élément dans un document XML.
public ref class XmlSchemaElement : System::Xml::Schema::XmlSchemaParticle
public class XmlSchemaElement : System.Xml.Schema.XmlSchemaParticle
type XmlSchemaElement = class
inherit XmlSchemaParticle
Public Class XmlSchemaElement
Inherits XmlSchemaParticle
- Héritage
Exemples
L’exemple suivant crée l’élément element .
using System;
using System.Xml;
using System.Xml.Schema;
class XMLSchemaExamples
{
public static void Main()
{
XmlSchema schema = new XmlSchema();
// <xs:element name="cat" type="string"/>
XmlSchemaElement elementCat = new XmlSchemaElement();
schema.Items.Add(elementCat);
elementCat.Name = "cat";
elementCat.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
// <xs:element name="dog" type="string"/>
XmlSchemaElement elementDog = new XmlSchemaElement();
schema.Items.Add(elementDog);
elementDog.Name = "dog";
elementDog.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
// <xs:element name="redDog" substitutionGroup="dog" />
XmlSchemaElement elementRedDog = new XmlSchemaElement();
schema.Items.Add(elementRedDog);
elementRedDog.Name = "redDog";
elementRedDog.SubstitutionGroup = new XmlQualifiedName("dog");
// <xs:element name="brownDog" substitutionGroup ="dog" />
XmlSchemaElement elementBrownDog = new XmlSchemaElement();
schema.Items.Add(elementBrownDog);
elementBrownDog.Name = "brownDog";
elementBrownDog.SubstitutionGroup = new XmlQualifiedName("dog");
// <xs:element name="pets">
XmlSchemaElement elementPets = new XmlSchemaElement();
schema.Items.Add(elementPets);
elementPets.Name = "pets";
// <xs:complexType>
XmlSchemaComplexType complexType = new XmlSchemaComplexType();
elementPets.SchemaType = complexType;
// <xs:choice minOccurs="0" maxOccurs="unbounded">
XmlSchemaChoice choice = new XmlSchemaChoice();
complexType.Particle = choice;
choice.MinOccurs = 0;
choice.MaxOccursString = "unbounded";
// <xs:element ref="cat"/>
XmlSchemaElement catRef = new XmlSchemaElement();
choice.Items.Add(catRef);
catRef.RefName = new XmlQualifiedName("cat");
// <xs:element ref="dog"/>
XmlSchemaElement dogRef = new XmlSchemaElement();
choice.Items.Add(dogRef);
dogRef.RefName = new XmlQualifiedName("dog");
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="cat" type="string"/>
Dim elementCat As New XmlSchemaElement()
schema.Items.Add(elementCat)
elementCat.Name = "cat"
elementCat.SchemaTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
' <xs:element name="dog" type="string"/>
Dim elementDog As New XmlSchemaElement()
schema.Items.Add(elementDog)
elementDog.Name = "dog"
elementDog.SchemaTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
' <xs:element name="redDog" substitutionGroup="dog" />
Dim elementRedDog As New XmlSchemaElement()
schema.Items.Add(elementRedDog)
elementRedDog.Name = "redDog"
elementRedDog.SubstitutionGroup = New XmlQualifiedName("dog")
' <xs:element name="brownDog" substitutionGroup ="dog" />
Dim elementBrownDog As New XmlSchemaElement()
schema.Items.Add(elementBrownDog)
elementBrownDog.Name = "brownDog"
elementBrownDog.SubstitutionGroup = New XmlQualifiedName("dog")
' <xs:element name="pets">
Dim elementPets As New XmlSchemaElement()
schema.Items.Add(elementPets)
elementPets.Name = "pets"
' <xs:complexType>
Dim complexType As New XmlSchemaComplexType()
elementPets.SchemaType = complexType
' <xs:choice minOccurs="0" maxOccurs="unbounded">
Dim choice As New XmlSchemaChoice()
complexType.Particle = choice
choice.MinOccurs = 0
choice.MaxOccursString = "unbounded"
' <xs:element ref="cat"/>
Dim catRef As New XmlSchemaElement()
choice.Items.Add(catRef)
catRef.RefName = New XmlQualifiedName("cat")
' <xs:element ref="dog"/>
Dim dogRef As New XmlSchemaElement()
choice.Items.Add(dogRef)
dogRef.RefName = New XmlQualifiedName("dog")
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="cat" type="xs:string"/>
<xs:element name="dog" type="xs:string"/>
<xs:element name="redDog" substitutionGroup="dog" />
<xs:element name="brownDog" substitutionGroup ="dog" />
<xs:element name="pets">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="cat"/>
<xs:element ref="dog"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
Remarques
Important
- N’utilisez pas de schémas provenant de sources ou d’emplacements inconnus ou non approuvés. Cela compromettra la sécurité de votre code.
- Les schémas XML (y compris les schémas inline) sont intrinsèquement vulnérables aux attaques par déni de service ; ne les acceptent pas dans des scénarios non approuvés.
- Les messages d’erreur de validation de schéma et les exceptions peuvent exposer des informations sensibles sur le modèle de contenu ou les chemins d’URI du fichier de schéma. Veillez à ne pas exposer ces informations aux appelants non approuvés.
Constructeurs
| Nom | Description |
|---|---|
| XmlSchemaElement() |
Initialise une nouvelle instance de la classe XmlSchemaElement. |
Propriétés
| Nom | Description |
|---|---|
| Annotation |
Obtient ou définit la |
| Block |
Obtient ou définit une |
| BlockResolved |
Obtient la valeur post-compilation de la |
| Constraints |
Obtient la collection de contraintes sur l’élément. |
| DefaultValue |
Obtient ou définit la valeur par défaut de l’élément si son contenu est un type ou un contenu simple de l’élément |
| ElementSchemaType |
Obtient un XmlSchemaType objet représentant le type de l’élément en fonction des valeurs ou SchemaType des SchemaTypeName valeurs de l’élément. |
| ElementType |
Obsolète.
Obsolète.
Obsolète.
Obtient un objet CLR (Common Language Runtime) basé sur le XmlSchemaElement ou XmlSchemaElement l’élément, qui contient la valeur post-compilation de la |
| Final |
Obtient ou définit la |
| FinalResolved |
Obtient la valeur post-compilation de la |
| FixedValue |
Obtient ou définit la valeur fixe. |
| Form |
Obtient ou définit le formulaire de l’élément. |
| Id |
Obtient ou définit l’ID de chaîne. (Hérité de XmlSchemaAnnotated) |
| IsAbstract |
Obtient ou définit des informations pour indiquer si l’élément peut être utilisé dans un document d’instance. |
| IsNillable |
Obtient ou définit des informations qui indiquent si |
| LineNumber |
Obtient ou définit le numéro de ligne dans le fichier auquel l’élément |
| LinePosition |
Obtient ou définit la position de ligne dans le fichier auquel l’élément |
| MaxOccurs |
Obtient ou définit le nombre maximal de fois où la particule peut se produire. (Hérité de XmlSchemaParticle) |
| MaxOccursString |
Obtient ou définit le nombre sous forme de valeur de chaîne. Nombre maximal de fois où la particule peut se produire. (Hérité de XmlSchemaParticle) |
| MinOccurs |
Obtient ou définit le nombre minimal de fois où la particule peut se produire. (Hérité de XmlSchemaParticle) |
| MinOccursString |
Obtient ou définit le nombre sous forme de valeur de chaîne. Nombre minimal de fois où la particule peut se produire. (Hérité de XmlSchemaParticle) |
| Name |
Obtient ou définit le nom de l’élément. |
| 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) |
| QualifiedName |
Obtient le nom qualifié réel de l’élément donné. |
| RefName |
Obtient ou définit le nom de référence d’un élément déclaré dans ce schéma (ou un autre schéma indiqué par l’espace de noms spécifié). |
| SchemaType |
Obtient ou définit le type de l’élément. Il peut s’agir d’un type complexe ou d’un type simple. |
| SchemaTypeName |
Obtient ou définit le nom d’un type de données intégré défini dans ce schéma ou un autre schéma indiqué par l’espace de noms spécifié. |
| SourceUri |
Obtient ou définit l’emplacement source du fichier qui a chargé le schéma. (Hérité de XmlSchemaObject) |
| SubstitutionGroup |
Obtient ou définit le nom d’un élément qui est remplacé par cet élément. |
| 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) |