XmlSchemaInclude 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 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 targetNamespace
schema 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à |
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 |
LinePosition |
Ottiene o imposta la posizione di riga nel file a cui l'elemento |
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 |
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) |