XmlSchemaComplexType Clase

Definición

Representa el complexType elemento del esquema XML tal y como especifica World Wide Web Consortium (W3C). Esta clase define un tipo complejo que determina el conjunto de atributos y contenido de un elemento.

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
Herencia

Ejemplos

En el ejemplo siguiente se crea un complexType elemento .

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

El siguiente archivo XML se usa para el ejemplo de código anterior.

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

Comentarios

Un elemento se puede declarar con un atributo de tipo que hace referencia a un complexType elemento que define la estructura, el contenido y los atributos de ese elemento.

Constructores

Nombre Description
XmlSchemaComplexType()

Inicializa una nueva instancia de la clase XmlSchemaComplexType.

Propiedades

Nombre Description
Annotation

Obtiene o establece la annotation propiedad .

(Heredado de XmlSchemaAnnotated)
AnyAttribute

Obtiene o establece el valor del XmlSchemaAnyAttribute componente del tipo complejo.

Attributes

Obtiene la colección de atributos para el tipo complejo.

AttributeUses

Obtiene la colección de todos los atributos cumplidos de este tipo complejo y sus tipos base.

AttributeWildcard

Obtiene el valor posterior a la compilación para anyAttribute para este tipo complejo y sus tipos base.

BaseSchemaType
Obsoletos.
Obsoletos.

Obtiene el tipo de objeto posterior a la compilación o el tipo de datos integrado Lenguaje de definición de esquemas XML (XSD), elemento simpleType o elemento complexType. Se trata de una propiedad de conjunto de información posterior a la compilación del esquema.

(Heredado de XmlSchemaType)
BaseXmlSchemaType

Obtiene el valor posterior a la compilación del tipo base de este tipo de esquema.

(Heredado de XmlSchemaType)
Block

Obtiene o establece el block atributo .

BlockResolved

Obtiene el valor después de compilar el tipo en el conjunto de información posterior a la validación del esquema (infoset). Este valor indica cómo se aplica el tipo cuando xsi:type se usa en el documento de instancia.

ContentModel

Obtiene o establece la compilación XmlSchemaContentModel posterior de este tipo complejo.

ContentType

Obtiene el modelo de contenido del tipo complejo que contiene el valor posterior a la compilación.

ContentTypeParticle

Obtiene la partícula que contiene el valor posterior a la compilación de la ContentType partícula.

Datatype

Obtiene el valor posterior a la compilación del tipo de datos del tipo complejo.

(Heredado de XmlSchemaType)
DerivedBy

Obtiene la información posterior a la compilación sobre cómo se deriva este elemento de su tipo base.

(Heredado de XmlSchemaType)
Final

Obtiene o establece el atributo final de la derivación de tipo que indica si se permiten derivaciones adicionales.

(Heredado de XmlSchemaType)
FinalResolved

Obtiene el valor posterior a la compilación de la Final propiedad .

(Heredado de XmlSchemaType)
Id

Obtiene o establece el identificador de cadena.

(Heredado de XmlSchemaAnnotated)
IsAbstract

Obtiene o establece la información que determina si el complexType elemento se puede usar en el documento de instancia.

IsMixed

Obtiene o establece información que determina si el tipo complejo tiene un modelo de contenido mixto (marcado dentro del contenido).

LineNumber

Obtiene o establece el número de línea del archivo al que hace referencia el schema elemento.

(Heredado de XmlSchemaObject)
LinePosition

Obtiene o establece la posición de línea del archivo al que hace referencia el schema elemento.

(Heredado de XmlSchemaObject)
Name

Obtiene o establece el nombre del tipo.

(Heredado de XmlSchemaType)
Namespaces

Obtiene o establece el objeto XmlSerializerNamespaces que se va a usar con este objeto de esquema.

(Heredado de XmlSchemaObject)
Parent

Obtiene o establece el elemento primario de este XmlSchemaObjectobjeto .

(Heredado de XmlSchemaObject)
Particle

Obtiene o establece el tipo de compositor como una de las XmlSchemaGroupRefclases , XmlSchemaChoice, XmlSchemaAllo XmlSchemaSequence .

QualifiedName

Obtiene el nombre completo del tipo compilado a partir del Name atributo de este tipo. Se trata de una propiedad posterior a la compilación de esquemas.

(Heredado de XmlSchemaType)
SourceUri

Obtiene o establece la ubicación de origen del archivo que cargó el esquema.

(Heredado de XmlSchemaObject)
TypeCode

Obtiene del XmlTypeCode tipo .

(Heredado de XmlSchemaType)
UnhandledAttributes

Obtiene o establece los atributos calificados que no pertenecen al espacio de nombres de destino del esquema actual.

(Heredado de XmlSchemaAnnotated)

Métodos

Nombre Description
Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetHashCode()

Actúa como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a