Condividi tramite


XmlSchemaInclude Classe

Definizione

Rappresenta l'elemento include dallo schema XML come specificato da World Wide Web Consortium (W3C). Questa classe viene usata per includere dichiarazioni e definizioni da uno schema esterno. Le dichiarazioni e le definizioni incluse sono quindi disponibili per l'elaborazione nello schema che le contiene.

public ref class XmlSchemaInclude : System::Xml::Schema::XmlSchemaExternal
public class XmlSchemaInclude : System.Xml.Schema.XmlSchemaExternal
type XmlSchemaInclude = class
    inherit XmlSchemaExternal
Public Class XmlSchemaInclude
Inherits XmlSchemaExternal
Ereditarietà

Esempio

Nell'esempio seguente viene creato l'elemento include .

#using <System.Xml.dll>

using namespace System;
using namespace System::Xml;
using namespace System::Xml::Schema;

ref class ImportIncludeSample
{
private:
    static void ValidationCallBack(Object^ sender, ValidationEventArgs^ args)
    {

        if (args->Severity == XmlSeverityType::Warning)
            Console::Write("WARNING: ");
        else if (args->Severity == XmlSeverityType::Error)
            Console::Write("ERROR: ");

        Console::WriteLine(args->Message);
    }

public:
    static void Main()
    {
        XmlSchema^ schema = gcnew XmlSchema();
        schema->ElementFormDefault = XmlSchemaForm::Qualified;
        schema->TargetNamespace = "http://www.w3.org/2001/05/XMLInfoset";

        // <xs:import namespace="http://www.example.com/IPO" />                            
        XmlSchemaImport^ import = gcnew XmlSchemaImport();
        import->Namespace = "http://www.example.com/IPO";
        schema->Includes->Add(import);

        // <xs:include schemaLocation="example.xsd" />               
        XmlSchemaInclude^ include = gcnew XmlSchemaInclude();
        include->SchemaLocation = "example.xsd";
        schema->Includes->Add(include);

        XmlSchemaSet^ schemaSet = gcnew XmlSchemaSet();
        schemaSet->ValidationEventHandler += gcnew ValidationEventHandler(ValidationCallBack);
        schemaSet->Add(schema);
        schemaSet->Compile();

        XmlSchema^ compiledSchema = nullptr;

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

};

int main()
{
    ImportIncludeSample::Main();
    return 0;
}
using System;
using System.Collections;
using System.IO;
using System.Xml;
using System.Xml.Xsl;
using System.Xml.Schema;

public class ImportIncludeSample
{

    private static void ValidationCallBack(object sender, ValidationEventArgs args)
    {

        if (args.Severity == XmlSeverityType.Warning)
            Console.Write("WARNING: ");
        else if (args.Severity == XmlSeverityType.Error)
            Console.Write("ERROR: ");

        Console.WriteLine(args.Message);
    }

    public static void Main()
    {

        XmlSchema schema = new XmlSchema();
        schema.ElementFormDefault = XmlSchemaForm.Qualified;
        schema.TargetNamespace = "http://www.w3.org/2001/05/XMLInfoset";

        // <xs:import namespace="http://www.example.com/IPO" />
        XmlSchemaImport import = new XmlSchemaImport();
        import.Namespace = "http://www.example.com/IPO";
        schema.Includes.Add(import);

        // <xs:include schemaLocation="example.xsd" />
        XmlSchemaInclude include = new XmlSchemaInclude();
        include.SchemaLocation = "example.xsd";
        schema.Includes.Add(include);

        XmlSchemaSet schemaSet = new XmlSchemaSet();
        schemaSet.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack);
        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);
    }/* Main() */
} //ImportIncludeSample
Imports System.Collections
Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl
Imports System.Xml.Schema


Public Class ImportIncludeSample

    Private Shared Sub ValidationCallBack(ByVal sender As Object, ByVal args As ValidationEventArgs)

        If args.Severity = XmlSeverityType.Warning Then
            Console.Write("WARNING: ")
        Else
            If args.Severity = XmlSeverityType.Error Then
                Console.Write("ERROR: ")
            End If
        End If
        Console.WriteLine(args.Message)
    End Sub


    Public Shared Sub Main()

        Dim schema As New XmlSchema()
        schema.ElementFormDefault = XmlSchemaForm.Qualified
        schema.TargetNamespace = "http://www.w3.org/2001/05/XMLInfoset"

        ' <xs:import namespace="http://www.example.com/IPO" />             
        Dim import As New XmlSchemaImport()
        import.Namespace = "http://www.example.com/IPO"
        schema.Includes.Add(import)

        ' <xs:include schemaLocation="example.xsd" />     
        Dim include As New XmlSchemaInclude()
        include.SchemaLocation = "example.xsd"
        schema.Includes.Add(include)

        Dim schemaSet As New XmlSchemaSet()
        AddHandler schemaSet.ValidationEventHandler, AddressOf ValidationCallBack

        schemaSet.Add(schema)
        schemaSet.Compile()

        Dim compiledSchema As XmlSchema = Nothing

        For Each schema1 As XmlSchema In schemaSet.Schemas()
            compiledSchema = schema1
        Next

        Dim nsmgr As XmlNamespaceManager = New XmlNamespaceManager(New NameTable())
        nsmgr.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema")
        compiledSchema.Write(Console.Out, nsmgr)

    End Sub
End Class

'ImportIncludeSample

Per questo esempio di codice viene generato il codice XML seguente.

<?xml version="1.0" encoding="IBM437"?>
<schema elementFormDefault="qualified" targetNamespace="http://www.w3.org/2001/05/XMLInfoset" xmlns="http://www.w3.org/2001/XMLSchema">
  <import namespace="http://www.example.com/IPO" />
  <include schemaLocation="example.xsd" />
</schema>

Commenti

Il documento dello schema incluso deve soddisfare una delle condizioni seguenti:

Lo schema incluso deve avere lo stesso spazio dei nomi di destinazione del documento dello schema contenitore.

OR

Impossibile specificare uno targetNamespaceschema incluso. L'attributo targetNamespace deve essere Null.

XmlSchemaInclude aggiunge tutti i componenti dello schema degli schemi inclusi con lo stesso spazio dei nomi di destinazione (o nessuno spazio dei nomi di destinazione specificato) allo schema contenitore.

Costruttori

XmlSchemaInclude()

Inizializza una nuova istanza della classe XmlSchemaInclude.

Proprietà

Annotation

Ottiene o imposta la proprietà annotation.

Id

Ottiene o imposta l'ID di stringa.

(Ereditato da XmlSchemaExternal)
LineNumber

Ottiene o imposta il numero di riga nel file a cui l'elemento schema fa riferimento.

(Ereditato da XmlSchemaObject)
LinePosition

Ottiene o imposta la posizione di riga nel file a cui l'elemento schema fa riferimento.

(Ereditato da XmlSchemaObject)
Namespaces

Ottiene o imposta l'oggetto XmlSerializerNamespaces da utilizzare con questo oggetto schema.

(Ereditato da XmlSchemaObject)
Parent

Ottiene o imposta la classe padre della classe XmlSchemaObject.

(Ereditato da XmlSchemaObject)
Schema

Ottiene o imposta XmlSchema per lo schema a cui si fa riferimento.

(Ereditato da XmlSchemaExternal)
SchemaLocation

Ottiene o imposta il percorso URI (Uniform Resource Identifier) per lo schema che indica al processore di schema dove si trova fisicamente lo schema.

(Ereditato da XmlSchemaExternal)
SourceUri

Ottiene o imposta la posizione 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.

(Ereditato da XmlSchemaExternal)

Metodi

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 l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a