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, jak je určeno 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 <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::Xml;
using namespace System::Xml::Schema;
class XmlSchemaExamples
{
public:
static void Main()
{
XmlSchema^ schema = gcnew XmlSchema();
// <xs:element name="stringElementWithAnyAttribute">
XmlSchemaElement^ element = gcnew XmlSchemaElement();
schema->Items->Add(element);
element->Name = "stringElementWithAnyAttribute";
// <xs:complexType>
XmlSchemaComplexType^ complexType = gcnew XmlSchemaComplexType();
element->SchemaType = complexType;
// <xs:simpleContent>
XmlSchemaSimpleContent^ simpleContent = gcnew XmlSchemaSimpleContent();
complexType->ContentModel = simpleContent;
// <extension base= "xs:string">
XmlSchemaSimpleContentExtension^ extension = gcnew XmlSchemaSimpleContentExtension();
simpleContent->Content = extension;
extension->BaseTypeName = gcnew XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
// <xs:anyAttribute namespace="##targetNamespace"/>
XmlSchemaAnyAttribute^ anyAttribute = gcnew XmlSchemaAnyAttribute();
extension->AnyAttribute = anyAttribute;
anyAttribute->Namespace = "##targetNamespace";
XmlSchemaSet^ schemaSet = gcnew XmlSchemaSet();
schemaSet->ValidationEventHandler += gcnew ValidationEventHandler(ValidationCallbackOne);
schemaSet->Add(schema);
schemaSet->Compile();
XmlSchema^ compiledSchema;
for each (XmlSchema^ schema1 in schemaSet->Schemas())
{
compiledSchema = schema1;
}
XmlNamespaceManager^ nsmgr = gcnew XmlNamespaceManager(gcnew NameTable());
nsmgr->AddNamespace("xs", "http://www.w3.org/2001/XMLSchema");
compiledSchema->Write(Console::Out, nsmgr);
}
static void ValidationCallbackOne(Object^ sender, ValidationEventArgs^ args)
{
Console::WriteLine(args->Message);
}
};
int main()
{
XmlSchemaExamples::Main();
return 0;
};
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
XmlSchemaComplexType() |
Inicializuje novou instanci XmlSchemaComplexType třídy. |
Vlastnosti
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ích typů. |
AttributeWildcard |
Získá hodnotu po kompilaci pro |
BaseSchemaType |
Zastaralé.
Zastaralé.
Zastaralé.
Získá typ objektu post-kompilace nebo integrovaný datový typ XML Schema Definition Language (XSD), simpleType element nebo complexType element. Jedná se o 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 označuje, jak se typ vynucuje při |
ContentModel |
Získá nebo nastaví post-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á pokompilační 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 (revize v rámci obsahu). |
LineNumber |
Získá nebo nastaví číslo řádku v souboru, na který |
LinePosition |
Získá nebo nastaví pozici čáry 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í kompositor typ jako jeden z XmlSchemaGroupRef, XmlSchemaChoice, nebo XmlSchemaAllXmlSchemaSequence 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
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
GetType() |
Type Získá aktuální instanci. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří použádnou kopii aktuálního souboru Object. (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |