XmlSchemaAttributeGroup 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 attributeGroup elemento del esquema XML tal y como especifica World Wide Web Consortium (W3C). AttributesGroups proporciona un mecanismo para agrupar un conjunto de declaraciones de atributo para que se puedan incorporar como un grupo en definiciones de tipos complejos.
public ref class XmlSchemaAttributeGroup : System::Xml::Schema::XmlSchemaAnnotated
public class XmlSchemaAttributeGroup : System.Xml.Schema.XmlSchemaAnnotated
type XmlSchemaAttributeGroup = class
inherit XmlSchemaAnnotated
Public Class XmlSchemaAttributeGroup
Inherits XmlSchemaAnnotated
- Herencia
Ejemplos
En el ejemplo siguiente se crea el attributeGroup elemento .
using System;
using System.Xml;
using System.Xml.Schema;
class XMLSchemaExamples
{
public static void Main()
{
XmlSchema schema = new XmlSchema();
// <xs:attributeGroup name="myAttributeGroup">
XmlSchemaAttributeGroup myAttributeGroup = new XmlSchemaAttributeGroup();
schema.Items.Add(myAttributeGroup);
myAttributeGroup.Name = "myAttributeGroup";
// <xs:attribute name="someattribute1" type="xs:integer"/>
XmlSchemaAttribute someattribute1 = new XmlSchemaAttribute();
myAttributeGroup.Attributes.Add(someattribute1);
someattribute1.Name = "someattribute1";
someattribute1.SchemaTypeName = new XmlQualifiedName("integer", "http://www.w3.org/2001/XMLSchema");
// <xs:attribute name="someattribute2" type="xs:string"/>
XmlSchemaAttribute someattribute2 = new XmlSchemaAttribute();
myAttributeGroup.Attributes.Add(someattribute2);
someattribute2.Name = "someattribute2";
someattribute2.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
// <xs:complexType name="myElementType">
XmlSchemaComplexType myElementType = new XmlSchemaComplexType();
schema.Items.Add(myElementType);
myElementType.Name = "myElementType";
// <xs:attributeGroup ref="myAttributeGroup"/>
XmlSchemaAttributeGroupRef myAttributeGroupRef = new XmlSchemaAttributeGroupRef();
myElementType.Attributes.Add(myAttributeGroupRef);
myAttributeGroupRef.RefName = new XmlQualifiedName("myAttributeGroup");
// <xs:attributeGroup name="myAttributeGroupA">
XmlSchemaAttributeGroup myAttributeGroupA = new XmlSchemaAttributeGroup();
schema.Items.Add(myAttributeGroupA);
myAttributeGroupA.Name = "myAttributeGroupA";
// <xs:attribute name="someattribute10" type="xs:integer"/>
XmlSchemaAttribute someattribute10 = new XmlSchemaAttribute();
myAttributeGroupA.Attributes.Add(someattribute10);
someattribute10.Name = "someattribute10";
someattribute10.SchemaTypeName = new XmlQualifiedName("integer", "http://www.w3.org/2001/XMLSchema");
// <xs:attribute name="someattribute11" type="xs:string"/>
XmlSchemaAttribute someattribute11 = new XmlSchemaAttribute();
myAttributeGroupA.Attributes.Add(someattribute11);
someattribute11.Name = "someattribute11";
someattribute11.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
// <xs:attributeGroup name="myAttributeGroupB">
XmlSchemaAttributeGroup myAttributeGroupB = new XmlSchemaAttributeGroup();
schema.Items.Add(myAttributeGroupB);
myAttributeGroupB.Name = "myAttributeGroupB";
// <xs:attribute name="someattribute20" type="xs:date"/>
XmlSchemaAttribute someattribute20 = new XmlSchemaAttribute();
myAttributeGroupB.Attributes.Add(someattribute20);
someattribute20.Name = "someattribute20";
someattribute20.SchemaTypeName = new XmlQualifiedName("date", "http://www.w3.org/2001/XMLSchema");
// <xs:attributeGroup ref="myAttributeGroupA"/>
XmlSchemaAttributeGroupRef myAttributeGroupRefA = new XmlSchemaAttributeGroupRef();
myAttributeGroupB.Attributes.Add(myAttributeGroupRefA);
myAttributeGroupRefA.RefName = new XmlQualifiedName("myAttributeGroupA");
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);
}
}
Option Strict On
Option Explicit On
Imports System.Xml
Imports System.Xml.Schema
Class XMLSchemaExamples
Public Shared Sub Main()
Dim schema As New XmlSchema()
' <xs:attributeGroup name="myAttributeGroup">
Dim myAttributeGroup As New XmlSchemaAttributeGroup()
schema.Items.Add(myAttributeGroup)
myAttributeGroup.Name = "myAttributeGroup"
' <xs:attribute name="someattribute1" type="xs:integer"/>
Dim someattribute1 As New XmlSchemaAttribute()
myAttributeGroup.Attributes.Add(someattribute1)
someattribute1.Name = "someattribute1"
someattribute1.SchemaTypeName = New XmlQualifiedName("integer", "http://www.w3.org/2001/XMLSchema")
' <xs:attribute name="someattribute2" type="xs:string"/>
Dim someattribute2 As New XmlSchemaAttribute()
myAttributeGroup.Attributes.Add(someattribute2)
someattribute2.Name = "someattribute2"
someattribute2.SchemaTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
' <xs:complexType name="myElementType">
Dim myElementType As New XmlSchemaComplexType()
schema.Items.Add(myElementType)
myElementType.Name = "myElementType"
' <xs:attributeGroup ref="myAttributeGroup"/>
Dim myAttributeGroupRef As New XmlSchemaAttributeGroupRef()
myElementType.Attributes.Add(myAttributeGroupRef)
myAttributeGroupRef.RefName = New XmlQualifiedName("myAttributeGroup")
' <xs:attributeGroup name="myAttributeGroupA">
Dim myAttributeGroupA As New XmlSchemaAttributeGroup()
schema.Items.Add(myAttributeGroupA)
myAttributeGroupA.Name = "myAttributeGroupA"
' <xs:attribute name="someattribute10" type="xs:integer"/>
Dim someattribute10 As New XmlSchemaAttribute()
myAttributeGroupA.Attributes.Add(someattribute10)
someattribute10.Name = "someattribute10"
someattribute10.SchemaTypeName = New XmlQualifiedName("integer", "http://www.w3.org/2001/XMLSchema")
' <xs:attribute name="someattribute11" type="xs:string"/>
Dim someattribute11 As New XmlSchemaAttribute()
myAttributeGroupA.Attributes.Add(someattribute11)
someattribute11.Name = "someattribute11"
someattribute11.SchemaTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
' <xs:attributeGroup name="myAttributeGroupB">
Dim myAttributeGroupB As New XmlSchemaAttributeGroup()
schema.Items.Add(myAttributeGroupB)
myAttributeGroupB.Name = "myAttributeGroupB"
' <xs:attribute name="someattribute20" type="xs:date"/>
Dim someattribute20 As New XmlSchemaAttribute()
myAttributeGroupB.Attributes.Add(someattribute20)
someattribute20.Name = "someattribute20"
someattribute20.SchemaTypeName = New XmlQualifiedName("date", "http://www.w3.org/2001/XMLSchema")
' <xs:attributeGroup ref="myAttributeGroupA"/>
Dim myAttributeGroupRefA As New XmlSchemaAttributeGroupRef()
myAttributeGroupB.Attributes.Add(myAttributeGroupRefA)
myAttributeGroupRefA.RefName = New XmlQualifiedName("myAttributeGroupA")
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 genera para el ejemplo de código anterior.
<?xml version="1.0" encoding="IBM437"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:attributeGroup name="myAttributeGroup">
<xs:attribute name="someattribute1" type="xs:integer"/>
<xs:attribute name="someattribute2" type="xs:string"/>
</xs:attributeGroup>
<xs:complexType name="myElementType">
<xs:attributeGroup ref="myAttributeGroup"/>
</xs:complexType>
<xs:attributeGroup name="myAttributeGroupA">
<xs:attribute name="someattribute10" type="xs:integer"/>
<xs:attribute name="someattribute11" type="xs:string"/>
</xs:attributeGroup>
<xs:attributeGroup name="myAttributeGroupB">
<xs:attribute name="someattribute20" type="xs:date"/>
<xs:attributeGroup ref="myAttributeGroupA"/>
</xs:attributeGroup>
</xs:schema>
Comentarios
Un grupo de atributos solo se puede definir como elemento secundario del schema elemento. En este caso, el name atributo debe estar presente y contener los attributeelementos , attributeGroupo anyAttribute que componen el grupo de atributos. Cuando un complexType elemento o attributeGroup un elemento incluye un grupo de atributos, el ref atributo debe estar presente y el name atributo no se permite.
Constructores
| Nombre | Description |
|---|---|
| XmlSchemaAttributeGroup() |
Inicializa una nueva instancia de la clase XmlSchemaAttributeGroup. |
Propiedades
| Nombre | Description |
|---|---|
| Annotation |
Obtiene o establece la |
| AnyAttribute |
Obtiene o establece el XmlSchemaAnyAttribute componente del grupo de atributos. |
| Attributes |
Obtiene la colección de atributos para el grupo de atributos. Contiene |
| Id |
Obtiene o establece el identificador de cadena. (Heredado de XmlSchemaAnnotated) |
| LineNumber |
Obtiene o establece el número de línea del archivo al que hace referencia el |
| LinePosition |
Obtiene o establece la posición de línea del archivo al que hace referencia el |
| Name |
Obtiene o establece el nombre del grupo de atributos. |
| 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) |
| QualifiedName |
Obtiene el nombre completo del grupo de atributos. |
| RedefinedAttributeGroup |
Obtiene la propiedad de grupo de atributos redefinida del esquema XML. |
| SourceUri |
Obtiene o establece la ubicación de origen del archivo que cargó el esquema. (Heredado de XmlSchemaObject) |
| 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 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) |