XmlSchemaComplexType Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa el elemento complexType
del esquema XML como especificado por el Consorcio WWC (W3C). Esta clase define un tipo complejo que determina el conjunto de atributos y el 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 <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.
<?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
XmlSchemaComplexType() |
Inicializa una nueva instancia de la clase XmlSchemaComplexType. |
Propiedades
Annotation |
Obtiene o establece la propiedad |
AnyAttribute |
Obtiene o establece el valor del componente XmlSchemaAnyAttribute del tipo complejo. |
Attributes |
Obtiene la colección de atributos del tipo complejo. |
AttributeUses |
Obtiene la colección de todos los atributos compilados de este tipo complejo y sus tipos base. |
AttributeWildcard |
Obtiene el valor posterior a la compilación para |
BaseSchemaType |
Obsoleto.
Obsoleto.
Obsoleto.
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. Se trata de una propiedad del conjunto de información posterior a la compilación del esquema. (Heredado de XmlSchemaType) |
BaseXmlSchemaType |
Obtiene el valor posterior a la compilación para el tipo base de este tipo de esquema. (Heredado de XmlSchemaType) |
Block |
Obtiene o establece el atributo |
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). Este valor indica la forma en que se aplica el tipo cuando |
ContentModel |
Obtiene o establece el XmlSchemaContentModel posterior a la compilación 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 partícula ContentType. |
Datatype |
Obtiene el valor posterior a la compilación para el tipo de datos del tipo complejo. (Heredado de XmlSchemaType) |
DerivedBy |
Obtiene la información posterior a la compilación sobre cómo se ha derivado 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 más derivaciones. (Heredado de XmlSchemaType) |
FinalResolved |
Obtiene el valor posterior a la compilación de la propiedad Final. (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 elemento |
IsMixed |
Obtiene o establece la 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 elemento |
LinePosition |
Obtiene o establece la posición de la línea en el archivo al que hace referencia el elemento |
Name |
Obtiene o establece el nombre del tipo. (Heredado de XmlSchemaType) |
Namespaces |
Obtiene o establece el objeto XmlSerializerNamespaces que se va a utilizar con este objeto de esquema. (Heredado de XmlSchemaObject) |
Parent |
Obtiene o establece el elemento primario de este XmlSchemaObject. (Heredado de XmlSchemaObject) |
Particle |
Obtiene o establece el tipo de compositor como una de estas clases: XmlSchemaGroupRef, XmlSchemaChoice, XmlSchemaAll o XmlSchemaSequence. |
QualifiedName |
Obtiene el nombre calificado del tipo creado a partir del atributo |
SourceUri |
Obtiene o establece la ubicación de origen del archivo que cargó el esquema. (Heredado de XmlSchemaObject) |
TypeCode |
Obtiene el valor XmlTypeCode del 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
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve 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 Object actual. (Heredado de Object) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |