XmlSchemaComplexType 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í.
complexType Představuje prvek ze schématu XML určený konsorciem W3C (World Wide Web Consortium). Tato třída definuje komplexní typ, který určuje sadu atributů a obsah prvku.
public ref class XmlSchemaComplexType : System::Xml::Schema::XmlSchemaType
public class XmlSchemaComplexType : System.Xml.Schema.XmlSchemaType
type XmlSchemaComplexType = class
inherit XmlSchemaType
Public Class XmlSchemaComplexType
Inherits XmlSchemaType
- Dědičnost
Příklady
Následující příklad vytvoří complexType prvek.
using System;
using System.Xml;
using System.Xml.Schema;
class XMLSchemaExamples
{
public static void Main()
{
XmlSchema schema = new XmlSchema();
// <xs:element name="stringElementWithAnyAttribute">
XmlSchemaElement element = new XmlSchemaElement();
schema.Items.Add(element);
element.Name = "stringElementWithAnyAttribute";
// <xs:complexType>
XmlSchemaComplexType complexType = new XmlSchemaComplexType();
element.SchemaType = complexType;
// <xs:simpleContent>
XmlSchemaSimpleContent simpleContent = new XmlSchemaSimpleContent();
complexType.ContentModel = simpleContent;
// <extension base= "xs:string">
XmlSchemaSimpleContentExtension extension = new XmlSchemaSimpleContentExtension();
simpleContent.Content = extension;
extension.BaseTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
// <xs:anyAttribute namespace="##targetNamespace"/>
XmlSchemaAnyAttribute anyAttribute = new XmlSchemaAnyAttribute();
extension.AnyAttribute = anyAttribute;
anyAttribute.Namespace = "##targetNamespace";
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="stringElementWithAnyAttribute">
Dim element As New XmlSchemaElement()
schema.Items.Add(element)
element.Name = "stringElementWithAnyAttribute"
' <xs:complexType>
Dim complexType As New XmlSchemaComplexType()
element.SchemaType = complexType
' <xs:simpleContent>
Dim simpleContent As New XmlSchemaSimpleContent()
complexType.ContentModel = simpleContent
' <extension base="xs:string">
Dim extension As New XmlSchemaSimpleContentExtension()
simpleContent.Content = extension
extension.BaseTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
' <xs:anyAttribute namespace="##targetNamespace"/>
Dim anyAttribute As New XmlSchemaAnyAttribute()
extension.AnyAttribute = anyAttribute
anyAttribute.Namespace = "##targetNamespace"
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="stringElementWithAnyAttribute">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:anyAttribute namespace="##targetNamespace"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:schema>
Poznámky
Prvek lze deklarovat pomocí atributu typu, který odkazuje na complexType prvek, který definuje strukturu, obsah a atributy tohoto prvku.
Konstruktory
| Name | Description |
|---|---|
| XmlSchemaComplexType() |
Inicializuje novou instanci XmlSchemaComplexType třídy. |
Vlastnosti
| Name | Description |
|---|---|
| Annotation |
Získá nebo nastaví |
| AnyAttribute |
Získá nebo nastaví hodnotu pro XmlSchemaAnyAttribute komponentu komplexního typu. |
| Attributes |
Získá kolekci atributů pro komplexní typ. |
| AttributeUses |
Získá kolekci všech vyhovujících atributů tohoto komplexního typu a jeho základní typy. |
| AttributeWildcard |
Získá hodnotu po kompilaci pro |
| BaseSchemaType |
Zastaralé.
Zastaralé.
Zastaralé.
Získá post-kompilace typ objektu nebo integrovaný XML Schema Definition Language (XSD) datový typ, simpleType element nebo complexType element. Toto je vlastnost infoset po kompilaci schématu. (Zděděno od XmlSchemaType) |
| BaseXmlSchemaType |
Získá hodnotu po kompilaci pro základní typ tohoto typu schématu. (Zděděno od XmlSchemaType) |
| Block |
Získá nebo nastaví |
| BlockResolved |
Získá hodnotu po zkompilování typu do sady informací po ověření schématu (infoset). Tato hodnota určuje, jak se typ vynucuje při |
| ContentModel |
Získá nebo nastaví po kompilaci XmlSchemaContentModel tohoto komplexního typu. |
| ContentType |
Získá model obsahu komplexního typu, který obsahuje hodnotu po kompilaci. |
| ContentTypeParticle |
Získá částice, která uchovává hodnotu ContentType po kompilaci částice. |
| Datatype |
Získá hodnotu po kompilaci pro datový typ komplexního typu. (Zděděno od XmlSchemaType) |
| DerivedBy |
Získá post-kompilace informace o tom, jak byl tento prvek odvozen z jeho základního typu. (Zděděno od XmlSchemaType) |
| Final |
Získá nebo nastaví konečný atribut odvození typu, který označuje, zda jsou další odvození povoleny. (Zděděno od XmlSchemaType) |
| FinalResolved |
Získá hodnotu Final po kompilaci vlastnosti. (Zděděno od XmlSchemaType) |
| Id |
Získá nebo nastaví ID řetězce. (Zděděno od XmlSchemaAnnotated) |
| IsAbstract |
Získá nebo nastaví informace, které určuje, zda |
| IsMixed |
Získá nebo nastaví informace, které určují, zda komplexní typ má smíšený model obsahu (značky v rámci obsahu). |
| LineNumber |
Získá nebo nastaví číslo řádku v souboru, na který |
| LinePosition |
Získá nebo nastaví pozici řádku v souboru, na který |
| Name |
Získá nebo nastaví název typu. (Zděděno od XmlSchemaType) |
| 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) |
| Particle |
Získá nebo nastaví typ kompozitoru jako jeden z XmlSchemaGroupRef, XmlSchemaChoice, XmlSchemaAllnebo XmlSchemaSequence třídy. |
| QualifiedName |
Získá kvalifikovaný název pro typ sestavený z atributu |
| SourceUri |
Získá nebo nastaví zdrojové umístění pro soubor, který načetl schéma. (Zděděno od XmlSchemaObject) |
| TypeCode |
XmlTypeCode Získá typ. (Zděděno od XmlSchemaType) |
| 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) |