XmlSchemaElement Kelas

Definisi

element Mewakili elemen dari Skema XML seperti yang ditentukan oleh World Wide Web Consortium (W3C). Kelas ini adalah kelas dasar untuk semua jenis partikel dan digunakan untuk menjelaskan elemen dalam dokumen 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
Warisan

Contoh

Contoh berikut membuat element elemen .

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

File XML berikut digunakan untuk contoh kode sebelumnya.

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

Keterangan

Important

  • Jangan gunakan skema dari sumber atau lokasi yang tidak diketahui atau tidak tepercaya. Melakukannya akan membahayakan keamanan kode Anda.
  • Skema XML (termasuk skema sebaris) secara inheren rentan terhadap penolakan serangan layanan; jangan menerimanya dalam skenario yang tidak tepercaya.
  • Pesan kesalahan validasi skema dan pengecualian dapat mengekspos informasi sensitif tentang model konten atau jalur URI ke file skema. Berhati-hatilah untuk tidak mengekspos informasi ini kepada penelepon yang tidak tepercaya.

Konstruktor

Nama Deskripsi
XmlSchemaElement()

Menginisialisasi instans baru dari kelas XmlSchemaElement.

Properti

Nama Deskripsi
Annotation

Mendapatkan atau mengatur annotation properti.

(Diperoleh dari XmlSchemaAnnotated)
Block

Mendapatkan atau mengatur Block derivasi.

BlockResolved

Mendapatkan nilai Block pasca-kompilasi properti.

Constraints

Mendapatkan kumpulan batasan pada elemen .

DefaultValue

Mendapatkan atau mengatur nilai default elemen jika kontennya adalah jenis sederhana atau konten elemen adalah textOnly.

ElementSchemaType

Mendapatkan objek yang XmlSchemaType mewakili jenis elemen berdasarkan SchemaType atau SchemaTypeName nilai elemen.

ElementType
Kedaluwarsa.
Kedaluwarsa.
Kedaluwarsa.

Mendapatkan objek runtime bahasa umum (CLR) berdasarkan XmlSchemaElement atau XmlSchemaElement elemen , yang menyimpan nilai ElementType pasca-kompilasi properti.

Final

Mendapatkan atau mengatur Final properti untuk menunjukkan bahwa tidak ada derivasi lebih lanjut yang diizinkan.

FinalResolved

Mendapatkan nilai Final pasca-kompilasi properti.

FixedValue

Mendapatkan atau menetapkan nilai tetap.

Form

Mendapatkan atau mengatur formulir untuk elemen .

Id

Mendapatkan atau mengatur id string.

(Diperoleh dari XmlSchemaAnnotated)
IsAbstract

Mendapatkan atau mengatur informasi untuk menunjukkan apakah elemen dapat digunakan dalam dokumen instans.

IsNillable

Mendapatkan atau mengatur informasi yang menunjukkan apakah xsi:nil dapat terjadi dalam data instans. Menunjukkan apakah nilai nihil eksplisit dapat ditetapkan ke elemen .

LineNumber

Mendapatkan atau mengatur nomor baris dalam file yang schema dirujuk elemen.

(Diperoleh dari XmlSchemaObject)
LinePosition

Mendapatkan atau mengatur posisi baris dalam file yang schema dirujuk elemen.

(Diperoleh dari XmlSchemaObject)
MaxOccurs

Mendapatkan atau mengatur berapa kali partikel dapat terjadi.

(Diperoleh dari XmlSchemaParticle)
MaxOccursString

Mendapatkan atau mengatur angka sebagai nilai string. Berapa kali partikel dapat terjadi.

(Diperoleh dari XmlSchemaParticle)
MinOccurs

Mendapatkan atau mengatur jumlah minimum waktu partikel dapat terjadi.

(Diperoleh dari XmlSchemaParticle)
MinOccursString

Mendapatkan atau mengatur angka sebagai nilai string. Jumlah minimum kali partikel dapat terjadi.

(Diperoleh dari XmlSchemaParticle)
Name

Mendapatkan atau mengatur nama elemen.

Namespaces

Mendapatkan atau mengatur XmlSerializerNamespaces untuk digunakan dengan objek skema ini.

(Diperoleh dari XmlSchemaObject)
Parent

Mendapatkan atau mengatur induk dari ini XmlSchemaObject.

(Diperoleh dari XmlSchemaObject)
QualifiedName

Mendapatkan nama aktual yang memenuhi syarat untuk elemen yang diberikan.

RefName

Mendapatkan atau mengatur nama referensi elemen yang dideklarasikan dalam skema ini (atau skema lain yang ditunjukkan oleh namespace yang ditentukan).

SchemaType

Mendapatkan atau mengatur jenis elemen. Ini bisa menjadi jenis kompleks atau jenis sederhana.

SchemaTypeName

Mendapatkan atau mengatur nama tipe data bawaan yang ditentukan dalam skema ini atau skema lain yang ditunjukkan oleh namespace yang ditentukan.

SourceUri

Mendapatkan atau mengatur lokasi sumber untuk file yang memuat skema.

(Diperoleh dari XmlSchemaObject)
SubstitutionGroup

Mendapatkan atau mengatur nama elemen yang sedang digantikan oleh elemen ini.

UnhandledAttributes

Mendapatkan atau mengatur atribut yang memenuhi syarat yang bukan milik namespace target skema saat ini.

(Diperoleh dari XmlSchemaAnnotated)

Metode

Nama Deskripsi
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk