Nyelv

XmlSchemaElement Osztály

Definíció

element A World Wide Web Consortium (W3C) által megadott XML-sémából származó elemet jelöli. Ez az osztály az összes részecsketípus alaposztálya, és egy XML-dokumentum egy elemének leírására szolgál.

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
Öröklődés

Példák

Az alábbi példa létrehozza az element elemet.

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

Az előző kód példájához a következő XML-fájlt használja a rendszer.

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

Megjegyzések

Important

  • Ne használjon ismeretlen vagy nem megbízható forrásokból vagy helyekről származó sémákat. Ha így tesz, azzal veszélyezteti a kód biztonságát.
  • Az XML-sémák (beleértve a beágyazott sémákat) eredendően ki vannak téve a szolgáltatásmegtagadási támadásoknak; nem fogadják el őket nem megbízható helyzetekben.
  • A sémaérvényesítési hibaüzenetek és kivételek bizalmas információkat tehetnek közzé a tartalommodellről vagy a sémafájl URI-elérési útjairól. Ügyeljen arra, hogy ne tegye közzé ezeket az információkat nem megbízható hívóknak.

Konstruktorok

Név Description
XmlSchemaElement()

Inicializálja a XmlSchemaElement osztály új példányát.

Tulajdonságok

Név Description
Annotation

Lekéri vagy beállítja a tulajdonságot annotation .

(Öröklődés forrása XmlSchemaAnnotated)
Block

Lekéri vagy beállítja a származtatást Block .

BlockResolved

Lekéri a tulajdonság fordítás utáni értékét Block .

Constraints

Lekéri az elemre vonatkozó korlátozások gyűjteményét.

DefaultValue

Lekéri vagy beállítja az elem alapértelmezett értékét, ha annak tartalma az elem textOnlyegyszerű típusa vagy tartalma.

ElementSchemaType

XmlSchemaType Lekéri az elem típusát az elem vagy SchemaType értékek alapján SchemaTypeName ábrázoló objektumot.

ElementType
Elavult.
Elavult.
Elavult.

Lekéri az elem vagy XmlSchemaElement elem alapján XmlSchemaElement egy közös nyelvi futtatókörnyezeti (CLR) objektumot, amely a tulajdonság fordítás utáni értékét ElementType tartalmazza.

Final

Lekéri vagy beállítja a Final tulajdonságot, hogy jelezze, hogy nem engedélyezett további származtatás.

FinalResolved

Lekéri a tulajdonság fordítás utáni értékét Final .

FixedValue

Lekéri vagy beállítja a rögzített értéket.

Form

Lekéri vagy beállítja az elem űrlapot.

Id

Lekéri vagy beállítja a sztring azonosítóját.

(Öröklődés forrása XmlSchemaAnnotated)
IsAbstract

Lekéri vagy beállítja az adatokat annak jelzésére, hogy az elem használható-e egy példánydokumentumban.

IsNillable

Lekéri vagy beállítja azokat az információkat, amelyek jelzik, hogy előfordulhatnak-e xsi:nil a példányadatok. Azt jelzi, hogy hozzárendelhető-e explicit nulla érték az elemhez.

LineNumber

Lekéri vagy beállítja annak a fájlnak a sorszámát, amelyre az schema elem hivatkozik.

(Öröklődés forrása XmlSchemaObject)
LinePosition

Lekéri vagy beállítja a sor pozícióját abban a fájlban, amelyre az schema elem hivatkozik.

(Öröklődés forrása XmlSchemaObject)
MaxOccurs

Lekéri vagy beállítja a részecske előfordulásának maximális számát.

(Öröklődés forrása XmlSchemaParticle)
MaxOccursString

Sztringértékként adja meg vagy állítja be a számot. Maximális hányszor fordulhat elő a részecske.

(Öröklődés forrása XmlSchemaParticle)
MinOccurs

Lekéri vagy beállítja a részecske előfordulásának minimális számát.

(Öröklődés forrása XmlSchemaParticle)
MinOccursString

Sztringértékként adja meg vagy állítja be a számot. A részecske előfordulásának minimális száma.

(Öröklődés forrása XmlSchemaParticle)
Name

Lekéri vagy beállítja az elem nevét.

Namespaces

Lekéri vagy beállítja a XmlSerializerNamespaces sémaobjektumhoz használni kívánt objektumot.

(Öröklődés forrása XmlSchemaObject)
Parent

Lekéri vagy beállítja ennek XmlSchemaObjecta szülőnek a szülőját.

(Öröklődés forrása XmlSchemaObject)
QualifiedName

Lekéri az adott elem tényleges minősített nevét.

RefName

Lekéri vagy beállítja a sémában deklarált elem referencianevét (vagy a megadott névtér által megjelölt másik sémát).

SchemaType

Lekéri vagy beállítja az elem típusát. Ez lehet összetett vagy egyszerű típus.

SchemaTypeName

Lekéri vagy beállítja a sémában definiált beépített adattípus nevét, vagy beállít egy másik sémát, amelyet a megadott névtér jelez.

SourceUri

Lekéri vagy beállítja a sémát betöltött fájl forráshelyét.

(Öröklődés forrása XmlSchemaObject)
SubstitutionGroup

Lekéri vagy beállítja az elem által helyettesített elem nevét.

UnhandledAttributes

Lekéri vagy beállítja azokat a minősített attribútumokat, amelyek nem tartoznak az aktuális séma célnévteréhez.

(Öröklődés forrása XmlSchemaAnnotated)

Metódusok

Név Description
Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)

A következőre érvényes: