XmlSchemaAttribute Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta l'elemento attribute di XML Schema come specificato dal World Wide Web Consortium (W3C). Gli attributi forniscono informazioni aggiuntive per altri elementi del documento. Il tag dell'attributo è annidato tra i tag dell'elemento di un documento per lo schema. Il documento XML visualizza gli attributi come elementi denominati nel tag di apertura di un elemento.
public ref class XmlSchemaAttribute : System::Xml::Schema::XmlSchemaAnnotated
public class XmlSchemaAttribute : System.Xml.Schema.XmlSchemaAnnotated
type XmlSchemaAttribute = class
inherit XmlSchemaAnnotated
Public Class XmlSchemaAttribute
Inherits XmlSchemaAnnotated
- Ereditarietà
Esempio
Nell'esempio seguente viene creato l'elemento attribute .
using System;
using System.Xml;
using System.Xml.Schema;
class XMLSchemaExamples
{
public static void Main()
{
XmlSchema schema = new XmlSchema();
// <xs:attribute name="mybaseattribute">
XmlSchemaAttribute attributeBase = new XmlSchemaAttribute();
schema.Items.Add(attributeBase);
attributeBase.Name = "mybaseattribute";
// <xs:simpleType>
XmlSchemaSimpleType simpleType = new XmlSchemaSimpleType();
attributeBase.SchemaType = simpleType;
// <xs:restriction base="integer">
XmlSchemaSimpleTypeRestriction restriction = new XmlSchemaSimpleTypeRestriction();
simpleType.Content = restriction;
restriction.BaseTypeName = new XmlQualifiedName("integer", "http://www.w3.org/2001/XMLSchema");
// <xs:maxInclusive value="1000"/>
XmlSchemaMaxInclusiveFacet maxInclusive = new XmlSchemaMaxInclusiveFacet();
restriction.Facets.Add(maxInclusive);
maxInclusive.Value = "1000";
// <xs:complexType name="myComplexType">
XmlSchemaComplexType complexType = new XmlSchemaComplexType();
schema.Items.Add(complexType);
complexType.Name = "myComplexType";
// <xs:attribute ref="mybaseattribute"/>
XmlSchemaAttribute attributeBaseRef = new XmlSchemaAttribute();
complexType.Attributes.Add(attributeBaseRef);
attributeBaseRef.RefName = new XmlQualifiedName("mybaseattribute");
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 Explicit On
Option Strict On
Imports System.Xml
Imports System.Xml.Schema
Class XMLSchemaExamples
Public Shared Sub Main()
Dim schema As New XmlSchema()
' <xs:attribute name="mybaseattribute">
Dim attributeBase As New XmlSchemaAttribute()
schema.Items.Add(attributeBase)
attributeBase.Name = "mybaseattribute"
' <xs:simpleType>
Dim simpleType As New XmlSchemaSimpleType()
attributeBase.SchemaType = simpleType
' <xs:restriction base="integer">
Dim restriction As New XmlSchemaSimpleTypeRestriction()
simpleType.Content = restriction
restriction.BaseTypeName = New XmlQualifiedName("integer", "http://www.w3.org/2001/XMLSchema")
' <xs:maxInclusive value="1000"/>
Dim maxInclusive As New XmlSchemaMaxInclusiveFacet()
restriction.Facets.Add(maxInclusive)
maxInclusive.Value = "1000"
' <xs:complexType name="myComplexType">
Dim complexType As New XmlSchemaComplexType()
schema.Items.Add(complexType)
complexType.Name = "myComplexType"
' <xs:attribute ref="mybaseattribute"/>
Dim attributeBaseRef As New XmlSchemaAttribute()
complexType.Attributes.Add(attributeBaseRef)
attributeBaseRef.RefName = New XmlQualifiedName("mybaseattribute")
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
Il file XML seguente viene generato per l'esempio di codice precedente.
<?xml version="1.0" encoding="IBM437"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:attribute name="mybaseattribute">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:maxInclusive value="1000" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:complexType name="myComplexType">
<xs:attribute ref="mybaseattribute" />
</xs:complexType>
</xs:schema>
Commenti
Le dichiarazioni di attributi possono essere presenti come elementi figlio dell'elemento schema (con ambito globale) o all'interno di definizioni di tipi complessi. Per i tipi complessi, le dichiarazioni di attributi possono essere presenti come dichiarazioni locali o riferimenti agli attributi con ambito globale. Entrambe le dichiarazioni di attributi globali e locali hanno l'attributo di tipo facoltativo che fa riferimento a un tipo semplice esistente. Se l'attributo di tipo facoltativo non viene usato, la dichiarazione dell'attributo (globale o locale) deve definire un tipo semplice locale.
Costruttori
| Nome | Descrizione |
|---|---|
| XmlSchemaAttribute() |
Inizializza una nuova istanza della classe XmlSchemaAttribute. |
Proprietà
| Nome | Descrizione |
|---|---|
| Annotation |
Ottiene o imposta la |
| AttributeSchemaType |
Ottiene un XmlSchemaSimpleType oggetto che rappresenta il tipo dell'attributo in base all'oggetto SchemaType o SchemaTypeName dell'attributo . |
| AttributeType |
Obsoleti.
Obsoleti.
Obsoleti.
Ottiene l'oggetto Common Language Runtime (CLR) basato su SchemaType o SchemaTypeName sull'attributo che contiene il valore di post-compilazione della |
| DefaultValue |
Ottiene o imposta il valore predefinito per l'attributo. |
| FixedValue |
Ottiene o imposta il valore fisso per l'attributo. |
| Form |
Ottiene o imposta il form per l'attributo. |
| Id |
Ottiene o imposta l'ID stringa. (Ereditato da XmlSchemaAnnotated) |
| LineNumber |
Ottiene o imposta il numero di riga nel file a cui fa riferimento l'elemento |
| LinePosition |
Ottiene o imposta la posizione della riga nel file a cui fa riferimento l'elemento |
| Name |
Ottiene o imposta il nome dell'attributo. |
| Namespaces |
Ottiene o imposta l'oggetto XmlSerializerNamespaces da utilizzare con questo oggetto schema. (Ereditato da XmlSchemaObject) |
| Parent |
Ottiene o imposta l'elemento padre dell'oggetto XmlSchemaObject. (Ereditato da XmlSchemaObject) |
| QualifiedName |
Ottiene il nome completo per l'attributo. |
| RefName |
Ottiene o imposta il nome di un attributo dichiarato in questo schema (o un altro schema indicato dallo spazio dei nomi specificato). |
| SchemaType |
Ottiene o imposta il tipo di attributo su un tipo semplice. |
| SchemaTypeName |
Ottiene o imposta il nome del tipo semplice definito in questo schema o un altro schema indicato dallo spazio dei nomi specificato. |
| SourceUri |
Ottiene o imposta il percorso di origine per il file che ha caricato lo schema. (Ereditato da XmlSchemaObject) |
| UnhandledAttributes |
Ottiene o imposta gli attributi qualificati che non appartengono allo spazio dei nomi di destinazione dello schema corrente. (Ereditato da XmlSchemaAnnotated) |
| Use |
Ottiene o imposta informazioni sulla modalità di utilizzo dell'attributo. |
Metodi
| Nome | Descrizione |
|---|---|
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |