XmlSchemaElement Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
element World Wide Web Consortium (W3C) tarafından belirtilen XML Şeması öğesini temsil eder. Bu sınıf, tüm parçacık türleri için temel sınıftır ve XML belgesindeki bir öğeyi tanımlamak için kullanılır.
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
- Devralma
Örnekler
Aşağıdaki örnek öğesini oluşturur 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
Yukarıdaki kod örneği için aşağıdaki XML dosyası kullanılır.
<?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>
Açıklamalar
Important
- Bilinmeyen veya güvenilmeyen kaynaklardan veya konumlardan şemaları kullanmayın. Bunu yaptığınızda kodunuzun güvenliği tehlikeye girer.
- XML şemaları (satır içi şemalar dahil) hizmet reddi saldırılarına karşı doğal olarak savunmasızdır; güvenilmeyen senaryolarda bunları kabul etmeyin.
- Şema doğrulama hata iletileri ve özel durumlar, şema dosyasının içerik modeli veya URI yolları hakkında hassas bilgileri kullanıma sunabilir. Bu bilgileri güvenilmeyen arayanlara göstermemeye dikkat edin.
Oluşturucular
| Name | Description |
|---|---|
| XmlSchemaElement() |
XmlSchemaElement sınıfının yeni bir örneğini başlatır. |
Özellikler
| Name | Description |
|---|---|
| Annotation |
özelliğini alır veya ayarlar |
| Block |
Türetme |
| BlockResolved |
Özelliğin derleme sonrası değerini |
| Constraints |
öğesinde kısıtlamalar koleksiyonunu alır. |
| DefaultValue |
İçeriği basit bir türse veya öğesinin içeriği ise |
| ElementSchemaType |
öğesinin veya XmlSchemaType değerlerine göre öğesinin SchemaType türünü temsil eden bir SchemaTypeName nesne alır. |
| ElementType |
Geçersiz.
Geçersiz.
Geçersiz.
Özelliğin XmlSchemaElement derleme sonrası değerini XmlSchemaElement tutan veya |
| Final |
Başka türetmelere izin verilmediğini belirtmek için özelliğini alır veya ayarlar |
| FinalResolved |
Özelliğin derleme sonrası değerini |
| FixedValue |
Sabit değeri alır veya ayarlar. |
| Form |
öğesinin formunu alır veya ayarlar. |
| Id |
Dize kimliğini alır veya ayarlar. (Devralındığı yer: XmlSchemaAnnotated) |
| IsAbstract |
Öğenin bir örnek belgesinde kullanılıp kullanılamayabileceğini belirtmek için bilgileri alır veya ayarlar. |
| IsNillable |
Örnek verilerinde gerçekleşip |
| LineNumber |
Öğesinin başvurduğu |
| LinePosition |
Öğesinin başvurduğu |
| MaxOccurs |
Parçacığın oluşma sayısı üst sınırını alır veya ayarlar. (Devralındığı yer: XmlSchemaParticle) |
| MaxOccursString |
Sayıyı dize değeri olarak alır veya ayarlar. Parçacığın oluşma sayısı üst sınırı. (Devralındığı yer: XmlSchemaParticle) |
| MinOccurs |
Parçacığın oluşabileceği minimum sayısını alır veya ayarlar. (Devralındığı yer: XmlSchemaParticle) |
| MinOccursString |
Sayıyı dize değeri olarak alır veya ayarlar. Parçacığın oluşabileceği minimum sayıdır. (Devralındığı yer: XmlSchemaParticle) |
| Name |
Öğesinin adını alır veya ayarlar. |
| Namespaces |
Bu şema nesnesiyle kullanılacak öğesini XmlSerializerNamespaces alır veya ayarlar. (Devralındığı yer: XmlSchemaObject) |
| Parent |
Bu XmlSchemaObjectöğesinin üst öğesini alır veya ayarlar. (Devralındığı yer: XmlSchemaObject) |
| QualifiedName |
Verilen öğenin gerçek nitelenmiş adını alır. |
| RefName |
Bu şemada bildirilen bir öğenin başvuru adını (veya belirtilen ad alanı tarafından belirtilen başka bir şemayı) alır veya ayarlar. |
| SchemaType |
Öğesinin türünü alır veya ayarlar. Bu karmaşık bir tür veya basit bir tür olabilir. |
| SchemaTypeName |
Bu şemada veya belirtilen ad alanı tarafından belirtilen başka bir şemada tanımlanan yerleşik veri türünün adını alır veya ayarlar. |
| SourceUri |
Şemayı yükleyen dosyanın kaynak konumunu alır veya ayarlar. (Devralındığı yer: XmlSchemaObject) |
| SubstitutionGroup |
Bu öğe tarafından değiştirilen bir öğenin adını alır veya ayarlar. |
| UnhandledAttributes |
Geçerli şemanın hedef ad alanına ait olmayan nitelenmiş öznitelikleri alır veya ayarlar. (Devralındığı yer: XmlSchemaAnnotated) |
Yöntemler
| Name | Description |
|---|---|
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |