XmlSchemaComplexType XmlSchemaComplexType XmlSchemaComplexType XmlSchemaComplexType Class

Definición

Representa el elemento complexType del esquema XML como especificado por el Consorcio WWC (W3C).Represents the complexType element from XML Schema as specified by the World Wide Web Consortium (W3C). Esta clase define un tipo complejo que determina el conjunto de atributos y el contenido de un elemento.This class defines a complex type that determines the set of attributes and content of an element.

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 complexType crea un elemento.The following example creates a complexType element.

#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

El siguiente archivo XML se usa para el ejemplo de código anterior.The following XML file is used for the preceding code example.

<?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 puede declararse con un atributo de tipo que hace complexType referencia a un elemento que define la estructura, el contenido y los atributos de dicho elemento.An element can be declared with a type attribute that refers to a complexType element that defines the structure, content, and attributes of that element.

Constructores

XmlSchemaComplexType() XmlSchemaComplexType() XmlSchemaComplexType() XmlSchemaComplexType()

Inicializa una nueva instancia de la clase XmlSchemaComplexType.Initializes a new instance of the XmlSchemaComplexType class.

Propiedades

Annotation Annotation Annotation Annotation

Obtiene o establece la propiedad annotation.Gets or sets the annotation property.

(Inherited from XmlSchemaAnnotated)
AnyAttribute AnyAttribute AnyAttribute AnyAttribute

Obtiene o establece el valor del componente XmlSchemaAnyAttribute del tipo complejo.Gets or sets the value for the XmlSchemaAnyAttribute component of the complex type.

Attributes Attributes Attributes Attributes

Obtiene la colección de atributos del tipo complejo.Gets the collection of attributes for the complex type.

AttributeUses AttributeUses AttributeUses AttributeUses

Obtiene la colección de todos los atributos compilados de este tipo complejo y sus tipos base.Gets the collection of all the complied attributes of this complex type and its base types.

AttributeWildcard AttributeWildcard AttributeWildcard AttributeWildcard

Obtiene el valor posterior a la compilación para anyAttribute para este tipo complejo y sus tipos base.Gets the post-compilation value for anyAttribute for this complex type and its base type(s).

BaseSchemaType BaseSchemaType BaseSchemaType BaseSchemaType

Obtiene el tipo de objeto posterior a la compilación o el tipo de datos del lenguaje de definición de esquemas XML (XSD) integrado, el elemento simpleType o el elemento complexType.Gets the post-compilation object type or the built-in XML Schema Definition Language (XSD) data type, simpleType element, or complexType element. Se trata de una propiedad del conjunto de información posterior a la compilación del esquema.This is a post-schema-compilation infoset property.

(Inherited from XmlSchemaType)
BaseXmlSchemaType BaseXmlSchemaType BaseXmlSchemaType BaseXmlSchemaType

Obtiene el valor posterior a la compilación para el tipo base de este tipo de esquema.Gets the post-compilation value for the base type of this schema type.

(Inherited from XmlSchemaType)
Block Block Block Block

Obtiene o establece el atributo block.Gets or sets the block attribute.

BlockResolved BlockResolved BlockResolved BlockResolved

Obtiene el valor una vez que el tipo se compila en el conjunto de información posterior a la validación del esquema (infoset).Gets the value after the type has been compiled to the post-schema-validation information set (infoset). Este valor indica la forma en que se aplica el tipo cuando xsi:type se utiliza en el documento de instancia.This value indicates how the type is enforced when xsi:type is used in the instance document.

ContentModel ContentModel ContentModel ContentModel

Obtiene o establece el XmlSchemaContentModel posterior a la compilación de este tipo complejo.Gets or sets the post-compilation XmlSchemaContentModel of this complex type.

ContentType ContentType ContentType ContentType

Obtiene el modelo de contenido del tipo complejo que contiene el valor posterior a la compilación.Gets the content model of the complex type which holds the post-compilation value.

ContentTypeParticle ContentTypeParticle ContentTypeParticle ContentTypeParticle

Obtiene la partícula que contiene el valor posterior a la compilación de la partícula ContentType.Gets the particle that holds the post-compilation value of the ContentType particle.

Datatype Datatype Datatype Datatype

Obtiene el valor posterior a la compilación para el tipo de datos del tipo complejo.Gets the post-compilation value for the data type of the complex type.

(Inherited from XmlSchemaType)
DerivedBy DerivedBy DerivedBy DerivedBy

Obtiene la información posterior a la compilación sobre cómo se ha derivado este elemento de su tipo base.Gets the post-compilation information on how this element was derived from its base type.

(Inherited from XmlSchemaType)
Final Final Final Final

Obtiene o establece el atributo final de la derivación de tipo que indica si se permiten más derivaciones.Gets or sets the final attribute of the type derivation that indicates if further derivations are allowed.

(Inherited from XmlSchemaType)
FinalResolved FinalResolved FinalResolved FinalResolved

Obtiene el valor posterior a la compilación de la propiedad Final.Gets the post-compilation value of the Final property.

(Inherited from XmlSchemaType)
Id Id Id Id

Obtiene o establece el identificador de cadena.Gets or sets the string id.

(Inherited from XmlSchemaAnnotated)
IsAbstract IsAbstract IsAbstract IsAbstract

Obtiene o establece la información que determina si el elemento complexType puede utilizarse en el documento de instancia.Gets or sets the information that determines if the complexType element can be used in the instance document.

IsMixed IsMixed IsMixed IsMixed

Obtiene o establece la información que determina si el tipo complejo tiene un modelo de contenido mixto (marcado dentro del contenido).Gets or sets information that determines if the complex type has a mixed content model (markup within the content).

LineNumber LineNumber LineNumber LineNumber

Obtiene o establece el número de línea del archivo al que hace referencia el elemento schema.Gets or sets the line number in the file to which the schema element refers.

(Inherited from XmlSchemaObject)
LinePosition LinePosition LinePosition LinePosition

Obtiene o establece la posición de la línea en el archivo al que hace referencia el elemento schema.Gets or sets the line position in the file to which the schema element refers.

(Inherited from XmlSchemaObject)
Name Name Name Name

Obtiene o establece el nombre del tipo.Gets or sets the name of the type.

(Inherited from XmlSchemaType)
Namespaces Namespaces Namespaces Namespaces

Obtiene o establece el objeto XmlSerializerNamespaces que se va a utilizar con este objeto de esquema.Gets or sets the XmlSerializerNamespaces to use with this schema object.

(Inherited from XmlSchemaObject)
Parent Parent Parent Parent

Obtiene o establece el elemento primario de este XmlSchemaObject.Gets or sets the parent of this XmlSchemaObject.

(Inherited from XmlSchemaObject)
Particle Particle Particle Particle

Obtiene o establece el tipo de compositor como una de estas clases: XmlSchemaGroupRef, XmlSchemaChoice, XmlSchemaAll o XmlSchemaSequence.Gets or sets the compositor type as one of the XmlSchemaGroupRef, XmlSchemaChoice, XmlSchemaAll, or XmlSchemaSequence classes.

QualifiedName QualifiedName QualifiedName QualifiedName

Obtiene el nombre calificado del tipo creado a partir del atributo Name de este tipo.Gets the qualified name for the type built from the Name attribute of this type. Se trata de una propiedad posterior a la compilación del esquema.This is a post-schema-compilation property.

(Inherited from XmlSchemaType)
SourceUri SourceUri SourceUri SourceUri

Obtiene o establece la ubicación de origen del archivo que cargó el esquema.Gets or sets the source location for the file that loaded the schema.

(Inherited from XmlSchemaObject)
TypeCode TypeCode TypeCode TypeCode

Obtiene el valor XmlTypeCode del tipo.Gets the XmlTypeCode of the type.

(Inherited from XmlSchemaType)
UnhandledAttributes UnhandledAttributes UnhandledAttributes UnhandledAttributes

Obtiene o establece los atributos calificados que no pertenecen al espacio de nombres de destino del esquema actual.Gets or sets the qualified attributes that do not belong to the current schema's target namespace.

(Inherited from XmlSchemaAnnotated)

Métodos

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Inherited from Object)

Se aplica a