Edit

Share via


XmlSchemaAppInfo Class

Definition

Represents the World Wide Web Consortium (W3C) appinfo element.

public ref class XmlSchemaAppInfo : System::Xml::Schema::XmlSchemaObject
public class XmlSchemaAppInfo : System.Xml.Schema.XmlSchemaObject
type XmlSchemaAppInfo = class
    inherit XmlSchemaObject
Public Class XmlSchemaAppInfo
Inherits XmlSchemaObject
Inheritance
XmlSchemaAppInfo

Examples

The following example creates an appinfo element.

#using <mscorlib.dll>
#using <System.Xml.dll>

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

class XmlSchemaExamples
{
public:

    static void Main()
    {
        XmlSchema^ schema = gcnew XmlSchema();

        // <xs:element name="State">
        XmlSchemaElement^ element = gcnew XmlSchemaElement();
        schema->Items->Add(element);
        element->Name = "State";

        // <xs:annotation>
        XmlSchemaAnnotation^ annNorthwestStates = gcnew XmlSchemaAnnotation();
        element->Annotation = annNorthwestStates;

        // <xs:documentation>State Name</xs:documentation>
        XmlSchemaDocumentation^ docNorthwestStates = gcnew XmlSchemaDocumentation();
        annNorthwestStates->Items->Add(docNorthwestStates);
        docNorthwestStates->Markup = TextToNodeArray("State Name");

        // <xs:appInfo>Application Information</xs:appInfo>
        XmlSchemaAppInfo^ appInfo = gcnew XmlSchemaAppInfo();
        annNorthwestStates->Items->Add(appInfo);
        appInfo->Markup = TextToNodeArray("Application Information");

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

        XmlSchema^ compiledSchema;

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

    static void ValidationCallbackOne(Object^ sender, ValidationEventArgs^ args)
    {

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

    static array<XmlNode^>^ TextToNodeArray(String^ text)
    {
        XmlDocument^ doc = gcnew XmlDocument();
        array<XmlNode^>^ nodes = {doc->CreateTextNode(text)};
        return nodes;
    }
};

int main()
{
    XmlSchemaExamples::Main();
    return 0;
};
using System;
using System.Xml;
using System.Xml.Schema;

class XMLSchemaExamples
{
    public static void Main()
    {

        XmlSchema schema = new XmlSchema();

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

        // <xs:annotation>
        XmlSchemaAnnotation annNorthwestStates = new XmlSchemaAnnotation();
        element.Annotation = annNorthwestStates;

        // <xs:documentation>State Name</xs:documentation>
        XmlSchemaDocumentation docNorthwestStates = new XmlSchemaDocumentation();
        annNorthwestStates.Items.Add(docNorthwestStates);
        docNorthwestStates.Markup = TextToNodeArray("State Name");

        // <xs:appInfo>Application Information</xs:appInfo>
        XmlSchemaAppInfo appInfo = new XmlSchemaAppInfo();
        annNorthwestStates.Items.Add(appInfo);
        appInfo.Markup = TextToNodeArray("Application Information");

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

    public static XmlNode[] TextToNodeArray(string text)
    {
        XmlDocument doc = new XmlDocument();
        return new XmlNode[1] { doc.CreateTextNode(text) };
    }
}
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:element name="State">
        Dim element As New XmlSchemaElement()
        schema.Items.Add(element)
        element.Name = "State"

        ' <xs:annotation>
        Dim annNorthwestStates As New XmlSchemaAnnotation()
        element.Annotation = annNorthwestStates

        ' <xs:documentation>State Name</xs:documentation>
        Dim docNorthwestStates As New XmlSchemaDocumentation()
        annNorthwestStates.Items.Add(docNorthwestStates)
        docNorthwestStates.Markup = TextToNodeArray("State Name")

        ' <xs:appInfo>Application Information</xs:appInfo>
        Dim appInfo As New XmlSchemaAppInfo()
        annNorthwestStates.Items.Add(appInfo)
        appInfo.Markup = TextToNodeArray("Application Information")

        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


    Public Shared Function TextToNodeArray(ByVal text As String) As XmlNode()
        Dim doc As New XmlDocument()
        Return New XmlNode(0) {doc.CreateTextNode(text)}
    End Function 'TextToNodeArray
End Class

The following XML file is generated for the preceding code example.


<?xml version="1.0" encoding="IBM437"?>
<xs:schema  xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="State">
        <xs:annotation>
            <xs:documentation>State Name</xs:documentation>            
            <xs:appinfo>Application Information</xs:appinfo>
        </xs:annotation>
    </xs:element>
</xs:schema>

Remarks

The appinfo element defines application-specific information within an annotation

Constructors

XmlSchemaAppInfo()

Initializes a new instance of the XmlSchemaAppInfo class.

Properties

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)
Markup

Gets or sets an array of XmlNode objects that represents the appinfo child nodes.

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)
Source

Gets or sets the source of the application information.

SourceUri

Gets or sets the source location for the file that loaded the schema.

(Inherited from XmlSchemaObject)

Methods

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Serves as the default hash function.

(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)

Applies to