Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Classe XmlSchema

 

Data di pubblicazione: ottobre 2016

Una rappresentazione in memoria di uno Schema XML, come specificato nel World Wide Web Consortium (W3C) XML Schema Part 1: Structures e XML Schema Part 2: Datatypes specifiche.

Spazio dei nomi:   System.Xml.Schema
Assembly:  System.Xml (in System.Xml.dll)


public class XmlSchema : XmlSchemaObject

NomeDescrizione
System_CAPS_pubmethodXmlSchema()

Inizializza una nuova istanza della classe XmlSchema.

NomeDescrizione
System_CAPS_pubpropertyAttributeFormDefault

Ottiene o imposta il form per gli attributi dichiarati nello spazio dei nomi di destinazione dello schema.

System_CAPS_pubpropertyAttributeGroups

Ottiene il valore impostato dopo la compilazione dello schema di tutti i gruppi di attributi globali presenti nello schema.

System_CAPS_pubpropertyAttributes

Ottiene il valore impostato dopo la compilazione dello schema di tutti gli attributi presenti nello schema.

System_CAPS_pubpropertyBlockDefault

Ottiene o imposta il blockDefault attributo che imposta il valore predefinito di block attributo sull'elemento e i tipi complessi nel targetNamespace dello schema.

System_CAPS_pubpropertyElementFormDefault

Ottiene o imposta il form per gli elementi dichiarati nello spazio dei nomi di destinazione dello schema.

System_CAPS_pubpropertyElements

Ottiene il valore impostato dopo la compilazione dello schema di tutti gli elementi presenti nello schema.

System_CAPS_pubpropertyFinalDefault

Ottiene o imposta il finalDefault attributo che imposta il valore predefinito di final attributo su elementi e tipi complessi nello spazio dei nomi di destinazione dello schema.

System_CAPS_pubpropertyGroups

Ottiene il valore impostato dopo la compilazione dello schema di tutti i gruppi presenti nello schema.

System_CAPS_pubpropertyId

Ottiene o imposta l'ID della stringa.

System_CAPS_pubpropertyIncludes

Ottiene la raccolta degli schemi inclusi e importati.

System_CAPS_pubpropertyIsCompiled

Indica se lo schema è stato compilato.

System_CAPS_pubpropertyItems

Ottiene la raccolta di elementi dello schema nello schema e viene utilizzato per aggiungere nuovi tipi di elementi di schema livello di elemento.

System_CAPS_pubpropertyLineNumber

Ottiene o imposta il numero di riga nel file a cui il schema elemento fa riferimento.(Ereditato da XmlSchemaObject.)

System_CAPS_pubpropertyLinePosition

Ottiene o imposta la posizione della riga nel file in cui il schema elemento fa riferimento.(Ereditato da XmlSchemaObject.)

System_CAPS_pubpropertyNamespaces

Ottiene o imposta il XmlSerializerNamespaces da utilizzare con questo oggetto schema.(Ereditato da XmlSchemaObject.)

System_CAPS_pubpropertyNotations

Ottiene il valore impostato dopo la compilazione dello schema per tutte le notazioni presenti nello schema.

System_CAPS_pubpropertyParent

Ottiene o imposta l'elemento padre di questo XmlSchemaObject.(Ereditato da XmlSchemaObject.)

System_CAPS_pubpropertySchemaTypes

Ottiene il valore impostato dopo la compilazione dello schema di tutti i tipi di schema presenti nello schema.

System_CAPS_pubpropertySourceUri

Ottiene o imposta il percorso di origine per il file caricato lo schema.(Ereditato da XmlSchemaObject.)

System_CAPS_pubpropertyTargetNamespace

Ottiene o imposta l'URI (Uniform Resource Identifier) dello spazio dei nomi di destinazione dello schema.

System_CAPS_pubpropertyUnhandledAttributes

Ottiene e imposta gli attributi qualificati che non appartengono allo spazio di nomi di destinazione dello schema.

System_CAPS_pubpropertyVersion

Ottiene o imposta la versione dello schema.

NomeDescrizione
System_CAPS_pubmethodCompile(ValidationEventHandler)

Obsoleto. Compila il modello SOM (Schema Object Model) XML in informazioni sullo schema per la convalida. Usato per controllare la struttura sintattica e semantica di SOM compilato a livello di codice. Il controllo di convalida della semantica viene eseguito durante la compilazione.

System_CAPS_pubmethodCompile(ValidationEventHandler, XmlResolver)

Obsoleto. Compila il modello SOM (Schema Object Model) XML in informazioni sullo schema per la convalida. Usato per controllare la struttura sintattica e semantica di SOM compilato a livello di codice. Il controllo di convalida della semantica viene eseguito durante la compilazione.

System_CAPS_pubmethodEquals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object.)

System_CAPS_protmethodFinalize()

Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulizia prima che l'oggetto stesso venga reclamato dalla procedura di Garbage Collection. (Ereditato da Object.)

System_CAPS_pubmethodGetHashCode()

Funge da funzione hash predefinita.(Ereditato da Object.)

System_CAPS_pubmethodGetType()

Ottiene l'oggetto Type dell'istanza corrente.(Ereditato da Object.)

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.(Ereditato da Object.)

System_CAPS_pubmethodSystem_CAPS_staticRead(Stream, ValidationEventHandler)

Legge un XML Schema dal flusso fornito.

System_CAPS_pubmethodSystem_CAPS_staticRead(TextReader, ValidationEventHandler)

Legge un XML Schema dall'oggetto fornito TextReader.

System_CAPS_pubmethodSystem_CAPS_staticRead(XmlReader, ValidationEventHandler)

Legge un XML Schema dall'oggetto fornito XmlReader.

System_CAPS_pubmethodToString()

Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object.)

System_CAPS_pubmethodWrite(Stream)

Scrive l'XML Schema nel flusso di dati specificato.

System_CAPS_pubmethodWrite(Stream, XmlNamespaceManager)

Scrive lo Schema XML fornito Stream utilizzando il XmlNamespaceManager specificato.

System_CAPS_pubmethodWrite(TextWriter)

Scrive lo Schema XML fornito TextWriter.

System_CAPS_pubmethodWrite(TextWriter, XmlNamespaceManager)

Scrive lo Schema XML fornito TextWriter.

System_CAPS_pubmethodWrite(XmlWriter)

Scrive lo Schema XML fornito XmlWriter.

System_CAPS_pubmethodWrite(XmlWriter, XmlNamespaceManager)

Scrive lo Schema XML fornito XmlWriter.

NomeDescrizione
System_CAPS_pubfieldSystem_CAPS_staticInstanceNamespace

Spazio dei nomi dell'istanza di XML Schema. Questo campo è costante.

System_CAPS_pubfieldSystem_CAPS_staticNamespace

Spazio dei nomi di XML Schema. Questo campo è costante.

System_CAPS_security Sicurezza Nota
  • Non utilizzare gli schemi da origini sconosciute o non attendibile o le posizioni. In questo modo può pregiudicare la sicurezza del codice.

  • Schemi XML (compresi quelli inline) sono intrinsecamente vulnerabili ad attacchi denial of service; non accettare tali condizioni in scenari non attendibili.

  • Le eccezioni generate in seguito all'utilizzo di XmlSchema classe, ad esempio la XmlSchemaException classe, possono contenere informazioni riservate che non devono essere esposti in scenari non attendibili. Ad esempio, la SourceUri proprietà di un XmlSchemaException restituisce il percorso dell'URI al file di schema che ha causato l'eccezione. Il SourceUri proprietà non deve essere esposta in scenari non attendibili. Le eccezioni devono essere gestite correttamente in modo da queste informazioni riservate non viene esposto in scenari non attendibili.

Nell'esempio seguente crea una definizione dello schema.

using System;
using System.Xml;
using System.Xml.Schema;

class XMLSchemaExamples
{
    public static void Main()
    {

        XmlSchema schema = new XmlSchema();

        // <xs:element name="cat" type="xs:string"/>
        XmlSchemaElement elementCat = new XmlSchemaElement();
        schema.Items.Add(elementCat);
        elementCat.Name = "cat";
        elementCat.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");

        // <xs:element name="dog" type="xs:string"/>
        XmlSchemaElement elementDog = new XmlSchemaElement();
        schema.Items.Add(elementDog);
        elementDog.Name = "dog";
        elementDog.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");

        // <xs:element name="redDog" substitutionGroup="dog" />
        XmlSchemaElement elementRedDog = new XmlSchemaElement();
        schema.Items.Add(elementRedDog);
        elementRedDog.Name = "redDog";
        elementRedDog.SubstitutionGroup = new XmlQualifiedName("dog");

        // <xs:element name="brownDog" substitutionGroup ="dog" />
        XmlSchemaElement elementBrownDog = new XmlSchemaElement();
        schema.Items.Add(elementBrownDog);
        elementBrownDog.Name = "brownDog";
        elementBrownDog.SubstitutionGroup = new XmlQualifiedName("dog");


        // <xs:element name="pets">
        XmlSchemaElement elementPets = new XmlSchemaElement();
        schema.Items.Add(elementPets);
        elementPets.Name = "pets";

        // <xs:complexType>
        XmlSchemaComplexType complexType = new XmlSchemaComplexType();
        elementPets.SchemaType = complexType;

        // <xs:choice minOccurs="0" maxOccurs="unbounded">
        XmlSchemaChoice choice = new XmlSchemaChoice();
        complexType.Particle = choice;
        choice.MinOccurs = 0;
        choice.MaxOccursString = "unbounded";

        // <xs:element ref="cat"/>
        XmlSchemaElement catRef = new XmlSchemaElement();
        choice.Items.Add(catRef);
        catRef.RefName = new XmlQualifiedName("cat");

        // <xs:element ref="dog"/>
        XmlSchemaElement dogRef = new XmlSchemaElement();
        choice.Items.Add(dogRef);
        dogRef.RefName = new XmlQualifiedName("dog");

        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);
    }
}

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:element name="cat" type="xs:string"/>
    <xs:element name="dog" type="xs:string"/>
    <xs:element name="redDog" type="xs:string" substitutionGroup="dog"/>
    <xs:element name="brownDog" type="xs:string" substitutionGroup ="dog" />

    <xs:element name="pets">
      <xs:complexType>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element ref="cat"/>
          <xs:element ref="dog"/>
        </xs:choice>
      </xs:complexType>
    </xs:element>
</xs:schema>

Universal Windows Platform
Disponibile da 8
.NET Framework
Disponibile da 1.1
Libreria di classi portabile
Supportato in: piattaforme .NET portabili
Silverlight
Disponibile da 2.0
Windows Phone Silverlight
Disponibile da 7.0
Windows Phone
Disponibile da 8.1

I membri statici pubblici ( Condiviso in Visual Basic) di questo tipo è thread safe. Non tutti i membri di istanza sono garantiti come thread safe.

Torna all'inizio
Mostra: