XmlSchemaInclude Class
Represents the include element from XML Schema as specified by the . This class is used to include declarations and definitions from an external schema. The included declarations and definitions are then available for processing in the containing schema.
System.Xml.Schema::XmlSchemaObject
System.Xml.Schema::XmlSchemaExternal
System.Xml.Schema::XmlSchemaInclude
Assembly: System.Xml (in System.Xml.dll)
The XmlSchemaInclude type exposes the following members.
| Name | Description | |
|---|---|---|
![]() ![]() | Annotation | Gets or sets the annotation property. |
![]() ![]() | Id | Gets or sets the string id. (Inherited from XmlSchemaExternal.) |
![]() ![]() | LineNumber | Gets or sets the line number in the file to which the schema element refers. (Inherited from XmlSchemaObject.) |
![]() ![]() | LinePosition | Gets or sets the line position in the file to which the schema element refers. (Inherited from XmlSchemaObject.) |
![]() ![]() | Namespaces | Gets or sets the XmlSerializerNamespaces to use with this schema object. (Inherited from XmlSchemaObject.) |
![]() ![]() | Parent | Gets or sets the parent of this XmlSchemaObject. (Inherited from XmlSchemaObject.) |
![]() ![]() | Schema | Gets or sets the XmlSchema for the referenced schema. (Inherited from XmlSchemaExternal.) |
![]() ![]() | SchemaLocation | Gets or sets the Uniform Resource Identifier (URI) location for the schema, which tells the schema processor where the schema physically resides. (Inherited from XmlSchemaExternal.) |
![]() ![]() | SourceUri | Gets or sets the source location for the file that loaded the schema. (Inherited from XmlSchemaObject.) |
![]() ![]() | UnhandledAttributes | Gets and sets the qualified attributes, which do not belong to the schema target namespace. (Inherited from XmlSchemaExternal.) |
| Name | Description | |
|---|---|---|
![]() ![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() ![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() ![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() ![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() ![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() ![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
The included schema document must meet one of the following conditions:
The included schema must have the same target namespace as the containing schema document.
OR
The included schema cannot have a specified targetNamespace; the targetNamespace attribute must be null.
XmlSchemaInclude adds all the schema components from included schemas that have the same target namespace (or no specified target namespace) to the containing schema.
The following example creates the include element.
#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; }
The following XML is generated for this code example.
<?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>
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
