XmlSchemaElement Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
element Představuje prvek ze schématu XML určený konsorciem W3C (World Wide Web Consortium). Tato třída je základní třídou pro všechny typy částic a slouží k popisu elementu v dokumentu 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
- Dědičnost
Příklady
Následující příklad vytvoří element 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
Následující soubor XML se používá pro předchozí příklad kódu.
<?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>
Poznámky
Important
- Nepoužívejte schémata z neznámých nebo nedůvěryhodných zdrojů nebo umístění. Tím dojde k ohrožení zabezpečení vašeho kódu.
- Schémata XML (včetně vložených schémat) jsou ze své podstaty zranitelná vůči útokům na odepření služeb; nepřijímají je v nedůvěryhodných scénářích.
- Chybové zprávy a výjimky týkající se ověřování schématu mohou odhalit citlivé informace o modelu obsahu nebo cestách URI k souboru se schématem. Dávejte pozor, abyste tyto informace nezpřístupnil nedůvěryhodným volajícím.
Konstruktory
| Name | Description |
|---|---|
| XmlSchemaElement() |
Inicializuje novou instanci XmlSchemaElement třídy. |
Vlastnosti
| Name | Description |
|---|---|
| Annotation |
Získá nebo nastaví |
| Block |
Získá nebo nastaví |
| BlockResolved |
Získá hodnotu |
| Constraints |
Získá kolekci omezení prvku. |
| DefaultValue |
Získá nebo nastaví výchozí hodnotu prvku, pokud jeho obsah je jednoduchý typ nebo obsah prvku je |
| ElementSchemaType |
XmlSchemaType Získá objekt představující typ elementu na SchemaType základě nebo SchemaTypeName hodnoty elementu. |
| ElementType |
Zastaralé.
Zastaralé.
Zastaralé.
Získá objekt CLR (Common Language Runtime) na XmlSchemaElement základě nebo XmlSchemaElement elementu, který obsahuje hodnotu |
| Final |
Získá nebo nastaví |
| FinalResolved |
Získá hodnotu |
| FixedValue |
Získá nebo nastaví pevnou hodnotu. |
| Form |
Získá nebo nastaví formulář pro prvek. |
| Id |
Získá nebo nastaví ID řetězce. (Zděděno od XmlSchemaAnnotated) |
| IsAbstract |
Získá nebo nastaví informace, které indikují, zda lze prvek použít v dokumentu instance. |
| IsNillable |
Získá nebo nastaví informace, které indikují, zda |
| LineNumber |
Získá nebo nastaví číslo řádku v souboru, na který |
| LinePosition |
Získá nebo nastaví pozici řádku v souboru, na který |
| MaxOccurs |
Získá nebo nastaví maximální počet výskytu částice. (Zděděno od XmlSchemaParticle) |
| MaxOccursString |
Získá nebo nastaví číslo jako řetězcovou hodnotu. Maximální počet výskytů částice. (Zděděno od XmlSchemaParticle) |
| MinOccurs |
Získá nebo nastaví minimální počet výskytu částice. (Zděděno od XmlSchemaParticle) |
| MinOccursString |
Získá nebo nastaví číslo jako řetězcovou hodnotu. Minimální počet výskytů částice. (Zděděno od XmlSchemaParticle) |
| Name |
Získá nebo nastaví název elementu. |
| Namespaces |
Získá nebo nastaví XmlSerializerNamespaces použití s tímto objektem schématu. (Zděděno od XmlSchemaObject) |
| Parent |
Získá nebo nastaví nadřazený objekt tohoto XmlSchemaObject. (Zděděno od XmlSchemaObject) |
| QualifiedName |
Získá skutečný kvalifikovaný název pro daný prvek. |
| RefName |
Získá nebo nastaví název odkazu prvku deklarovaného v tomto schématu (nebo jiné schéma označené zadaným oborem názvů). |
| SchemaType |
Získá nebo nastaví typ elementu. Může se jednat o komplexní typ nebo jednoduchý typ. |
| SchemaTypeName |
Získá nebo nastaví název předdefinovaného datového typu definovaného v tomto schématu nebo jiné schéma označené zadaným oborem názvů. |
| SourceUri |
Získá nebo nastaví zdrojové umístění pro soubor, který načetl schéma. (Zděděno od XmlSchemaObject) |
| SubstitutionGroup |
Získá nebo nastaví název prvku, který je nahrazen tímto elementem. |
| UnhandledAttributes |
Získá nebo nastaví kvalifikované atributy, které nepatří do cílového oboru názvů aktuálního schématu. (Zděděno od XmlSchemaAnnotated) |
Metody
| Name | Description |
|---|---|
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |